Selaa lähdekoodia

Merge branch 'release/yibin' of http://git.12345lm.cn/Fengwo/hotline into release/yibin

tangjiang 9 kuukautta sitten
vanhempi
commit
bb297486bb

+ 19 - 16
src/Hotline.Application/FlowEngine/WorkflowApplication.cs

@@ -147,22 +147,25 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
             current.RequiredUserId, current.RequiredOrgId,
             externalId, cancellationToken);
 
-        //var startStepHandles = new List<WorkflowStepHandler>{WorkflowStepHandler.Create(workflow.Id, workflow.ExternalId,
-        //    EFlowAssignType.User, current.RequiredUserId, current.UserName,
-        //    current.RequiredOrgId, current.OrgName)};
-
-        var startStep = _workflowDomainService.CreateStartStep(workflow, startStepDefine, dto,
-            new FlowStepHandler
-            {
-                Key = current.RequiredUserId,
-                Value = current.UserName,
-                UserId = current.UserId,
-                Username = current.UserName,
-                OrgId = current.RequiredOrgId,
-                OrgName = current.OrgName
-            }, expiredTime);
-
-        var flowAssignInfo =
+		//var startStepHandles = new List<WorkflowStepHandler>{WorkflowStepHandler.Create(workflow.Id, workflow.ExternalId,
+		//    EFlowAssignType.User, current.RequiredUserId, current.UserName,
+		//    current.RequiredOrgId, current.OrgName)};
+
+		var defineHandler = startStepDefine.HandlerTypeItems.First();
+		var startStep = _workflowDomainService.CreateStartStep(workflow, startStepDefine, dto,
+			new FlowStepHandler
+			{
+				Key = current.RequiredUserId,
+				Value = current.UserName,
+				UserId = current.UserId,
+				Username = current.UserName,
+				OrgId = current.RequiredOrgId,
+				OrgName = current.OrgName,
+				RoleId = defineHandler.Key,
+				RoleName = defineHandler.Value,
+			}, expiredTime);
+
+		var flowAssignInfo =
             await GetNextStepFlowAssignInfoAsync(workflow, startStep, dto, firstStepDefine, isNextDynamic, cancellationToken);
 
         //var firstStepHandlers = await GetNextStepHandlersAsync(workflow, firstStepDefine, dto, cancellationToken);

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

@@ -1888,8 +1888,8 @@ namespace Hotline.FlowEngine.Workflows
 	            //newStep.FlowAssignType = EFlowAssignType.User;
                 // 是否中心  临时紧急修改 后续在流程模版定义是否原办理人退回类型 来实现流程 禅道200
                 newStep.FlowAssignType = !step.HandlerOrgIsCenter!.Value ? EFlowAssignType.Org : EFlowAssignType.Role;
-                if (newStep.BusinessType == EBusinessType.Send)
-	                newStep.FlowAssignType = EFlowAssignType.User;
+                if (newStep is { FlowAssignType: EFlowAssignType.Role, BusinessType: EBusinessType.Send })
+                    newStep.FlowAssignType = EFlowAssignType.User;
 				newStep.Assign(step.HandlerId, step.HandlerName, step.HandlerOrgId, step.HandlerOrgName);
             }