From 05581dd1b61d2e78186565d3c6dadec718e30d74 Mon Sep 17 00:00:00 2001 From: John Cardinal Date: Fri, 14 May 2021 23:11:25 +0000 Subject: [PATCH] --- .../Controllers/WorkOrderController.cs | 29 +++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/server/AyaNova/Controllers/WorkOrderController.cs b/server/AyaNova/Controllers/WorkOrderController.cs index 3894382e..efb4dd0c 100644 --- a/server/AyaNova/Controllers/WorkOrderController.cs +++ b/server/AyaNova/Controllers/WorkOrderController.cs @@ -172,6 +172,31 @@ namespace AyaNova.Api.Controllers + /// + /// Change existing work order's Contract + /// applies new Contract and returns complete updated work order + /// + /// new contract id + /// From route path + /// WorkOrder + [HttpPost("contract")] + public async Task ChangeContract([FromBody] long? newContractId, 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, biz.BizType)) + return StatusCode(403, new ApiNotAuthorizedResponse()); + if (!ModelState.IsValid) + return BadRequest(new ApiErrorResponse(ModelState)); + WorkOrder o = await biz.ChangeContract(newContractId); + if (o == null) + return BadRequest(new ApiErrorResponse(biz.Errors)); + else + return Ok(ApiOkResponse.Response(o)); + } + + #endregion WorkOrderTopLevel routes @@ -730,7 +755,7 @@ namespace AyaNova.Api.Controllers */ - + #region WorkOrderItemOutsideService /// @@ -827,7 +852,7 @@ namespace AyaNova.Api.Controllers #endregion WorkOrderItemOutsideService - + /* ██████╗ █████╗ ██████╗ ████████╗███████╗