|
@@ -2695,10 +2695,10 @@ public class OrderController : BaseController
|
|
|
.FirstAsync(d => d.Id == workflow.ExternalId);
|
|
|
if (order.Workflow.IsInCountersign) throw UserFriendlyException.SameMessage("工单会签中,无法进行退回!");
|
|
|
|
|
|
- var applyOrg = _organizeRepository.Get(currentStep.AcceptorOrgId);
|
|
|
- var sendBackOrg = _organizeRepository.Get(prevStep.AcceptorOrgId);
|
|
|
- if ((twoSendBack && 2.Equals(applyOrg.Level) && 1.Equals(sendBackOrg.Level) && !sendBackOrg.IsCenter)
|
|
|
- || (oneSendBack && 1.Equals(applyOrg.Level) && sendBackOrg.IsCenter && !applyOrg.IsCenter))
|
|
|
+ //var applyOrg = _organizeRepository.Get(currentStep.AcceptorOrgId.CalcOrgLevel());
|
|
|
+ //var sendBackOrg = _organizeRepository.Get(prevStep.AcceptorOrgId.CalcOrgLevel());
|
|
|
+ if ((twoSendBack && 2.Equals(currentStep.AcceptorOrgId.CalcOrgLevel()) && 1.Equals(prevStep.AcceptorOrgId.CalcOrgLevel()) && !prevStep.AcceptorOrgId.IsCenter())
|
|
|
+ || (oneSendBack && 1.Equals(currentStep.AcceptorOrgId.CalcOrgLevel()) && prevStep.AcceptorOrgId.IsCenter() && !currentStep.AcceptorOrgId.IsCenter()))
|
|
|
{
|
|
|
var audit = new OrderSendBackAudit
|
|
|
{
|
|
@@ -2706,21 +2706,25 @@ public class OrderController : BaseController
|
|
|
State = ESendBackAuditState.Apply,
|
|
|
Content = dto.Opinion,
|
|
|
SendBackData = dto,
|
|
|
- ApplyOrgId = applyOrg.Id,
|
|
|
- ApplyOrgName = applyOrg.Name,
|
|
|
- SendBackOrgId = sendBackOrg.Id,
|
|
|
- SendBackOrgName = sendBackOrg.Name,
|
|
|
+ ApplyOrgId = currentStep.AcceptorOrgId,
|
|
|
+ ApplyOrgName = currentStep!.AcceptorOrgName,
|
|
|
+ SendBackOrgId = prevStep.AcceptorOrgId,
|
|
|
+ SendBackOrgName = prevStep!.AcceptorOrgName,
|
|
|
WorkflowOrgId = _sessionContext.RequiredOrgId,
|
|
|
WorkflowUserId = _sessionContext.RequiredUserId
|
|
|
};
|
|
|
await _orderSendBackAuditRepository.AddAsync(audit, HttpContext.RequestAborted);
|
|
|
}
|
|
|
//中心内部流转 不走审批流程 3级部门不走审批
|
|
|
- if ((sendBackOrg.IsCenter && applyOrg.IsCenter) || 3.Equals(applyOrg.Level))
|
|
|
+ else if (prevStep.AcceptorOrgId.IsCenter() && currentStep.AcceptorOrgId.IsCenter())
|
|
|
{
|
|
|
await _workflowApplication.PreviousAsync(dto, HttpContext.RequestAborted);
|
|
|
//发送短信TODO
|
|
|
}
|
|
|
+ //不进入前两个判断都是默认退
|
|
|
+ else{
|
|
|
+ await _workflowApplication.PreviousAsync(dto, HttpContext.RequestAborted);
|
|
|
+ }
|
|
|
}
|
|
|
else
|
|
|
{
|