fix: 5个流程驳回后再次提交报错

This commit is contained in:
2023-10-30 18:21:24 +08:00
parent b9895c9e69
commit 0d74855ae2
2 changed files with 13 additions and 10 deletions
@@ -207,6 +207,7 @@ public class ProcessEsAbolishServiceImpl extends ServiceImpl<ProcessEsAbolishMap
public void approvalInitChange(ESAbolishDataVO abolishData, boolean pass) {
String userId = UserUtils.getUserId();
CommonVO commonVO = abolishData.getCommon();
ProcessEsAbolish data = abolishData.getData();
String taskId = commonVO.getTaskId();
if (StrUtil.isBlank(taskId) && !actFlowCommonService.taskExists(taskId)) {
throw new JeroBootException("taskId为空或任务不存在");
@@ -214,11 +215,11 @@ public class ProcessEsAbolishServiceImpl extends ServiceImpl<ProcessEsAbolishMap
String processInstanceId = actFlowCommonService.getProcessInstanceIdByTaskId(taskId);
String processDefinitionId = actFlowCommonService.getProcessDefId(processInstanceId);
if (pass) {
ESAbolishFlowUserVO flowUserInfoVO = abolishData.getFlowUser();
if (flowUserInfoVO != null) {
Map<String, Object> userMap = new HashMap<>(this.setUserVariables(flowUserInfoVO));
processNodeLinkService.saveNodeUserLink(processDefinitionId, processInstanceId, userMap);
Map<String, Object> variables = setUserVariables(flowUserInfoVO);
if (data != null) {
saveOrUpdate(data);
ESAbolishFlowUserVO flowUserInfoVO = abolishData.getFlowUser();
Map<String, Object> variables = this.setVariables(flowUserInfoVO);
processNodeLinkService.saveNodeUserLink(processDefinitionId, processInstanceId, this.getUserMap(variables));
actFlowCommonService.setProcessVariables(processInstanceId, variables);
}
runtimeService.setVariable(processInstanceId, "pass", true);
@@ -14,6 +14,7 @@ import com.jero.modules.activiti.process.common.entity.ProcessDraft;
import com.jero.modules.activiti.process.common.enums.ProcessType;
import com.jero.modules.activiti.process.common.service.ActFlowCommonService;
import com.jero.modules.activiti.process.common.service.ProcessDraftService;
import com.jero.modules.activiti.process.esAbolish.entity.vo.ESAbolishFlowUserVO;
import com.jero.modules.activiti.process.esArchive.entity.ProcessEsArchive;
import com.jero.modules.activiti.process.esArchive.entity.vo.ESArchiveDataVO;
import com.jero.modules.activiti.process.esArchive.entity.vo.ESArchiveFlowUserVO;
@@ -207,6 +208,7 @@ public class ProcessEsArchiveServiceImpl extends ServiceImpl<ProcessEsArchiveMap
public void approvalInitChange(ESArchiveDataVO archiveData, boolean pass) {
String userId = UserUtils.getUserId();
CommonVO commonVO = archiveData.getCommon();
ProcessEsArchive data = archiveData.getData();
String taskId = commonVO.getTaskId();
if (StrUtil.isBlank(taskId) && !actFlowCommonService.taskExists(taskId)) {
throw new JeroBootException("taskId为空或任务不存在");
@@ -214,11 +216,11 @@ public class ProcessEsArchiveServiceImpl extends ServiceImpl<ProcessEsArchiveMap
String processInstanceId = actFlowCommonService.getProcessInstanceIdByTaskId(taskId);
String processDefinitionId = actFlowCommonService.getProcessDefId(processInstanceId);
if (pass) {
ESArchiveFlowUserVO flowUserInfoVO = archiveData.getFlowUser();
if (flowUserInfoVO != null) {
Map<String, Object> userMap = new HashMap<>(this.setUserVariables(flowUserInfoVO));
processNodeLinkService.saveNodeUserLink(processDefinitionId, processInstanceId, userMap);
Map<String, Object> variables = setUserVariables(flowUserInfoVO);
if (data != null) {
saveOrUpdate(data);
ESArchiveFlowUserVO flowUserInfoVO = archiveData.getFlowUser();
Map<String, Object> variables = this.setVariables(flowUserInfoVO);
processNodeLinkService.saveNodeUserLink(processDefinitionId, processInstanceId, this.getUserMap(variables));
actFlowCommonService.setProcessVariables(processInstanceId, variables);
}
runtimeService.setVariable(processInstanceId, "pass", true);