From 23cc77d38c3b418ca57e8113488d7e8693ac405a Mon Sep 17 00:00:00 2001 From: John Cardinal Date: Thu, 1 Apr 2021 14:18:34 +0000 Subject: [PATCH] --- .vscode/launch.json | 2 +- .../Controllers/AttachmentController.cs | 2 +- .../AyaNova/Controllers/ContractController.cs | 2 +- .../AyaNova/Controllers/CustomerController.cs | 2 +- .../Controllers/CustomerNoteController.cs | 2 +- .../CustomerServiceRequestController.cs | 2 +- .../Controllers/DashboardViewController.cs | 2 +- .../DataListSavedFilterController.cs | 2 +- .../Controllers/FormCustomController.cs | 2 +- .../Controllers/HeadOfficeController.cs | 2 +- .../AyaNova/Controllers/LoanUnitController.cs | 2 +- server/AyaNova/Controllers/MemoController.cs | 2 +- .../NotifySubscriptionController.cs | 2 +- server/AyaNova/Controllers/PMController.cs | 2 +- .../Controllers/PMTemplateController.cs | 2 +- .../Controllers/PartAssemblyController.cs | 2 +- server/AyaNova/Controllers/PartController.cs | 8 +- .../Controllers/PartWarehouseController.cs | 2 +- .../AyaNova/Controllers/ProjectController.cs | 2 +- .../Controllers/PurchaseOrderController.cs | 2 +- server/AyaNova/Controllers/QuoteController.cs | 2 +- .../Controllers/QuoteTemplateController.cs | 2 +- .../AyaNova/Controllers/ReminderController.cs | 2 +- .../AyaNova/Controllers/ReportController.cs | 2 +- .../AyaNova/Controllers/ReviewController.cs | 2 +- .../Controllers/ServiceRateController.cs | 2 +- .../AyaNova/Controllers/TaxCodeController.cs | 2 +- .../Controllers/TranslationController.cs | 2 +- .../Controllers/TravelRateController.cs | 2 +- server/AyaNova/Controllers/UnitController.cs | 2 +- .../Controllers/UnitModelController.cs | 2 +- server/AyaNova/Controllers/UserController.cs | 2 +- .../Controllers/UserOptionsController.cs | 2 +- .../AyaNova/Controllers/VendorController.cs | 2 +- .../AyaNova/Controllers/WidgetController.cs | 2 +- .../Controllers/WorkOrderController.cs | 165 ++++++++++++++---- .../Controllers/WorkOrderStatusController.cs | 2 +- .../WorkOrderTemplateController.cs | 2 +- server/AyaNova/biz/WorkOrderBiz.cs | 4 +- 39 files changed, 176 insertions(+), 73 deletions(-) diff --git a/.vscode/launch.json b/.vscode/launch.json index 8fd97968..0e2049e9 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -53,7 +53,7 @@ "AYANOVA_FOLDER_USER_FILES": "c:\\temp\\RavenTestData\\userfiles", "AYANOVA_FOLDER_BACKUP_FILES": "c:\\temp\\RavenTestData\\backupfiles", "AYANOVA_FOLDER_TEMPORARY_SERVER_FILES": "c:\\temp\\RavenTestData\\tempfiles", - "AYANOVA_SERVER_TEST_MODE": "true", + "AYANOVA_SERVER_TEST_MODE": "false", "AYANOVA_SERVER_TEST_MODE_SEEDLEVEL": "small", "AYANOVA_SERVER_TEST_MODE_TZ_OFFSET": "-7", "AYANOVA_BACKUP_PG_DUMP_PATH": "C:\\data\\code\\postgres_13\\bin\\" diff --git a/server/AyaNova/Controllers/AttachmentController.cs b/server/AyaNova/Controllers/AttachmentController.cs index c06453f1..67816e15 100644 --- a/server/AyaNova/Controllers/AttachmentController.cs +++ b/server/AyaNova/Controllers/AttachmentController.cs @@ -62,7 +62,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) FileAttachment + /// Update FileAttachment /// (FileName and notes only) /// /// diff --git a/server/AyaNova/Controllers/ContractController.cs b/server/AyaNova/Controllers/ContractController.cs index 1a5ae74f..5b203200 100644 --- a/server/AyaNova/Controllers/ContractController.cs +++ b/server/AyaNova/Controllers/ContractController.cs @@ -103,7 +103,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) Contract + /// Update Contract /// /// /// diff --git a/server/AyaNova/Controllers/CustomerController.cs b/server/AyaNova/Controllers/CustomerController.cs index 301c34c0..ea9acfcd 100644 --- a/server/AyaNova/Controllers/CustomerController.cs +++ b/server/AyaNova/Controllers/CustomerController.cs @@ -103,7 +103,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) Customer + /// Update Customer /// /// /// diff --git a/server/AyaNova/Controllers/CustomerNoteController.cs b/server/AyaNova/Controllers/CustomerNoteController.cs index e27ba3f4..f6922a81 100644 --- a/server/AyaNova/Controllers/CustomerNoteController.cs +++ b/server/AyaNova/Controllers/CustomerNoteController.cs @@ -81,7 +81,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) CustomerNote + /// Update CustomerNote /// /// /// diff --git a/server/AyaNova/Controllers/CustomerServiceRequestController.cs b/server/AyaNova/Controllers/CustomerServiceRequestController.cs index 0661b18c..d1f5636e 100644 --- a/server/AyaNova/Controllers/CustomerServiceRequestController.cs +++ b/server/AyaNova/Controllers/CustomerServiceRequestController.cs @@ -104,7 +104,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) CustomerServiceRequest + /// Update CustomerServiceRequest /// /// /// diff --git a/server/AyaNova/Controllers/DashboardViewController.cs b/server/AyaNova/Controllers/DashboardViewController.cs index e871306b..21b4ed2e 100644 --- a/server/AyaNova/Controllers/DashboardViewController.cs +++ b/server/AyaNova/Controllers/DashboardViewController.cs @@ -77,7 +77,7 @@ namespace AyaNova.Api.Controllers /// - /// Put (update) logged in User's Dashboard view + /// Update logged in User's Dashboard view /// /// /// diff --git a/server/AyaNova/Controllers/DataListSavedFilterController.cs b/server/AyaNova/Controllers/DataListSavedFilterController.cs index beb38353..b93d10d8 100644 --- a/server/AyaNova/Controllers/DataListSavedFilterController.cs +++ b/server/AyaNova/Controllers/DataListSavedFilterController.cs @@ -88,7 +88,7 @@ namespace AyaNova.Api.Controllers /// - /// Put (update) DataListSavedFilter + /// Update DataListSavedFilter /// /// /// diff --git a/server/AyaNova/Controllers/FormCustomController.cs b/server/AyaNova/Controllers/FormCustomController.cs index 370652f5..3e3dd1d1 100644 --- a/server/AyaNova/Controllers/FormCustomController.cs +++ b/server/AyaNova/Controllers/FormCustomController.cs @@ -139,7 +139,7 @@ namespace AyaNova.Api.Controllers /// - /// Put (update) FormCustom + /// Update FormCustom /// /// /// diff --git a/server/AyaNova/Controllers/HeadOfficeController.cs b/server/AyaNova/Controllers/HeadOfficeController.cs index 108f98f4..b2874291 100644 --- a/server/AyaNova/Controllers/HeadOfficeController.cs +++ b/server/AyaNova/Controllers/HeadOfficeController.cs @@ -103,7 +103,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) HeadOffice + /// Update HeadOffice /// /// /// diff --git a/server/AyaNova/Controllers/LoanUnitController.cs b/server/AyaNova/Controllers/LoanUnitController.cs index db3f0f45..1d3a22c9 100644 --- a/server/AyaNova/Controllers/LoanUnitController.cs +++ b/server/AyaNova/Controllers/LoanUnitController.cs @@ -103,7 +103,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) LoanUnit + /// Update LoanUnit /// /// /// diff --git a/server/AyaNova/Controllers/MemoController.cs b/server/AyaNova/Controllers/MemoController.cs index 04bf99a5..f9290402 100644 --- a/server/AyaNova/Controllers/MemoController.cs +++ b/server/AyaNova/Controllers/MemoController.cs @@ -172,7 +172,7 @@ namespace AyaNova.Api.Controllers //NO UPDATING MEMOS // /// - // /// Put (update) Memo + // /// Update Memo // /// // /// // /// diff --git a/server/AyaNova/Controllers/NotifySubscriptionController.cs b/server/AyaNova/Controllers/NotifySubscriptionController.cs index 5771fb5b..4f39f2c6 100644 --- a/server/AyaNova/Controllers/NotifySubscriptionController.cs +++ b/server/AyaNova/Controllers/NotifySubscriptionController.cs @@ -102,7 +102,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) NotifySubscription + /// Update NotifySubscription /// /// /// diff --git a/server/AyaNova/Controllers/PMController.cs b/server/AyaNova/Controllers/PMController.cs index 46bb5b57..d3f51a30 100644 --- a/server/AyaNova/Controllers/PMController.cs +++ b/server/AyaNova/Controllers/PMController.cs @@ -73,7 +73,7 @@ namespace AyaNova.Api.Controllers /// - /// Put (update) PM + /// Update PM /// /// /// diff --git a/server/AyaNova/Controllers/PMTemplateController.cs b/server/AyaNova/Controllers/PMTemplateController.cs index c11e651e..b367f168 100644 --- a/server/AyaNova/Controllers/PMTemplateController.cs +++ b/server/AyaNova/Controllers/PMTemplateController.cs @@ -103,7 +103,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) PMTemplate + /// Update PMTemplate /// /// /// diff --git a/server/AyaNova/Controllers/PartAssemblyController.cs b/server/AyaNova/Controllers/PartAssemblyController.cs index 92f7f2fb..cda7c821 100644 --- a/server/AyaNova/Controllers/PartAssemblyController.cs +++ b/server/AyaNova/Controllers/PartAssemblyController.cs @@ -103,7 +103,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) PartAssembly + /// Update PartAssembly /// /// /// diff --git a/server/AyaNova/Controllers/PartController.cs b/server/AyaNova/Controllers/PartController.cs index 51d27d7d..0ed1459e 100644 --- a/server/AyaNova/Controllers/PartController.cs +++ b/server/AyaNova/Controllers/PartController.cs @@ -107,7 +107,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) Part + /// Update Part /// /// /// @@ -175,7 +175,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) PartSerials for part + /// Update PartSerials for part /// /// array of serial numbers to replace existing array of part serials ///PartId @@ -229,7 +229,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) stock levels for part + /// Update stock levels for part /// /// array of part stock levels ///PartId @@ -259,7 +259,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) part cost for part + /// Update part cost for part /// /// new cost of part ///PartId diff --git a/server/AyaNova/Controllers/PartWarehouseController.cs b/server/AyaNova/Controllers/PartWarehouseController.cs index 28acc40f..cba6ed2e 100644 --- a/server/AyaNova/Controllers/PartWarehouseController.cs +++ b/server/AyaNova/Controllers/PartWarehouseController.cs @@ -105,7 +105,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) PartWarehouse + /// Update PartWarehouse /// /// /// diff --git a/server/AyaNova/Controllers/ProjectController.cs b/server/AyaNova/Controllers/ProjectController.cs index ae0c7788..0868b05d 100644 --- a/server/AyaNova/Controllers/ProjectController.cs +++ b/server/AyaNova/Controllers/ProjectController.cs @@ -104,7 +104,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) Project + /// Update Project /// /// /// diff --git a/server/AyaNova/Controllers/PurchaseOrderController.cs b/server/AyaNova/Controllers/PurchaseOrderController.cs index 0d555764..71f946f0 100644 --- a/server/AyaNova/Controllers/PurchaseOrderController.cs +++ b/server/AyaNova/Controllers/PurchaseOrderController.cs @@ -105,7 +105,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) PurchaseOrder + /// Update PurchaseOrder /// /// /// diff --git a/server/AyaNova/Controllers/QuoteController.cs b/server/AyaNova/Controllers/QuoteController.cs index 78483674..2bc2c4a8 100644 --- a/server/AyaNova/Controllers/QuoteController.cs +++ b/server/AyaNova/Controllers/QuoteController.cs @@ -73,7 +73,7 @@ namespace AyaNova.Api.Controllers /// - /// Put (update) Quote + /// Update Quote /// /// /// diff --git a/server/AyaNova/Controllers/QuoteTemplateController.cs b/server/AyaNova/Controllers/QuoteTemplateController.cs index 11963d1c..455becd4 100644 --- a/server/AyaNova/Controllers/QuoteTemplateController.cs +++ b/server/AyaNova/Controllers/QuoteTemplateController.cs @@ -74,7 +74,7 @@ namespace AyaNova.Api.Controllers /// - /// Put (update) QuoteTemplate + /// Update QuoteTemplate /// /// /// diff --git a/server/AyaNova/Controllers/ReminderController.cs b/server/AyaNova/Controllers/ReminderController.cs index 11ff880b..58c5174c 100644 --- a/server/AyaNova/Controllers/ReminderController.cs +++ b/server/AyaNova/Controllers/ReminderController.cs @@ -104,7 +104,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) Reminder + /// Update Reminder /// /// /// diff --git a/server/AyaNova/Controllers/ReportController.cs b/server/AyaNova/Controllers/ReportController.cs index bbbd7dab..b083e94a 100644 --- a/server/AyaNova/Controllers/ReportController.cs +++ b/server/AyaNova/Controllers/ReportController.cs @@ -110,7 +110,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) Report + /// Update Report /// /// /// diff --git a/server/AyaNova/Controllers/ReviewController.cs b/server/AyaNova/Controllers/ReviewController.cs index 8e6093c5..5ecee9cc 100644 --- a/server/AyaNova/Controllers/ReviewController.cs +++ b/server/AyaNova/Controllers/ReviewController.cs @@ -104,7 +104,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) Review + /// Update Review /// /// /// diff --git a/server/AyaNova/Controllers/ServiceRateController.cs b/server/AyaNova/Controllers/ServiceRateController.cs index c8b33af7..6efdc594 100644 --- a/server/AyaNova/Controllers/ServiceRateController.cs +++ b/server/AyaNova/Controllers/ServiceRateController.cs @@ -104,7 +104,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) ServiceRate + /// Update ServiceRate /// /// /// diff --git a/server/AyaNova/Controllers/TaxCodeController.cs b/server/AyaNova/Controllers/TaxCodeController.cs index 9921d87c..acf18800 100644 --- a/server/AyaNova/Controllers/TaxCodeController.cs +++ b/server/AyaNova/Controllers/TaxCodeController.cs @@ -104,7 +104,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) TaxCode + /// Update TaxCode /// /// /// diff --git a/server/AyaNova/Controllers/TranslationController.cs b/server/AyaNova/Controllers/TranslationController.cs index de61fdff..90262a13 100644 --- a/server/AyaNova/Controllers/TranslationController.cs +++ b/server/AyaNova/Controllers/TranslationController.cs @@ -87,7 +87,7 @@ namespace AyaNova.Api.Controllers /// - /// Put (update) Translation + /// Update Translation /// /// /// diff --git a/server/AyaNova/Controllers/TravelRateController.cs b/server/AyaNova/Controllers/TravelRateController.cs index 10ebdbe0..a9a2c0d3 100644 --- a/server/AyaNova/Controllers/TravelRateController.cs +++ b/server/AyaNova/Controllers/TravelRateController.cs @@ -104,7 +104,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) TravelRate + /// Update TravelRate /// /// /// diff --git a/server/AyaNova/Controllers/UnitController.cs b/server/AyaNova/Controllers/UnitController.cs index 49360d0a..e297ce11 100644 --- a/server/AyaNova/Controllers/UnitController.cs +++ b/server/AyaNova/Controllers/UnitController.cs @@ -103,7 +103,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) Unit + /// Update Unit /// /// /// diff --git a/server/AyaNova/Controllers/UnitModelController.cs b/server/AyaNova/Controllers/UnitModelController.cs index db90e494..b2fdbc22 100644 --- a/server/AyaNova/Controllers/UnitModelController.cs +++ b/server/AyaNova/Controllers/UnitModelController.cs @@ -103,7 +103,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) UnitModel + /// Update UnitModel /// /// /// diff --git a/server/AyaNova/Controllers/UserController.cs b/server/AyaNova/Controllers/UserController.cs index 87b5f8b1..9f91b6cc 100644 --- a/server/AyaNova/Controllers/UserController.cs +++ b/server/AyaNova/Controllers/UserController.cs @@ -87,7 +87,7 @@ namespace AyaNova.Api.Controllers /// - /// Put (update) User + /// Update User /// (Login and / or Password are not changed if set to null / omitted) /// /// diff --git a/server/AyaNova/Controllers/UserOptionsController.cs b/server/AyaNova/Controllers/UserOptionsController.cs index ac24ab38..af4f5582 100644 --- a/server/AyaNova/Controllers/UserOptionsController.cs +++ b/server/AyaNova/Controllers/UserOptionsController.cs @@ -94,7 +94,7 @@ namespace AyaNova.Api.Controllers /// - /// Put (update) UserOptions + /// Update UserOptions /// /// User id /// diff --git a/server/AyaNova/Controllers/VendorController.cs b/server/AyaNova/Controllers/VendorController.cs index e8810f52..c904e648 100644 --- a/server/AyaNova/Controllers/VendorController.cs +++ b/server/AyaNova/Controllers/VendorController.cs @@ -103,7 +103,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) Vendor + /// Update Vendor /// /// /// diff --git a/server/AyaNova/Controllers/WidgetController.cs b/server/AyaNova/Controllers/WidgetController.cs index b9cd8716..40a95170 100644 --- a/server/AyaNova/Controllers/WidgetController.cs +++ b/server/AyaNova/Controllers/WidgetController.cs @@ -111,7 +111,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) Widget + /// Update Widget /// /// /// diff --git a/server/AyaNova/Controllers/WorkOrderController.cs b/server/AyaNova/Controllers/WorkOrderController.cs index ccd3468e..2754ab85 100644 --- a/server/AyaNova/Controllers/WorkOrderController.cs +++ b/server/AyaNova/Controllers/WorkOrderController.cs @@ -124,8 +124,8 @@ namespace AyaNova.Api.Controllers /// - /// Put (update) WorkOrder - /// (descendant objects must be updated via their individual routes seperately) + /// Update WorkOrder + /// /// /// WorkOrder - top level only, no descendants /// New concurrency token @@ -176,8 +176,6 @@ namespace AyaNova.Api.Controllers - - //================== /* ███████╗████████╗ █████╗ ████████╗███████╗███████╗ @@ -239,8 +237,8 @@ namespace AyaNova.Api.Controllers /// - /// Put (update) WorkOrderState - /// (descendant objects must be updated via their individual routes seperately) + /// Update WorkOrderState + /// /// /// WorkOrderState - top level only, no descendants /// New concurrency token @@ -289,11 +287,6 @@ namespace AyaNova.Api.Controllers #endregion workorderstate - //=============== - - - - /* @@ -354,8 +347,8 @@ namespace AyaNova.Api.Controllers /// - /// Put (update) WorkOrderItem - /// (descendant objects must be updated via their individual routes seperately) + /// Update WorkOrderItem + /// /// /// WorkOrderItem - top level only, no descendants /// New concurrency token @@ -461,8 +454,8 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) WorkOrderItemExpense - /// (descendant objects must be updated via their individual routes seperately) + /// Update WorkOrderItemExpense + /// /// /// WorkOrderItemExpense - top level only, no descendants /// New concurrency token @@ -569,8 +562,8 @@ namespace AyaNova.Api.Controllers /// - /// Put (update) WorkOrderItemLabor - /// (descendant objects must be updated via their individual routes seperately) + /// Update WorkOrderItemLabor + /// /// /// WorkOrderItemLabor - top level only, no descendants /// New concurrency token @@ -677,8 +670,8 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) WorkOrderItemLoan - /// (descendant objects must be updated via their individual routes seperately) + /// Update WorkOrderItemLoan + /// /// /// WorkOrderItemLoan - top level only, no descendants /// New concurrency token @@ -726,6 +719,116 @@ namespace AyaNova.Api.Controllers #endregion WorkOrderItemLoan + /* + + ██████╗ ██╗ ██╗████████╗███████╗██╗██████╗ ███████╗ ███████╗███████╗██████╗ ██╗ ██╗██╗ ██████╗███████╗ + ██╔═══██╗██║ ██║╚══██╔══╝██╔════╝██║██╔══██╗██╔════╝ ██╔════╝██╔════╝██╔══██╗██║ ██║██║██╔════╝██╔════╝ + ██║ ██║██║ ██║ ██║ ███████╗██║██║ ██║█████╗ ███████╗█████╗ ██████╔╝██║ ██║██║██║ █████╗ + ██║ ██║██║ ██║ ██║ ╚════██║██║██║ ██║██╔══╝ ╚════██║██╔══╝ ██╔══██╗╚██╗ ██╔╝██║██║ ██╔══╝ + ╚██████╔╝╚██████╔╝ ██║ ███████║██║██████╔╝███████╗ ███████║███████╗██║ ██║ ╚████╔╝ ██║╚██████╗███████╗ + ╚═════╝ ╚═════╝ ╚═╝ ╚══════╝╚═╝╚═════╝ ╚══════╝ ╚══════╝╚══════╝╚═╝ ╚═╝ ╚═══╝ ╚═╝ ╚═════╝╚══════╝ + + */ + + + #region WorkOrderItemOutsideService + + /// + /// Create WorkOrderItemOutsideService + /// + /// WorkOrderItemOutsideService level only no descendants + /// + /// WorkOrderItemOutsideService object (no descendants) + [HttpPost("items/outsideservices")] + public async Task PostWorkOrderItemOutsideService([FromBody] WorkOrderItemOutsideService newObject, ApiVersion apiVersion) + { + if (!serverState.IsOpen) + return StatusCode(503, new ApiErrorResponse(serverState.ApiErrorCode, null, serverState.Reason)); + WorkOrderBiz biz = WorkOrderBiz.GetBiz(ct, HttpContext); + if (!Authorized.HasCreateRole(HttpContext.Items, AyaType.WorkOrderItemOutsideService)) + return StatusCode(403, new ApiNotAuthorizedResponse()); + if (!ModelState.IsValid) + return BadRequest(new ApiErrorResponse(ModelState)); + WorkOrderItemOutsideService o = await biz.OutsideServiceCreateAsync(newObject); + if (o == null) + return BadRequest(new ApiErrorResponse(biz.Errors)); + else + return CreatedAtAction(nameof(WorkOrderController.GetWorkOrderItemOutsideService), new { WorkOrderItemOutsideServiceId = o.Id, version = apiVersion.ToString() }, new ApiCreatedResponse(o)); + } + + + /// + /// Get WorkOrderItemOutsideService object + /// + /// + /// A single WorkOrderItemOutsideService + [HttpGet("items/outsideservices/{WorkOrderItemOutsideServiceId}")] + public async Task GetWorkOrderItemOutsideService([FromRoute] long WorkOrderItemOutsideServiceId) + { + if (!serverState.IsOpen) + return StatusCode(503, new ApiErrorResponse(serverState.ApiErrorCode, null, serverState.Reason)); + WorkOrderBiz biz = WorkOrderBiz.GetBiz(ct, HttpContext); + if (!Authorized.HasReadFullRole(HttpContext.Items, AyaType.WorkOrderItemOutsideService)) + return StatusCode(403, new ApiNotAuthorizedResponse()); + if (!ModelState.IsValid) + return BadRequest(new ApiErrorResponse(ModelState)); + var o = await biz.OutsideServiceGetAsync(WorkOrderItemOutsideServiceId); + if (o == null) + return NotFound(new ApiErrorResponse(ApiErrorCode.NOT_FOUND)); + return Ok(ApiOkResponse.Response(o)); + } + + /// + /// Update WorkOrderItemOutsideService + /// + /// + /// WorkOrderItemOutsideService - top level only, no descendants + /// New concurrency token + [HttpPut("items/outsideservices")] + public async Task PutWorkOrderItemOutsideService([FromBody] WorkOrderItemOutsideService updatedObject) + { + if (!serverState.IsOpen) + return StatusCode(503, new ApiErrorResponse(serverState.ApiErrorCode, null, serverState.Reason)); + if (!ModelState.IsValid) + return BadRequest(new ApiErrorResponse(ModelState)); + WorkOrderBiz biz = WorkOrderBiz.GetBiz(ct, HttpContext); + if (!Authorized.HasModifyRole(HttpContext.Items, AyaType.WorkOrderItemOutsideService)) + return StatusCode(403, new ApiNotAuthorizedResponse()); + var o = await biz.OutsideServicePutAsync(updatedObject);//In future may need to return entire object, for now just concurrency token + if (o == null) + { + if (biz.Errors.Exists(z => z.Code == ApiErrorCode.CONCURRENCY_CONFLICT)) + return StatusCode(409, new ApiErrorResponse(biz.Errors)); + else + return BadRequest(new ApiErrorResponse(biz.Errors)); + } + return Ok(ApiOkResponse.Response(new { Concurrency = o.Concurrency })); + } + + /// + /// Delete WorkOrderItemOutsideService + /// + /// + /// NoContent + [HttpDelete("items/outsideservices/{WorkOrderItemOutsideServiceId}")] + public async Task DeleteWorkOrderItemOutsideService([FromRoute] long WorkOrderItemOutsideServiceId) + { + if (!serverState.IsOpen) + return StatusCode(503, new ApiErrorResponse(serverState.ApiErrorCode, null, serverState.Reason)); + if (!ModelState.IsValid) + return BadRequest(new ApiErrorResponse(ModelState)); + WorkOrderBiz biz = WorkOrderBiz.GetBiz(ct, HttpContext); + if (!Authorized.HasDeleteRole(HttpContext.Items, AyaType.WorkOrderItemOutsideService)) + return StatusCode(403, new ApiNotAuthorizedResponse()); + if (!await biz.OutsideServiceDeleteAsync(WorkOrderItemOutsideServiceId)) + return BadRequest(new ApiErrorResponse(biz.Errors)); + return NoContent(); + } + + #endregion WorkOrderItemOutsideService + + + /* ██████╗ █████╗ ██████╗ ████████╗███████╗ ██╔══██╗██╔══██╗██╔══██╗╚══██╔══╝██╔════╝ @@ -783,8 +886,8 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) WorkOrderItemPart - /// (descendant objects must be updated via their individual routes seperately) + /// Update WorkOrderItemPart + /// /// /// WorkOrderItemPart - top level only, no descendants /// New concurrency token @@ -889,8 +992,8 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) WorkOrderItemPartRequest - /// (descendant objects must be updated via their individual routes seperately) + /// Update WorkOrderItemPartRequest + /// /// /// WorkOrderItemPartRequest - top level only, no descendants /// New concurrency token @@ -995,8 +1098,8 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) WorkOrderItemScheduledUser - /// (descendant objects must be updated via their individual routes seperately) + /// Update WorkOrderItemScheduledUser + /// /// /// WorkOrderItemScheduledUser - top level only, no descendants /// New concurrency token @@ -1101,8 +1204,8 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) WorkOrderItemTask - /// (descendant objects must be updated via their individual routes seperately) + /// Update WorkOrderItemTask + /// /// /// WorkOrderItemTask - top level only, no descendants /// New concurrency token @@ -1207,8 +1310,8 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) WorkOrderItemTravel - /// (descendant objects must be updated via their individual routes seperately) + /// Update WorkOrderItemTravel + /// /// /// WorkOrderItemTravel - top level only, no descendants /// New concurrency token @@ -1313,8 +1416,8 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) WorkOrderItemUnit - /// (descendant objects must be updated via their individual routes seperately) + /// Update WorkOrderItemUnit + /// /// /// WorkOrderItemUnit - top level only, no descendants /// New concurrency token diff --git a/server/AyaNova/Controllers/WorkOrderStatusController.cs b/server/AyaNova/Controllers/WorkOrderStatusController.cs index eadabd64..a53459ac 100644 --- a/server/AyaNova/Controllers/WorkOrderStatusController.cs +++ b/server/AyaNova/Controllers/WorkOrderStatusController.cs @@ -104,7 +104,7 @@ namespace AyaNova.Api.Controllers } /// - /// Put (update) WorkOrderStatus + /// Update WorkOrderStatus /// /// /// diff --git a/server/AyaNova/Controllers/WorkOrderTemplateController.cs b/server/AyaNova/Controllers/WorkOrderTemplateController.cs index d7514da5..b2d3139b 100644 --- a/server/AyaNova/Controllers/WorkOrderTemplateController.cs +++ b/server/AyaNova/Controllers/WorkOrderTemplateController.cs @@ -74,7 +74,7 @@ namespace AyaNova.Api.Controllers /// - /// Put (update) WorkOrderTemplate + /// Update WorkOrderTemplate /// /// /// diff --git a/server/AyaNova/biz/WorkOrderBiz.cs b/server/AyaNova/biz/WorkOrderBiz.cs index f74d34ef..e036cc07 100644 --- a/server/AyaNova/biz/WorkOrderBiz.cs +++ b/server/AyaNova/biz/WorkOrderBiz.cs @@ -1845,12 +1845,12 @@ namespace AyaNova.Biz /* - ██████╗ ██╗ ██╗████████╗███████╗██╗██████╗ ███████╗ ███████╗███████╗██████╗ ██╗ ██╗██╗ ██████╗███████╗ + ██████╗ ██╗ ██╗████████╗███████╗██╗██████╗ ███████╗ ███████╗███████╗██████╗ ██╗ ██╗██╗ ██████╗███████╗ ██╔═══██╗██║ ██║╚══██╔══╝██╔════╝██║██╔══██╗██╔════╝ ██╔════╝██╔════╝██╔══██╗██║ ██║██║██╔════╝██╔════╝ ██║ ██║██║ ██║ ██║ ███████╗██║██║ ██║█████╗ ███████╗█████╗ ██████╔╝██║ ██║██║██║ █████╗ ██║ ██║██║ ██║ ██║ ╚════██║██║██║ ██║██╔══╝ ╚════██║██╔══╝ ██╔══██╗╚██╗ ██╔╝██║██║ ██╔══╝ ╚██████╔╝╚██████╔╝ ██║ ███████║██║██████╔╝███████╗ ███████║███████╗██║ ██║ ╚████╔╝ ██║╚██████╗███████╗ - ╚═════╝ ╚═════╝ ╚═╝ ╚══════╝╚═╝╚═════╝ ╚══════╝ ╚══════╝╚══════╝╚═╝ ╚═╝ ╚═══╝ ╚═╝ ╚═════╝╚══════╝ + ╚═════╝ ╚═════╝ ╚═╝ ╚══════╝╚═╝╚═════╝ ╚══════╝ ╚══════╝╚══════╝╚═╝ ╚═╝ ╚═══╝ ╚═╝ ╚═════╝╚══════╝