Преглед изворни кода

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

tangjiang пре 9 месеци
родитељ
комит
571e51797e

+ 6 - 1
src/Hotline.Application/FlowEngine/WorkflowApplication.cs

@@ -741,6 +741,7 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
                 var summaryTargetStep = workflow.Steps.FirstOrDefault(d =>
                     d.StepType == EStepType.Normal &&
                     d.Code == stepDefine.SummaryTargetCode &&
+                    d.Status == EWorkflowStepStatus.Handled &&
                     d.IsOrigin);
                 if (summaryTargetStep is null)
                     throw UserFriendlyException.SameMessage("未查询到汇总对象节点");
@@ -753,7 +754,11 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
                     Key = summaryTargetStep.HandlerId,
                     Value = summaryTargetStep.HandlerName,
                     UserId = summaryTargetStep.HandlerId,
-                    Username = summaryTargetStep.HandlerName
+                    Username = summaryTargetStep.HandlerName,
+                    OrgId = summaryTargetStep.HandlerOrgId,
+                    OrgName = summaryTargetStep.HandlerOrgName,
+                    RoleId = summaryTargetStep.RoleId,
+                    RoleName = summaryTargetStep.RoleName
                 };
 
                 nextStepOption = new NextStepOption

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

@@ -1881,8 +1881,6 @@ namespace Hotline.FlowEngine.Workflows
             newStep.StartCountersignId = step.StartCountersignId;
             newStep.CountersignId = step.CountersignId;
             newStep.IsStartedCountersignEnd = step.IsStartedCountersignEnd;
-            newStep.RoleId = step.RoleId;
-            newStep.RoleName = step.RoleName;
 
 			//退回场景:指派给原办理人,其余场景:按照原节点原始指派方式复制
 			if (traceType is EWorkflowTraceType.Previous)
@@ -1892,7 +1890,7 @@ namespace Hotline.FlowEngine.Workflows
                 newStep.FlowAssignType = !step.HandlerOrgIsCenter!.Value ? EFlowAssignType.Org : EFlowAssignType.Role;
                 if (newStep is { FlowAssignType: EFlowAssignType.Role, BusinessType: EBusinessType.Send })
                     newStep.FlowAssignType = EFlowAssignType.User;
-				newStep.Assign(step.HandlerId, step.HandlerName, step.HandlerOrgId, step.HandlerOrgName);
+				newStep.Assign(step.HandlerId, step.HandlerName, step.HandlerOrgId, step.HandlerOrgName, step.RoleId, step.RoleName);
             }
 
             await _workflowStepRepository.AddAsync(newStep, cancellationToken);