From 6dfc0f271bc74a2491cfca83283d2456f8522a7c Mon Sep 17 00:00:00 2001 From: caihaohan Date: Tue, 28 May 2024 15:41:00 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E8=87=AA=E5=8A=A8=E5=8F=91=E8=B5=B7?= =?UTF-8?q?=E7=9A=84=E4=BC=81=E6=A0=87=E5=88=B6=E4=BF=AE=E8=AE=A2=E6=B5=81?= =?UTF-8?q?=E7=A8=8B=E7=AC=AC=E4=B8=80=E4=B8=AA=E8=8A=82=E7=82=B9=E5=90=8C?= =?UTF-8?q?=E6=84=8F=E4=BB=A5=E5=90=8E=E6=9B=B4=E6=96=B0=E5=BC=BA=E5=88=B6?= =?UTF-8?q?=E6=92=A4=E5=9B=9E=E7=9A=84=E8=8D=89=E7=A8=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../entity/vo/ESRevisionDataVO.java | 2 ++ .../service/impl/EsRevisionServiceImpl.java | 28 ++++++++++++++++++- 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esRevision/entity/vo/ESRevisionDataVO.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esRevision/entity/vo/ESRevisionDataVO.java index f4371958..c89f9e95 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esRevision/entity/vo/ESRevisionDataVO.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esRevision/entity/vo/ESRevisionDataVO.java @@ -23,4 +23,6 @@ public class ESRevisionDataVO { @JsonProperty("flowUser") Map flowUser; + @JsonProperty("infoJsonStr") + String infoJsonStr; } diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esRevision/service/impl/EsRevisionServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esRevision/service/impl/EsRevisionServiceImpl.java index 68221fe4..fe34b8d4 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esRevision/service/impl/EsRevisionServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esRevision/service/impl/EsRevisionServiceImpl.java @@ -17,10 +17,13 @@ import com.jero.modules.activiti.entity.ProcessApprovalRecord; import com.jero.modules.activiti.enums.CommitFlagEnum; import com.jero.modules.activiti.enums.FinishFlagEnum; import com.jero.modules.activiti.enums.ProcessTypeEnum; +import com.jero.modules.activiti.process.common.common.DraftCommon; import com.jero.modules.activiti.process.common.entity.CommonVO; import com.jero.modules.activiti.process.common.entity.CounterSignNodeNameConstants; +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.esInitChange.entity.enums.ESPProjectStatus; import com.jero.modules.activiti.process.esInitChange.entity.enums.ESPRevisionType; import com.jero.modules.activiti.process.esRevision.entity.*; @@ -113,6 +116,9 @@ public class EsRevisionServiceImpl extends ServiceImpl advices; ProcessEsRevision data; Map flowUser; - String contactUser = (String) runtimeService.getVariable(executionId, "contactUser"); // 更新审批表为完成,填充数据 actFlowCommonService.updateApprovalInfo(commonVO, taskId, pass); String curUserId; @@ -444,6 +449,8 @@ public class EsRevisionServiceImpl extends ServiceImpl actVariables = this.setVariables(revisionData); processNodeLinkService.saveNodeUserLink(processDefinitionId, processInstanceId, this.getUserMap(actVariables)); + // 替换草稿数据 + this.replaceAutoStartDraft(revisionData, processInstanceId); break; case OTHER_DRAFT_USER_UPLOAD: data = revisionData.getData(); @@ -678,6 +685,25 @@ public class EsRevisionServiceImpl extends ServiceImpl draftLambdaQueryWrapper = new LambdaQueryWrapper<>(); + draftLambdaQueryWrapper.eq(ProcessDraft::getProcessInstanceId, processInstanceId); + draftLambdaQueryWrapper.eq(ProcessDraft::getSaveSource, DraftCommon.INITIAL_SOURCE); + draftLambdaQueryWrapper.isNull(ProcessDraft::getTaskId); + ProcessDraft one = prcDraftService.getOne(draftLambdaQueryWrapper); + if (one == null) { + throw new JeroBootException("获取自动发起时创建的草稿失败,请联系管理员后重试"); + } + return one.getId(); + } + @Override public void transfer(String taskId, String toUserId) { processHandleService.transfer(taskId, toUserId);