From 0dff85a422669f41ef6d8e88fa24bf26ca164cbd Mon Sep 17 00:00:00 2001 From: jinlin <jinlin> Date: 星期二, 12 十二月 2023 10:38:03 +0800 Subject: [PATCH] 修改 --- zt/core/src/main/java/com/zt/modules/workflow/service/WorkflowService.java | 51 ++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 42 insertions(+), 9 deletions(-) diff --git a/zt/core/src/main/java/com/zt/modules/workflow/service/WorkflowService.java b/zt/core/src/main/java/com/zt/modules/workflow/service/WorkflowService.java index 8780f22..6b570d6 100644 --- a/zt/core/src/main/java/com/zt/modules/workflow/service/WorkflowService.java +++ b/zt/core/src/main/java/com/zt/modules/workflow/service/WorkflowService.java @@ -5,6 +5,9 @@ package com.zt.modules.workflow.service; import cn.hutool.core.convert.Convert; +import com.zt.common.entity.BaseEntity; +import com.zt.common.entity.BusiEntity; +import com.zt.common.entity.FlowInfo; import com.zt.common.service.BaseService; import com.zt.common.utils.UUIDUtil; import com.zt.core.context.UserContext; @@ -27,6 +30,7 @@ import org.springframework.transaction.annotation.Transactional; import java.util.*; +import java.util.stream.Collectors; /** * 宸ヤ綔娴佹湇鍔� @@ -246,7 +250,6 @@ // 宸茬稉瀛樺湪瑭叉椹熶簡锛屼笉鐢ㄧ辜绾� return; } - WfDefStep currentStep = workflowConfigService.get(currentStepId); WfDefStep finallyStep = this.queryWfDefFinallyStep(currentStep.getWfDefId().toString()); @@ -356,15 +359,17 @@ throw new RuntimeException("娌℃湁绗﹀悎(" + wfDef.getName() + ")娴佺▼鐨勪笅涓�姝�(" + currentStep.getName() + ")鎵ц浜猴紒"); } - String updateSql = currentStep.getUpdateSql(); - if (org.apache.commons.lang3.StringUtils.isNotBlank(updateSql)) { - updateSql = updateSql.replace("${bizId}", bizId.toString()); - updateSql = updateSql.replace("${bizId}", bizId.toString()); - updateSql = updateSql.replace("${nickName}", UserContext.getUser().getRealName()); - updateSql = updateSql.replace("${userId}", UserContext.getUser().getId().toString()); - baseDao.exeSql(updateSql); + WfDefStep prevStep = workflowConfigService.get(prevStepId); + if (prevStep!=null) { + String updateSql = prevStep.getUpdateSql(); + if (org.apache.commons.lang3.StringUtils.isNotBlank(updateSql)) { + updateSql = updateSql.replace("${bizId}", bizId.toString()); + updateSql = updateSql.replace("${bizId}", bizId.toString()); + updateSql = updateSql.replace("${nickName}", UserContext.getUser().getRealName()); + updateSql = updateSql.replace("${userId}", UserContext.getUser().getId().toString()); + baseDao.exeSql(updateSql); + } } - } else { taskParamDto.setUser(null); taskParamDto.setGroupId2(null); @@ -380,6 +385,18 @@ updateSql = updateSql.replace("${nickName}", UserContext.getUser().getRealName()); updateSql = updateSql.replace("${userId}", UserContext.getUser().getId().toString()); baseDao.exeSql(updateSql); + } + + WfDefStep prevStep = workflowConfigService.get(prevStepId); + if (prevStep!=null) { + updateSql = prevStep.getUpdateSql(); + if (org.apache.commons.lang3.StringUtils.isNotBlank(updateSql)) { + updateSql = updateSql.replace("${bizId}", bizId.toString()); + updateSql = updateSql.replace("${bizId}", bizId.toString()); + updateSql = updateSql.replace("${nickName}", UserContext.getUser().getRealName()); + updateSql = updateSql.replace("${userId}", UserContext.getUser().getId().toString()); + baseDao.exeSql(updateSql); + } } if (!StringUtils.isBlank(currentStep.getNextFlows())) { @@ -1008,4 +1025,20 @@ public void deleteFlowStep(String wfIdCode, String stepIdMark, Long bizId){ baseDao.deleteFlowStep(wfIdCode,stepIdMark,bizId); } + + public void getRunFlow(List<? extends BusiEntity> dataList, String flowCode) { + List<Long> ids = dataList.stream().map(f -> f.getId()).collect(Collectors.toList()); + Map<String, Object> params = new HashMap<String, Object>(); + params.put("bizIds", ids); + params.put("flowCode", flowCode); + List<FlowInfo> list = baseDao.getRunFlow(params); + for (BaseEntity item : dataList) { + List<FlowInfo> list2 = list.stream().filter(item2->item2.getBizId().equals(item.getId())).collect(Collectors.toList()); + if (list2.size()>0) { + item.setFlowInfo(list2.get(0)); + }else{ + item.setFlowInfo(new FlowInfo()); + } + } + } } -- Gitblit v1.9.1