Dun.Jason il y a 1 an
Parent
commit
90459390c1
1 fichiers modifiés avec 29 ajouts et 2 suppressions
  1. 29 2
      src/Hotline.Api/Controllers/OrderController.cs

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

@@ -2240,8 +2240,35 @@ public class OrderController : BaseController
         dto.CanHandle = order.CanHandle(_sessionContext.RequiredUserId, _sessionContext.RequiredOrgId);
         dto.IsCanDelay = !order.OrderDelays.Any(x => x.DelayState == EDelayState.Examining);
         dto.IsCanCancelDelay = order.OrderDelays.Any(x => x.DelayState == EDelayState.Examining && x.ApplyOrgCode == _sessionContext.RequiredOrgId);
-        var delayModel = order.OrderDelays.Where(x => x.DelayState == EDelayState.Pass).MaxBy(x => x.CreationTime);
-        dto.DelayString = delayModel != null ? delayModel?.DelayNum + "个" + delayModel?.DelayUnit.GetDescription() : "";
+        
+        var delayModel = order.OrderDelays.MaxBy(x => x.CreationTime);
+        if (delayModel!=null)
+        {
+            var workFlow = await _workflowRepository.GetAsync(delayModel.WorkflowId);
+            switch (delayModel.DelayState)
+            {
+                case EDelayState.Examining:
+                    dto.DelayString = "延期状态:审批中  当前节点:" + workFlow?.ActualHandleStepName;
+                    break;
+                case EDelayState.Pass:
+                    dto.DelayString = delayModel?.DelayNum + "个" + delayModel?.DelayUnit.GetDescription();
+                    break;
+                case EDelayState.NoPass:
+                    dto.DelayString = "延期状态:拒绝 当前节点:" + workFlow?.ActualHandleStepName;
+                    break;
+                case EDelayState.Withdraw:
+                    dto.DelayString = "延期状态:撤销 当前节点:"+ workFlow?.ActualHandleStepName;
+                    break;
+                default:
+                    break;
+            }
+            
+        }
+        else
+        {
+            dto.DelayString = "";
+        }
+        
         dto.CanPrevious = canPrevious;
 
         if (dto.FileJson != null && dto.FileJson.Any())