diff --git a/server/AyaNova/Controllers/WorkOrderController.cs b/server/AyaNova/Controllers/WorkOrderController.cs
index 0e3bac05..a64dfdf8 100644
--- a/server/AyaNova/Controllers/WorkOrderController.cs
+++ b/server/AyaNova/Controllers/WorkOrderController.cs
@@ -391,7 +391,7 @@ namespace AyaNova.Api.Controllers
return Ok(ApiOkResponse.Response(new { ConcurrencyToken = o.ConcurrencyToken }, true));
}
-
+
///
/// Delete WorkOrderItemLabor
///
@@ -468,7 +468,7 @@ namespace AyaNova.Api.Controllers
return Ok(ApiOkResponse.Response(o, !Authorized.HasModifyRole(HttpContext.Items, AyaType.WorkOrderItemPart)));
}
- ///
+ ///
/// Put (update) WorkOrderItemPart
/// (Descendent objects must be updated via their individual routes seperately)
///
@@ -495,6 +495,26 @@ namespace AyaNova.Api.Controllers
return Ok(ApiOkResponse.Response(new { ConcurrencyToken = o.ConcurrencyToken }, true));
}
+ ///
+ /// Delete WorkOrderItemPart
+ ///
+ ///
+ /// NoContent
+ [HttpDelete("{id}")]
+ public async Task DeleteWorkOrderItemPart([FromRoute] long id)
+ {
+ 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.WorkOrderItemPart))
+ return StatusCode(403, new ApiNotAuthorizedResponse());
+ if (!await biz.PartDeleteAsync(id))
+ return BadRequest(new ApiErrorResponse(biz.Errors));
+ return NoContent();
+ }
+
#endregion WorkOrderItemPart
//------------