Sfoglia il codice sorgente

fixed: 甄别退回待办人字段赋值错误

xf 1 anno fa
parent
commit
7d679712c1

+ 0 - 3
src/Hotline.Api/Controllers/OrderController.cs

@@ -43,13 +43,10 @@ using XF.Domain.Cache;
 using Hotline.Api.Filter;
 using Hotline.Push.Notifies;
 using Hotline.Users;
-using MongoDB.Driver;
-using System.Threading;
 using Microsoft.AspNetCore.Authorization;
 using Hotline.Import;
 using MiniExcelLibs;
 using Hotline.Application.ExportExcel;
-using System.Collections.Generic;
 
 namespace Hotline.Api.Controllers;
 

+ 0 - 3
src/Hotline.Application/FlowEngine/WorkflowApplication.cs

@@ -15,10 +15,8 @@ using Hotline.Share.Dtos.FlowEngine.Definition;
 using Hotline.Share.Dtos.Settings;
 using Hotline.Share.Enums.FlowEngine;
 using Hotline.Share.Enums.Identity;
-using Hotline.Share.Enums.Order;
 using Hotline.Users;
 using MapsterMapper;
-using System.Threading;
 using Hotline.File;
 using Hotline.Share.Enums.Settings;
 using XF.Domain.Authentications;
@@ -29,7 +27,6 @@ using XF.Domain.Extensions;
 using XF.Domain.Repository;
 using XF.Utility.EnumExtensions;
 using Hotline.Share.Dtos.File;
-using Hotline.Share.Dtos.Order;
 
 namespace Hotline.Application.FlowEngine;
 

+ 23 - 20
src/Hotline/FlowEngine/Workflows/Workflow.cs

@@ -832,28 +832,31 @@ public partial class Workflow
         RemoveCurrentHandleGroup(handlerId, handlerOrg);
 
         var groupId = Guid.NewGuid().ToString();
-        var handlerObjects = prevStep.Handlers.Select(d => new HandlerGroupItem
+        var handlerObjects = new HandlerGroupItem
         {
             GroupId = groupId,
-            Key = d.Key,
-            Value = d.Value
-        });
-        switch (prevStep.HandlerType)
-        {
-            case EHandlerType.OrgLevel:
-            case EHandlerType.OrgType:
-            case EHandlerType.AssignedOrg:
-                HandlerOrgs.AddRange(handlerObjects);
-                HandlerOrgs = HandlerOrgs.Distinct().ToList();
-                break;
-            case EHandlerType.Role:
-            case EHandlerType.AssignedUser:
-                HandlerUsers.AddRange(handlerObjects);
-                HandlerUsers = HandlerUsers.Distinct().ToList();
-                break;
-            default:
-                throw new ArgumentOutOfRangeException();
-        }
+            Key = prevStep.HandlerId,
+            Value = prevStep.HandlerName
+        };
+        HandlerUsers.Add(handlerObjects);
+        HandlerUsers = HandlerUsers.Distinct().ToList();
+
+        //switch (prevStep.HandlerType)
+        //{
+        //    case EHandlerType.OrgLevel:
+        //    case EHandlerType.OrgType:
+        //    case EHandlerType.AssignedOrg:
+        //        HandlerOrgs.AddRange(handlerObjects);
+        //        HandlerOrgs = HandlerOrgs.Distinct().ToList();
+        //        break;
+        //    case EHandlerType.Role:
+        //    case EHandlerType.AssignedUser:
+        //        HandlerUsers.AddRange(handlerObjects);
+        //        HandlerUsers = HandlerUsers.Distinct().ToList();
+        //        break;
+        //    default:
+        //        throw new ArgumentOutOfRangeException();
+        //}
     }
 
     /// <summary>

+ 1 - 1
src/Hotline/FlowEngine/Workflows/WorkflowDomainService.cs

@@ -590,7 +590,7 @@ namespace Hotline.FlowEngine.Workflows
 
 
             //更新流程可办理对象
-            workflow.UpdatePreviousHandlers(operater.Id, operater.OrgId, newPrevStep);
+            workflow.UpdatePreviousHandlers(operater.Id, operater.OrgId, prevStep);
 
             //orgToCenter会触发重新计算期满时间,1.无需审核按当前时间进行计算 2.需审核按审核通过时间计算
             var isOrgToCenter = prevStep.BusinessType is EBusinessType.Send && prevStep.IsOrigin;