Dun.Jason 1 gadu atpakaļ
vecāks
revīzija
ba78345f8d
1 mainītis faili ar 9 papildinājumiem un 2 dzēšanām
  1. 9 2
      src/Hotline.Api/Controllers/OrderController.cs

+ 9 - 2
src/Hotline.Api/Controllers/OrderController.cs

@@ -1217,6 +1217,13 @@ public class OrderController : BaseController
     [LogFilter("取消工单延期")]
     public async Task CancelDelay([FromBody]string id)
     {
+        var orderDelay = await _orderDelayRepository.GetAsync(id, HttpContext.RequestAborted);
+        if (orderDelay != null)
+        {
+            await _workflowDomainService.TerminateAsync(new TerminateDto() { WorkflowId = orderDelay.WorkflowId, Opinion = "" }, HttpContext.RequestAborted);
+            orderDelay.DelayState = EDelayState.Withdraw;
+            await _orderDelayRepository.UpdateAsync(orderDelay, HttpContext.RequestAborted);
+        }
 
     }
 
@@ -2298,8 +2305,8 @@ public class OrderController : BaseController
     [HttpPost("handle")]
     public async Task Handle([FromBody] NextWorkflowDto dto)
     {
-        var order = await _orderRepository.GetAsync(x => x.WorkflowId == dto.WorkflowId);
-        if(await _orderDelayRepository.AnyAsync(x => x.OrderId == order.Id && x.DelayState == EDelayState.Examining))
+        var order = await _orderRepository.GetAsync(x => x.WorkflowId == dto.WorkflowId,HttpContext.RequestAborted);
+        if(await _orderDelayRepository.AnyAsync(x => x.OrderId == order.Id && x.DelayState == EDelayState.Examining,HttpContext.RequestAborted))
         {
             throw UserFriendlyException.SameMessage("该工单存在正在审核中的延期,不能办理");
         }