Commit acabca76 authored by suhuiguang's avatar suhuiguang

1.适配工作流错误 去掉try catch

parent 836ddc50
...@@ -48,7 +48,6 @@ import org.springframework.util.StringUtils; ...@@ -48,7 +48,6 @@ import org.springframework.util.StringUtils;
import org.typroject.tyboot.core.foundation.context.RequestContext; import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil; import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService; import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import org.typroject.tyboot.core.restful.utils.ResponseModel; import org.typroject.tyboot.core.restful.utils.ResponseModel;
import java.util.*; import java.util.*;
...@@ -143,28 +142,23 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg ...@@ -143,28 +142,23 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg
String nextUserIds = ""; String nextUserIds = "";
if ("1".equals(submitType)) { if ("1".equals(submitType)) {
// 发起流程 // 发起流程
try { ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO();
ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO(); List<ActWorkflowStartDTO> list = new ArrayList<>();
List<ActWorkflowStartDTO> list = new ArrayList<>(); ActWorkflowStartDTO dto = new ActWorkflowStartDTO();
ActWorkflowStartDTO dto = new ActWorkflowStartDTO(); dto.setProcessDefinitionKey("unitRename");
dto.setProcessDefinitionKey("unitRename"); dto.setBusinessKey(applyNo);
dto.setBusinessKey(applyNo); dto.setCompleteFirstTask(true);
dto.setCompleteFirstTask(true); // 启动并执行下一步人单位传接收单位的code
// 启动并执行下一步人单位传接收单位的code dto.setNextExecuteUserCompanyCode(this.getReceiveCompanyCode(model));
dto.setNextExecuteUserCompanyCode(this.getReceiveCompanyCode(model)); list.add(dto);
list.add(dto); actWorkflowBatchDTO.setProcess(list);
actWorkflowBatchDTO.setProcess(list); processTasks = cmWorkflowService.startBatch(actWorkflowBatchDTO);
processTasks = cmWorkflowService.startBatch(actWorkflowBatchDTO); this.buildRoleList(processTasks, roleListNext, roleListAll);
this.buildRoleList(processTasks, roleListNext, roleListAll); instanceId = processTasks.get(0).getProcessInstance().getId();
instanceId = processTasks.get(0).getProcessInstance().getId(); nextTaskId = processTasks.get(0).getNextTask().get(0).getId();
nextTaskId = processTasks.get(0).getNextTask().get(0).getId(); taskName[0] = processTasks.get(0).getNextTask().get(0).getName();
taskName[0] = processTasks.get(0).getNextTask().get(0).getName(); List<WorkflowResultDto> workflowResultDtos = commonService.buildWorkFlowInfo(processTasks);
List<WorkflowResultDto> workflowResultDtos = commonService.buildWorkFlowInfo(processTasks); nextUserIds = workflowResultDtos.get(0).getNextExecutorUserIds();
nextUserIds = workflowResultDtos.get(0).getNextExecutorUserIds();
} catch (Exception e) {
log.error("提交失败:{}", e);
throw new BadRequest("提交失败" + e.getMessage());
}
} }
JgChangeRegistrationName dto = new JgChangeRegistrationName(); JgChangeRegistrationName dto = new JgChangeRegistrationName();
// 字段转换 // 字段转换
...@@ -219,7 +213,7 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg ...@@ -219,7 +213,7 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg
// 提交创建待办逻辑 // 提交创建待办逻辑
if ("1".equals(submitType)) { if ("1".equals(submitType)) {
//提交时先删除之前的暂存待办数据 //提交时先删除之前的暂存待办数据
commonService.deleteTaskModel(dto.getSequenceNbr()+""); commonService.deleteTaskModel(dto.getSequenceNbr() + "");
// 创建待办 // 创建待办
TaskModelDto taskModelDto = new TaskModelDto(); TaskModelDto taskModelDto = new TaskModelDto();
taskModelDto.setFlowCreateDate(dto.getApplyDate()); taskModelDto.setFlowCreateDate(dto.getApplyDate());
...@@ -262,7 +256,7 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg ...@@ -262,7 +256,7 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg
//业务类型枚举code值 //业务类型枚举code值
taskModelDto.setTaskType(BusinessTypeEnum.JG_NAME_CHANGE_REGISTRATION.getCode()); taskModelDto.setTaskType(BusinessTypeEnum.JG_NAME_CHANGE_REGISTRATION.getCode());
//业务主键 //业务主键
taskModelDto.setRelationId(dto.getSequenceNbr()+""); taskModelDto.setRelationId(dto.getSequenceNbr() + "");
commonService.buildTaskModel(Collections.singletonList(taskModelDto)); commonService.buildTaskModel(Collections.singletonList(taskModelDto));
} }
} }
...@@ -295,37 +289,33 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg ...@@ -295,37 +289,33 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg
if ("1".equals(submitType)) { if ("1".equals(submitType)) {
//发起流程 //发起流程
if (!StringUtils.hasText(jgChangeRegistrationName.getInstanceId())) { if (!StringUtils.hasText(jgChangeRegistrationName.getInstanceId())) {
try {
List<ProcessTaskDTO> processTasks = new ArrayList<>(); List<ProcessTaskDTO> processTasks = new ArrayList<>();
ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO(); ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO();
List<ActWorkflowStartDTO> list = new ArrayList<>(); List<ActWorkflowStartDTO> list = new ArrayList<>();
ActWorkflowStartDTO dto = new ActWorkflowStartDTO(); ActWorkflowStartDTO dto = new ActWorkflowStartDTO();
dto.setProcessDefinitionKey("unitRename"); dto.setProcessDefinitionKey("unitRename");
dto.setBusinessKey(jgChangeRegistrationName.getApplyNo()); dto.setBusinessKey(jgChangeRegistrationName.getApplyNo());
dto.setCompleteFirstTask(true); dto.setCompleteFirstTask(true);
// 启动并执行下一步人单位传接收单位的code // 启动并执行下一步人单位传接收单位的code
dto.setNextExecuteUserCompanyCode(jgChangeRegistrationName.getReceiveOrgCode()); dto.setNextExecuteUserCompanyCode(jgChangeRegistrationName.getReceiveOrgCode());
list.add(dto); list.add(dto);
actWorkflowBatchDTO.setProcess(list); actWorkflowBatchDTO.setProcess(list);
processTasks = cmWorkflowService.startBatch(actWorkflowBatchDTO); processTasks = cmWorkflowService.startBatch(actWorkflowBatchDTO);
String instanceId = processTasks.get(0).getProcessInstance().getId(); String instanceId = processTasks.get(0).getProcessInstance().getId();
String nextTaskId = processTasks.get(0).getNextTask().get(0).getId(); String nextTaskId = processTasks.get(0).getNextTask().get(0).getId();
String taskName = processTasks.get(0).getNextTask().get(0).getName(); String taskName = processTasks.get(0).getNextTask().get(0).getName();
this.buildRoleList(processTasks, roleListNext, roleListAll); this.buildRoleList(processTasks, roleListNext, roleListAll);
List<WorkflowResultDto> workflowResultDtos = commonService.buildWorkFlowInfo(processTasks); List<WorkflowResultDto> workflowResultDtos = commonService.buildWorkFlowInfo(processTasks);
String nextUserIds = workflowResultDtos.get(0).getNextExecutorUserIds(); String nextUserIds = workflowResultDtos.get(0).getNextExecutorUserIds();
jgChangeRegistrationName.setInstanceStatus(String.join(",", roleListAll)); jgChangeRegistrationName.setInstanceStatus(String.join(",", roleListAll));
jgChangeRegistrationName.setInstanceId(instanceId); jgChangeRegistrationName.setInstanceId(instanceId);
jgChangeRegistrationName.setNextExecutorIds(String.join(",", roleListNext)); jgChangeRegistrationName.setNextExecutorIds(String.join(",", roleListNext));
jgChangeRegistrationName.setNextTaskId(nextTaskId); jgChangeRegistrationName.setNextTaskId(nextTaskId);
jgChangeRegistrationName.setNextExecuteUserIds(nextUserIds); jgChangeRegistrationName.setNextExecuteUserIds(nextUserIds);
jgChangeRegistrationName.setAuditStatus(WorkFlowStatusEnum.UNIT_RENAME_RECEIVE.getPass()); jgChangeRegistrationName.setAuditStatus(WorkFlowStatusEnum.UNIT_RENAME_RECEIVE.getPass());
// 创建待办 // 创建待办
createTaskModel(jgChangeRegistrationName, taskName, "1", nextUserIds); createTaskModel(jgChangeRegistrationName, taskName, "1", nextUserIds);
} catch (Exception e) {
log.error("提交失败:{}", e);
throw new BadRequest("提交失败" + e.getMessage());
}
} else { } else {
// 执行一步 // 执行一步
ProcessTaskDTO processTaskDTO = submit(op, jgChangeRegistrationName); ProcessTaskDTO processTaskDTO = submit(op, jgChangeRegistrationName);
...@@ -392,12 +382,12 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg ...@@ -392,12 +382,12 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg
private String getPageTypeForReject(String operate, String auditStatus) { private String getPageTypeForReject(String operate, String auditStatus) {
// 驳回 // 驳回
if("1".equals(operate)){ if ("1".equals(operate)) {
// 且驳回到的节点为使用单位提交 则可编辑 // 且驳回到的节点为使用单位提交 则可编辑
if(WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getPass().equals(auditStatus) || if (WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getPass().equals(auditStatus) ||
WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getReject().equals(auditStatus) || WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getReject().equals(auditStatus) ||
WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getRollBack().equals(auditStatus) WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getRollBack().equals(auditStatus)
){ ) {
// urlInfo.json 文件的 pageType // urlInfo.json 文件的 pageType
return "edit"; return "edit";
} }
...@@ -413,7 +403,7 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg ...@@ -413,7 +403,7 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg
dto.setResultCode("approvalStatus"); dto.setResultCode("approvalStatus");
dto.setTaskId(jgChangeRegistrationName.getNextTaskId()); dto.setTaskId(jgChangeRegistrationName.getNextTaskId());
dto.setComment("提交流程"); dto.setComment("提交流程");
dto.setNextExecuteUserCompanyCode(this.getNextUserOrgCode(operate,jgChangeRegistrationName)); dto.setNextExecuteUserCompanyCode(this.getNextUserOrgCode(operate, jgChangeRegistrationName));
HashMap<String, Object> map = new HashMap<>(); HashMap<String, Object> map = new HashMap<>();
map.put("approvalStatus", operate); map.put("approvalStatus", operate);
dto.setVariable(map); dto.setVariable(map);
...@@ -476,17 +466,17 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg ...@@ -476,17 +466,17 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg
jsonObject.put("taskType", BusinessTypeEnum.JG_NAME_CHANGE_REGISTRATION.getCode()); jsonObject.put("taskType", BusinessTypeEnum.JG_NAME_CHANGE_REGISTRATION.getCode());
jsonObject.put("flowStatus", this.getTaskCodeByName(jgChangeRegistrationName.getAuditStatus())); jsonObject.put("flowStatus", this.getTaskCodeByName(jgChangeRegistrationName.getAuditStatus()));
jsonObject.put("flowStatusLabel", jgChangeRegistrationName.getAuditStatus()); jsonObject.put("flowStatusLabel", jgChangeRegistrationName.getAuditStatus());
jsonObject.put("changeCertificate",null); jsonObject.put("changeCertificate", null);
// 判断撤回后当前的节点,如果当前节点为提交节点则页面可编辑 // 判断撤回后当前的节点,如果当前节点为提交节点则页面可编辑
jsonObject.put("pageType",this.getPageTypeByCurrentNode(jgChangeRegistrationName.getAuditStatus())); jsonObject.put("pageType", this.getPageTypeByCurrentNode(jgChangeRegistrationName.getAuditStatus()));
commonService.rollbackTask(instanceId, jsonObject); commonService.rollbackTask(instanceId, jsonObject);
} }
private String getPageTypeByCurrentNode(String auditStatus) { private String getPageTypeByCurrentNode(String auditStatus) {
if(WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getPass().equals(auditStatus) || if (WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getPass().equals(auditStatus) ||
WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getReject().equals(auditStatus) || WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getReject().equals(auditStatus) ||
WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getRollBack().equals(auditStatus) WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getRollBack().equals(auditStatus)
){ ) {
// urlInfo.json 文件的 pageType // urlInfo.json 文件的 pageType
return "edit"; return "edit";
} else { } else {
...@@ -497,45 +487,42 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg ...@@ -497,45 +487,42 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg
public void flowExecute(Long id, String instanceId, String operate, String comment) { public void flowExecute(Long id, String instanceId, String operate, String comment) {
try {
JgChangeRegistrationName jgChangeRegistrationName = this.getBaseMapper().selectById(id); JgChangeRegistrationName jgChangeRegistrationName = this.getBaseMapper().selectById(id);
String taskId = jgChangeRegistrationName.getNextTaskId(); String taskId = jgChangeRegistrationName.getNextTaskId();
//组装信息 //组装信息
TaskResultDTO dto = new TaskResultDTO(); TaskResultDTO dto = new TaskResultDTO();
dto.setResultCode("approvalStatus"); dto.setResultCode("approvalStatus");
dto.setTaskId(taskId); dto.setTaskId(taskId);
dto.setComment(comment); dto.setComment(comment);
dto.setNextExecuteUserCompanyCode(this.getNextUserOrgCode(operate,jgChangeRegistrationName)); dto.setNextExecuteUserCompanyCode(this.getNextUserOrgCode(operate, jgChangeRegistrationName));
HashMap<String, Object> map = new HashMap<>(); HashMap<String, Object> map = new HashMap<>();
map.put("approvalStatus", operate); map.put("approvalStatus", operate);
if (!ObjectUtils.isEmpty(jgChangeRegistrationName.getInstanceStatus()) && if (!ObjectUtils.isEmpty(jgChangeRegistrationName.getInstanceStatus()) &&
(jgChangeRegistrationName.getAuditStatus().equals(WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getReject()) || (jgChangeRegistrationName.getAuditStatus().equals(WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getReject()) ||
jgChangeRegistrationName.getAuditStatus().equals(WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getRollBack()))) { jgChangeRegistrationName.getAuditStatus().equals(WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getRollBack()))) {
map.put("approvalStatus", "提交"); map.put("approvalStatus", "提交");
}
dto.setVariable(map);
//执行流程
ProcessTaskDTO processTaskDTO = cmWorkflowService.complete(taskId, dto);
// 更新下一步执行人、创建待办
updateExecuteIds(instanceId, id, operate, processTaskDTO);
} catch (Exception e) {
e.printStackTrace();
} }
dto.setVariable(map);
//执行流程
ProcessTaskDTO processTaskDTO = cmWorkflowService.complete(taskId, dto);
// 更新下一步执行人、创建待办
updateExecuteIds(instanceId, id, operate, processTaskDTO);
} }
private String getNextUserOrgCode(String operate, JgChangeRegistrationName jgChangeRegistrationName) { private String getNextUserOrgCode(String operate, JgChangeRegistrationName jgChangeRegistrationName) {
if("0".equals(operate)){ if ("0".equals(operate)) {
// 执行通过节点,单位code为接收机构单位信息 // 执行通过节点,单位code为接收机构单位信息
return jgChangeRegistrationName.getReceiveOrgCode(); return jgChangeRegistrationName.getReceiveOrgCode();
} }
if(jgChangeRegistrationName.getAuditStatus().equals(WorkFlowStatusEnum.UNIT_RENAME_RECEIVE.getPass()) if (jgChangeRegistrationName.getAuditStatus().equals(WorkFlowStatusEnum.UNIT_RENAME_RECEIVE.getPass())
|| jgChangeRegistrationName.getAuditStatus().equals(WorkFlowStatusEnum.UNIT_RENAME_RECEIVE.getReject()) || jgChangeRegistrationName.getAuditStatus().equals(WorkFlowStatusEnum.UNIT_RENAME_RECEIVE.getReject())
|| jgChangeRegistrationName.getAuditStatus().equals(WorkFlowStatusEnum.UNIT_RENAME_RECEIVE.getRollBack())){ || jgChangeRegistrationName.getAuditStatus().equals(WorkFlowStatusEnum.UNIT_RENAME_RECEIVE.getRollBack())) {
// 驳回且当前节点为一键节点时,单位code为发起人单位信息 // 驳回且当前节点为一键节点时,单位code为发起人单位信息
return jgChangeRegistrationName.getUseUnitCreditCode(); return jgChangeRegistrationName.getUseUnitCreditCode();
} }
// 2、3级驳回时,单位code为接收单位code // 2、3级驳回时,单位code为接收单位code
return jgChangeRegistrationName.getReceiveOrgCode(); return jgChangeRegistrationName.getReceiveOrgCode();
} }
public void updateExecuteIds(String instanceId, Long sequenceNbr, String operate, ProcessTaskDTO processTaskDTO) { public void updateExecuteIds(String instanceId, Long sequenceNbr, String operate, ProcessTaskDTO processTaskDTO) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment