|
@@ -24,6 +24,7 @@ using XF.Domain.Dependency;
|
|
|
using XF.Domain.Entities;
|
|
|
using XF.Domain.Exceptions;
|
|
|
using XF.Domain.Repository;
|
|
|
+using XF.Utility.EnumExtensions;
|
|
|
|
|
|
namespace Hotline.Application.FlowEngine;
|
|
|
|
|
@@ -210,24 +211,15 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
|
|
|
var startStep = definition.Steps.FirstOrDefault(d => d.StepType == EStepType.Start);
|
|
|
if (startStep == null)
|
|
|
throw new UserFriendlyException("未正确配置发起人节点");
|
|
|
-
|
|
|
- if(startStep.InstanceMode is EInstanceMode.Multiple)
|
|
|
+
|
|
|
+ if (startStep.InstanceMode is EInstanceMode.Multiple)
|
|
|
{
|
|
|
- switch (startStep.RepeatPolicy)
|
|
|
+ startStep.Name = $"{startStep.InstancePolicy?.GetDescription()}";
|
|
|
+ return new DefinedStepDto
|
|
|
{
|
|
|
- case ERepeatPolicy.OrgUpCenterTop:
|
|
|
- break;
|
|
|
- case ERepeatPolicy.OrgUp:
|
|
|
- break;
|
|
|
- case ERepeatPolicy.OrgDownCenterTop:
|
|
|
- break;
|
|
|
- case ERepeatPolicy.OrgDown:
|
|
|
- break;
|
|
|
- case null:
|
|
|
- break;
|
|
|
- default:
|
|
|
- throw new ArgumentOutOfRangeException();
|
|
|
- }
|
|
|
+ Id = definition.Id,
|
|
|
+ Steps = new List<StepDefineBasic> { startStep }
|
|
|
+ };
|
|
|
}
|
|
|
|
|
|
var firstStepDefines = definition.FindStepDefines(startStep.NextSteps.Select(d => d.Code));
|