This commit is contained in:
@@ -177,11 +177,11 @@ namespace AyaNova.Api.Controllers
|
|||||||
/// applies new Contract and returns complete updated work order
|
/// applies new Contract and returns complete updated work order
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="workOrderId">Work order id</param>
|
/// <param name="workOrderId">Work order id</param>
|
||||||
/// <param name="newContractId">new contract id</param>
|
/// <param name="newContractChangeRecord">new contract id</param>
|
||||||
/// <param name="apiVersion">From route path</param>
|
/// <param name="apiVersion">From route path</param>
|
||||||
/// <returns>WorkOrder</returns>
|
/// <returns>WorkOrder</returns>
|
||||||
[HttpPost("contract/{workOrderId}")]
|
[HttpPost("set-contract/{workOrderId}")]
|
||||||
public async Task<IActionResult> ChangeContract([FromRoute] long workOrderId, [FromBody] long? newContractId, ApiVersion apiVersion)
|
public async Task<IActionResult> ChangeContract([FromRoute] long workOrderId, [FromBody] ContractChangeRecord newContractChangeRecord, ApiVersion apiVersion)
|
||||||
{
|
{
|
||||||
if (!serverState.IsOpen)
|
if (!serverState.IsOpen)
|
||||||
return StatusCode(503, new ApiErrorResponse(serverState.ApiErrorCode, null, serverState.Reason));
|
return StatusCode(503, new ApiErrorResponse(serverState.ApiErrorCode, null, serverState.Reason));
|
||||||
@@ -190,14 +190,14 @@ namespace AyaNova.Api.Controllers
|
|||||||
return StatusCode(403, new ApiNotAuthorizedResponse());
|
return StatusCode(403, new ApiNotAuthorizedResponse());
|
||||||
if (!ModelState.IsValid)
|
if (!ModelState.IsValid)
|
||||||
return BadRequest(new ApiErrorResponse(ModelState));
|
return BadRequest(new ApiErrorResponse(ModelState));
|
||||||
WorkOrder o = await biz.ChangeContract(workOrderId, newContractId);
|
WorkOrder o = await biz.ChangeContract(workOrderId, newContractChangeRecord.NewContractId);
|
||||||
if (o == null)
|
if (o == null)
|
||||||
return BadRequest(new ApiErrorResponse(biz.Errors));
|
return BadRequest(new ApiErrorResponse(biz.Errors));
|
||||||
else
|
else
|
||||||
return Ok(ApiOkResponse.Response(o));
|
return Ok(ApiOkResponse.Response(o));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public record ContractChangeRecord(long? NewContractId);
|
||||||
#endregion WorkOrderTopLevel routes
|
#endregion WorkOrderTopLevel routes
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ namespace AyaNova.Biz
|
|||||||
internal async Task<WorkOrder> ChangeContract(long workOrderId, long? newContractId)
|
internal async Task<WorkOrder> ChangeContract(long workOrderId, long? newContractId)
|
||||||
{
|
{
|
||||||
//this is called by UI via contract change route for contract change only and expects wo back to update client ui
|
//this is called by UI via contract change route for contract change only and expects wo back to update client ui
|
||||||
var w=await WorkOrderGetAsync(workOrderId,false,false);
|
var w=await ct.WorkOrder.FirstOrDefaultAsync(z=>z.Id==workOrderId);
|
||||||
|
|
||||||
if (w==null)
|
if (w==null)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user