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
/*
- ██████╗ ██╗ ██╗████████╗███████╗██╗██████╗ ███████╗ ███████╗███████╗██████╗ ██╗ ██╗██╗ ██████╗███████╗
+ ██████╗ ██╗ ██╗████████╗███████╗██╗██████╗ ███████╗ ███████╗███████╗██████╗ ██╗ ██╗██╗ ██████╗███████╗
██╔═══██╗██║ ██║╚══██╔══╝██╔════╝██║██╔══██╗██╔════╝ ██╔════╝██╔════╝██╔══██╗██║ ██║██║██╔════╝██╔════╝
██║ ██║██║ ██║ ██║ ███████╗██║██║ ██║█████╗ ███████╗█████╗ ██████╔╝██║ ██║██║██║ █████╗
██║ ██║██║ ██║ ██║ ╚════██║██║██║ ██║██╔══╝ ╚════██║██╔══╝ ██╔══██╗╚██╗ ██╔╝██║██║ ██╔══╝
╚██████╔╝╚██████╔╝ ██║ ███████║██║██████╔╝███████╗ ███████║███████╗██║ ██║ ╚████╔╝ ██║╚██████╗███████╗
- ╚═════╝ ╚═════╝ ╚═╝ ╚══════╝╚═╝╚═════╝ ╚══════╝ ╚══════╝╚══════╝╚═╝ ╚═╝ ╚═══╝ ╚═╝ ╚═════╝╚══════╝
+ ╚═════╝ ╚═════╝ ╚═╝ ╚══════╝╚═╝╚═════╝ ╚══════╝ ╚══════╝╚══════╝╚═╝ ╚═╝ ╚═══╝ ╚═╝ ╚═════╝╚══════╝