|
@@ -5659,12 +5659,28 @@ public class OrderController : BaseController
|
|
|
//string applicantId, string applicantOrgId, string[] applicantRoleIds,
|
|
|
// ISessionContext current, CancellationToken cancellationToken);
|
|
|
sendBack.SendBackData.ExpiredTime = order.ExpiredTime;
|
|
|
- var result = await _workflowApplication.PreviousAsync(sendBack.SendBackData, sendBack.WorkflowUserId,
|
|
|
- sendBack.WorkflowOrgId, sendBack.WorkflowRoleIds.ToArray(),
|
|
|
- cancellationToken: HttpContext.RequestAborted);
|
|
|
+ //var result = await _workflowApplication.PreviousAsync(sendBack.SendBackData, sendBack.WorkflowUserId,
|
|
|
+ // sendBack.WorkflowOrgId, sendBack.WorkflowRoleIds.ToArray(),
|
|
|
+ // cancellationToken: HttpContext.RequestAborted);
|
|
|
+
|
|
|
+ var (workflow, currentStep1, prevDefine, prevStep1, newStep, flowDirection) =
|
|
|
+ await _workflowApplication.PreviousAsync(sendBack.SendBackData,
|
|
|
+ sendBack.WorkflowUserId, sendBack.WorkflowOrgId, sendBack.WorkflowRoleIds.ToArray(),
|
|
|
+ async (workflow1, prevStepDefine, prevStep1, newStep) =>
|
|
|
+ {
|
|
|
+ var stepAssignInfo =
|
|
|
+ await _orderApplication.GetOrderPreviousAssignInfoAsync(workflow1, prevStepDefine,
|
|
|
+ prevStep1, HttpContext.RequestAborted);
|
|
|
+ if (stepAssignInfo is null) return;
|
|
|
+ var validator = new StepAssignInfoValidator();
|
|
|
+ await validator.ValidateAndThrowAsync(stepAssignInfo);
|
|
|
+ newStep.Assign(stepAssignInfo);
|
|
|
+ },
|
|
|
+ HttpContext.RequestAborted);
|
|
|
+
|
|
|
//var flowDirection = await _workflowApplication.PreviousAsync(sendBack.SendBackData, sendBack.WorkflowUserId, HttpContext.RequestAborted);
|
|
|
- var processType = result.flowDirection == EFlowDirection.OrgToCenter ||
|
|
|
- result.flowDirection == EFlowDirection.CenterToCenter
|
|
|
+ var processType = flowDirection == EFlowDirection.OrgToCenter ||
|
|
|
+ flowDirection == EFlowDirection.CenterToCenter
|
|
|
? EProcessType.Zhiban
|
|
|
: EProcessType.Jiaoban;
|
|
|
if (sendBack.ApplyOrgId != OrgSeedData.CenterId && sendBack.SendBackOrgId == OrgSeedData.CenterId)
|
|
@@ -5673,8 +5689,8 @@ public class OrderController : BaseController
|
|
|
.Where(o => o.Id == sendBack.OrderId).ExecuteCommandAsync(HttpContext.RequestAborted);
|
|
|
|
|
|
//记录退回后最新的流程节点
|
|
|
- if (result.newStep != null && !string.IsNullOrEmpty(result.newStep.Id))
|
|
|
- sendBack.NewCurrentStepId = result. newStep.Id;
|
|
|
+ if (newStep != null && !string.IsNullOrEmpty(newStep.Id))
|
|
|
+ sendBack.NewCurrentStepId = newStep.Id;
|
|
|
//发送短信TODO
|
|
|
}
|
|
|
else
|
|
@@ -5738,11 +5754,27 @@ public class OrderController : BaseController
|
|
|
}
|
|
|
|
|
|
sendBack.SendBackData.ExpiredTime = order.ExpiredTime;
|
|
|
- var result = await _workflowApplication.PreviousAsync(sendBack.SendBackData,
|
|
|
- sendBack.WorkflowUserId, sendBack.WorkflowOrgId, sendBack.WorkflowRoleIds.ToArray(),
|
|
|
- cancellationToken: HttpContext.RequestAborted);
|
|
|
+ //var result = await _workflowApplication.PreviousAsync(sendBack.SendBackData,
|
|
|
+ // sendBack.WorkflowUserId, sendBack.WorkflowOrgId, sendBack.WorkflowRoleIds.ToArray(),
|
|
|
+ // cancellationToken: HttpContext.RequestAborted);
|
|
|
//var flowDirection = await _workflowApplication.PreviousAsync(sendBack.SendBackData, sendBack.WorkflowUserId, HttpContext.RequestAborted);
|
|
|
- var processType = result.flowDirection == EFlowDirection.OrgToCenter || result.flowDirection == EFlowDirection.CenterToCenter
|
|
|
+
|
|
|
+ var (workflow, currentStep1, prevDefine, prevStep1, newStep, flowDirection) =
|
|
|
+ await _workflowApplication.PreviousAsync(sendBack.SendBackData,
|
|
|
+ sendBack.WorkflowUserId, sendBack.WorkflowOrgId, sendBack.WorkflowRoleIds.ToArray(),
|
|
|
+ async (workflow1, prevStepDefine, prevStep1, newStep) =>
|
|
|
+ {
|
|
|
+ var stepAssignInfo =
|
|
|
+ await _orderApplication.GetOrderPreviousAssignInfoAsync(workflow1, prevStepDefine,
|
|
|
+ prevStep1, HttpContext.RequestAborted);
|
|
|
+ if (stepAssignInfo is null) return;
|
|
|
+ var validator = new StepAssignInfoValidator();
|
|
|
+ await validator.ValidateAndThrowAsync(stepAssignInfo);
|
|
|
+ newStep.Assign(stepAssignInfo);
|
|
|
+ },
|
|
|
+ HttpContext.RequestAborted);
|
|
|
+
|
|
|
+ var processType = flowDirection == EFlowDirection.OrgToCenter || flowDirection == EFlowDirection.CenterToCenter
|
|
|
? EProcessType.Zhiban
|
|
|
: EProcessType.Jiaoban;
|
|
|
if (sendBack.ApplyOrgId != OrgSeedData.CenterId && sendBack.SendBackOrgId == OrgSeedData.CenterId)
|
|
@@ -5751,8 +5783,8 @@ public class OrderController : BaseController
|
|
|
.Where(o => o.Id == sendBack.OrderId).ExecuteCommandAsync(HttpContext.RequestAborted);
|
|
|
|
|
|
//记录退回后最新的流程节点
|
|
|
- if (result.newStep != null && !string.IsNullOrEmpty(result.newStep.Id))
|
|
|
- sendBack.NewCurrentStepId = result.newStep.Id;
|
|
|
+ if (newStep != null && !string.IsNullOrEmpty(newStep.Id))
|
|
|
+ sendBack.NewCurrentStepId = newStep.Id;
|
|
|
//发送短信TODO
|
|
|
}
|
|
|
else
|