From 3d02e4b0dba6ce26b7da2308a01ffdce53b09759 Mon Sep 17 00:00:00 2001 From: caihaohan Date: Fri, 10 Nov 2023 11:47:35 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=BC=81=E6=A0=87=E5=A4=8D=E5=AE=A1?= =?UTF-8?q?=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../esChange/entity/vo/ESChangeDataVO.java | 1 - .../controller/ESRecheckController.java | 32 ++++----- .../esRecheck/entity/vo/ESRecheckDataVO.java | 3 +- .../entity/vo/ESRecheckFlowUserVO.java | 33 --------- .../service/ProcessEsRecheckService.java | 2 +- .../impl/ProcessEsRecheckServiceImpl.java | 68 +++++-------------- 6 files changed, 35 insertions(+), 104 deletions(-) delete mode 100644 laws-modules/src/main/java/com/jero/modules/activiti/process/esRecheck/entity/vo/ESRecheckFlowUserVO.java diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/entity/vo/ESChangeDataVO.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/entity/vo/ESChangeDataVO.java index 7de92462..c307abca 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/entity/vo/ESChangeDataVO.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/entity/vo/ESChangeDataVO.java @@ -3,7 +3,6 @@ package com.jero.modules.activiti.process.esChange.entity.vo; import com.fasterxml.jackson.annotation.JsonProperty; import com.jero.modules.activiti.process.common.entity.CommonVO; import com.jero.modules.activiti.process.esChange.entity.ProcessEsChange; -import com.jero.modules.activiti.process.esRecheck.entity.vo.ESRecheckFlowUserVO; import lombok.Data; import java.util.Map; diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esRecheck/controller/ESRecheckController.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esRecheck/controller/ESRecheckController.java index 45b30f98..87ffd657 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esRecheck/controller/ESRecheckController.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esRecheck/controller/ESRecheckController.java @@ -21,7 +21,7 @@ import javax.annotation.Resource; */ @Slf4j @RestController -@Api(tags = "企标复审发起流程") +@Api(tags = "企标复审流程") @RequestMapping("/process/es/recheck") public class ESRecheckController { @@ -32,12 +32,12 @@ public class ESRecheckController { private ActFlowCommonService actFlowCommonService; /** - * 新增立项变更申请 + * 企标复审申请 * * @param recheckData */ - @AutoLog(value = "企标复审发起流程-发起流程") - @ApiOperation(value="企标复审发起流程-发起流程", notes="企标复审发起流程-发起流程") + @AutoLog(value = "企标复审流程-发起流程") + @ApiOperation(value="企标复审流程-发起流程", notes="企标复审流程-发起流程") @PostMapping("/start") public Result startProcess(@RequestBody ESRecheckDataVO recheckData) { recheckService.startProcess(recheckData); @@ -48,8 +48,8 @@ public class ESRecheckController { * 保存到待办 * @param recheckData */ - @AutoLog(value = "企标复审发起流程-保存") - @ApiOperation(value="企标复审发起流程-保存", notes="企标复审发起流程-保存") + @AutoLog(value = "企标复审流程-保存") + @ApiOperation(value="企标复审流程-保存", notes="企标复审流程-保存") @PostMapping("/save") public Result save(@RequestBody ESRecheckDataVO recheckData) { recheckService.saveToDraft(recheckData); @@ -60,8 +60,8 @@ public class ESRecheckController { * 保存到待办 * @param taskId */ - @AutoLog(value = "企标复审发起流程-办理") - @ApiOperation(value="企标复审发起流程-办理", notes="企标复审发起流程-办理") + @AutoLog(value = "企标复审流程-办理") + @ApiOperation(value="企标复审流程-办理", notes="企标复审流程-办理") @GetMapping("/handle/{taskId}") @Translation public Result handle(@PathVariable("taskId") String taskId) { @@ -73,11 +73,11 @@ public class ESRecheckController { * * @param recheckData */ - @AutoLog(value = "企标复审发起流程-同意") - @ApiOperation(value="企标复审发起流程-同意", notes="企标复审发起流程-同意") + @AutoLog(value = "企标复审流程-同意") + @ApiOperation(value="企标复审流程-同意", notes="企标复审流程-同意") @PostMapping("/agree") public Result agree(@RequestBody ESRecheckDataVO recheckData) { - recheckService.approvalInitChange(recheckData, true); + recheckService.approval(recheckData, true); return Result.OK(); } @@ -86,11 +86,11 @@ public class ESRecheckController { * * @param recheckData */ - @AutoLog(value = "企标复审发起流程-驳回") - @ApiOperation(value="企标复审发起流程-驳回", notes="企标复审发起流程-驳回") + @AutoLog(value = "企标复审流程-驳回") + @ApiOperation(value="企标复审流程-驳回", notes="企标复审流程-驳回") @PostMapping("/reject") public Result reject(@RequestBody ESRecheckDataVO recheckData) { - recheckService.approvalInitChange(recheckData, false); + recheckService.approval(recheckData, false); return Result.OK(); } @@ -98,8 +98,8 @@ public class ESRecheckController { * 转办 * */ - @AutoLog(value = "企标复审发起流程-转办") - @ApiOperation(value="企标复审发起流程-转办", notes="企标复审发起流程-转办") + @AutoLog(value = "企标复审流程-转办") + @ApiOperation(value="企标复审流程-转办", notes="企标复审流程-转办") @PostMapping(value = "/transfer") public Result transfer(@RequestBody TransferVO transferVO) { actFlowCommonService.transfer(transferVO.getTaskId(), transferVO.getUserId()); diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esRecheck/entity/vo/ESRecheckDataVO.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esRecheck/entity/vo/ESRecheckDataVO.java index 60b09ddd..72667d07 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esRecheck/entity/vo/ESRecheckDataVO.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esRecheck/entity/vo/ESRecheckDataVO.java @@ -7,6 +7,7 @@ import com.jero.modules.activiti.process.esRecheck.entity.ProcessEsRecheck; import lombok.Data; import java.util.List; +import java.util.Map; /** * @author: Mzaxd @@ -22,5 +23,5 @@ public class ESRecheckDataVO { ProcessEsRecheck data; @JsonProperty("flowUser") - ESRecheckFlowUserVO flowUser; + Map flowUser; } diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esRecheck/entity/vo/ESRecheckFlowUserVO.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esRecheck/entity/vo/ESRecheckFlowUserVO.java deleted file mode 100644 index c199afb4..00000000 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esRecheck/entity/vo/ESRecheckFlowUserVO.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.jero.modules.activiti.process.esRecheck.entity.vo; - -import com.jero.common.aspect.annotation.Dict; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -/** - * @author: Mzaxd - * @Date: 2023/10/9 16:57 - */ -@Data -public class ESRecheckFlowUserVO { - - @Dict(dictTable = "sys_user", dicCode = "id", dicText = "realname") - @ApiModelProperty("主起草人") - private String mainDraftUser; - - // 主起草人主管级领导 - @Dict(dictTable = "sys_user", dicCode = "id", dicText = "realname") - @ApiModelProperty("主起草人主管级领导") - private String mainDraftUserLeader; - - // 标准化审批人 - @Dict(dictTable = "sys_user", dicCode = "id", dicText = "realname") - @ApiModelProperty("标准化审批人") - private String standardizationUser; - - // 主起草人主管级领导上级领导 - @Dict(dictTable = "sys_user", dicCode = "id", dicText = "realname") - @ApiModelProperty("主起草人主管级领导上级领导") - private String mainDraftUserLeaderLeader; - -} diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esRecheck/service/ProcessEsRecheckService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esRecheck/service/ProcessEsRecheckService.java index 4d5fcf2b..d0519f26 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esRecheck/service/ProcessEsRecheckService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esRecheck/service/ProcessEsRecheckService.java @@ -17,5 +17,5 @@ public interface ProcessEsRecheckService extends IService { ESRecheckDataVO getHandleData(String taskId); - void approvalInitChange(ESRecheckDataVO recheckData, boolean pass); + void approval(ESRecheckDataVO recheckData, boolean pass); } diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esRecheck/service/impl/ProcessEsRecheckServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esRecheck/service/impl/ProcessEsRecheckServiceImpl.java index b117c9d6..0c017631 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esRecheck/service/impl/ProcessEsRecheckServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esRecheck/service/impl/ProcessEsRecheckServiceImpl.java @@ -7,7 +7,6 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.jero.common.constant.enums.YesOrNoEnum; import com.jero.common.exception.JeroBootException; import com.jero.modules.activiti.entity.ProcessAll; -import com.jero.modules.activiti.entity.ProcessNode; import com.jero.modules.activiti.enums.ProcessTypeEnum; import com.jero.modules.activiti.process.common.entity.CommonVO; import com.jero.modules.activiti.process.common.entity.ProcessDraft; @@ -17,12 +16,10 @@ import com.jero.modules.activiti.process.common.service.ProcessDraftService; import com.jero.modules.activiti.process.esRecheck.entity.ProcessEsRecheck; import com.jero.modules.activiti.process.esRecheck.entity.vo.ESRecheckDataVO; -import com.jero.modules.activiti.process.esRecheck.entity.vo.ESRecheckFlowUserVO; import com.jero.modules.activiti.process.esRecheck.service.ProcessEsRecheckService; import com.jero.modules.activiti.process.esRecheck.mapper.ProcessEsRecheckMapper; import com.jero.modules.activiti.service.ProcessAllService; import com.jero.modules.activiti.service.ProcessNodeLinkService; -import com.jero.modules.activiti.service.ProcessNodeService; import com.jero.modules.sys.utils.UserUtils; import lombok.extern.slf4j.Slf4j; import org.activiti.engine.RuntimeService; @@ -32,7 +29,6 @@ import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.util.*; -import java.util.stream.Collectors; /** * @author ThinkBook @@ -57,9 +53,6 @@ public class ProcessEsRecheckServiceImpl extends ServiceImpl variables = recheckData.getFlowUser(); // 设置流程变量 - Map variables = this.setVariables(flowUser); + Map actVariables = this.setVariables(variables); // 启动流程 - ProcessInstance processInstance = actFlowCommonService.startProcess(processDefinitionKey, variables); + ProcessInstance processInstance = actFlowCommonService.startProcess(processDefinitionKey, actVariables); // 获取流程实例ID String processDefinitionId = processInstance.getProcessDefinitionId(); String processInstanceId = processInstance.getId(); // 手动设置所有流程变量 - actFlowCommonService.setProcessVariables(processInstanceId, variables); + actFlowCommonService.setProcessVariables(processInstanceId, actVariables); // 自动完成第一个任务 actFlowCommonService.autoCompleteFirstTask(userId, processInstanceId, processDefinitionId, common); // 设置流程实例Id @@ -102,17 +95,13 @@ public class ProcessEsRecheckServiceImpl extends ServiceImpl setVariables(ESRecheckFlowUserVO flowUser) { - return new HashMap<>(this.setUserVariables(flowUser)); - } - - public Map setUserVariables(ESRecheckFlowUserVO flowUser) { - HashMap map = new HashMap<>(); - // 使用一个通用方法来只在不为空时添加键值对 - actFlowCommonService.putIfNotNull(map, "standardizationUser", flowUser.getStandardizationUser()); - actFlowCommonService.putIfNotNull(map, "mainDraftUser", flowUser.getMainDraftUser()); - actFlowCommonService.putIfNotNull(map, "mainDraftUserLeader", flowUser.getMainDraftUserLeader()); - return map; + public Map setVariables(Map flowUser) { + Map actVariables = new HashMap<>(); + for (Map.Entry entry : flowUser.entrySet()) { + String key = entry.getKey(); + actVariables.put(key, entry.getValue()); + } + return actVariables; } private Map getUserMap(Map variables) { @@ -181,48 +170,23 @@ public class ProcessEsRecheckServiceImpl extends ServiceImpl nodeList = processNodeService.getNodeList(processDefinitionId, processInstanceId); - ESRecheckFlowUserVO flowUser = new ESRecheckFlowUserVO(); - Map userMap = nodeList.stream().collect(Collectors.toMap(ProcessNode::getVariableName, node -> node)); - Optional.ofNullable(userMap.get("mainDraftUser")).ifPresent(node -> flowUser.setMainDraftUser(node.getLinkUserIds())); - Optional.ofNullable(userMap.get("mainDraftUserLeader")).ifPresent(node -> flowUser.setMainDraftUserLeader(node.getLinkUserIds())); - Optional.ofNullable(userMap.get("standardizationUser")).ifPresent(node -> flowUser.setStandardizationUser(node.getLinkUserIds())); - return flowUser; - } - @Override - public void approvalInitChange(ESRecheckDataVO recheckData, boolean pass) { + public void approval(ESRecheckDataVO recheckData, boolean pass) { String userId = UserUtils.getUserId(); CommonVO commonVO = recheckData.getCommon(); - ProcessEsRecheck data = recheckData.getData(); String taskId = commonVO.getTaskId(); if (StrUtil.isBlank(taskId) && !actFlowCommonService.taskExists(taskId)) { throw new JeroBootException("taskId为空或任务不存在"); } String processInstanceId = actFlowCommonService.getProcessInstanceIdByTaskId(taskId); - String processDefinitionId = actFlowCommonService.getProcessDefId(processInstanceId); - if (pass) { - if (data != null) { - saveOrUpdate(data); - ESRecheckFlowUserVO flowUserInfoVO = recheckData.getFlowUser(); - Map variables = this.setVariables(flowUserInfoVO); - processNodeLinkService.saveNodeUserLink(processDefinitionId, processInstanceId, this.getUserMap(variables)); - actFlowCommonService.setProcessVariables(processInstanceId, variables); - } - runtimeService.setVariable(processInstanceId, "pass", true); - } else { - // 设置流程变量 - runtimeService.setVariable(processInstanceId, "pass", false); - } + // 设置流程变量 + runtimeService.setVariable(processInstanceId, "pass", pass); // 更新审批表为完成,填充数据 actFlowCommonService.updateApprovalInfo(commonVO, taskId, pass); - //审批节点 + // 审批节点 actFlowCommonService.completeTask(taskId, userId); } }