diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/common/enums/ProcessType.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/common/enums/ProcessType.java index 502313b6..dd6920db 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/common/enums/ProcessType.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/common/enums/ProcessType.java @@ -20,6 +20,7 @@ public enum ProcessType { ES_CHANGE("企标变更流程", "7", "es-change", "ProcessEsChangeServiceImpl"), ES_RECHECK("企标复审流程", "8", "es-recheck", "ProcessEsRecheckServiceImpl"), ES_ENABLE("已封存企标启用流程", "9", "es-enable", "ProcessEsEnableServiceImpl"), + ES_INSPECT_PLAN("企标稽查计划", "16", "es-inspect_plan", "ProcessEsInspectPlanServiceImpl"), ; private final String name; diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/common/EsInspectPlanCommon.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/common/EsInspectPlanCommon.java index 153abc41..26716019 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/common/EsInspectPlanCommon.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/common/EsInspectPlanCommon.java @@ -15,7 +15,7 @@ public class EsInspectPlanCommon { /** * 企标稽查计划key */ - public static final String KEY = "Process_1dgrvyk"; + public static final String KEY = "inspect_plan"; /** * 企标稽查计划key @@ -23,12 +23,20 @@ public class EsInspectPlanCommon { public static final String NAME = "企业稽查计划"; /** - * 网关判断 + * 企业稽查计划流程开始节点 */ - public static final String PASS = "pass"; + public static final String PROCESS_NODE_START = "稽查联络人发起计划"; + /** + * 企业稽查计划流程结束节点 + */ + public static final String PROCESS_NODE_END = "联络人主管级领导批准"; /** - * 会签 + *审批意见 1:通过 2:驳回 */ - public static final String INVOLVE_LIST = "involveList"; + public static final String PROCESS_COMMIT_FLAG_1 = "1"; + /** + *审批意见 1:通过 2:驳回 + */ + public static final String PROCESS_COMMIT_FLAG_2 = "2"; } diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/controller/EsInspectPlanFlowController.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/controller/EsInspectPlanFlowController.java index 812aebb6..a2b6c11b 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/controller/EsInspectPlanFlowController.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/controller/EsInspectPlanFlowController.java @@ -9,7 +9,6 @@ import com.jero.common.util.SnowflakeUtils; import com.jero.modules.activiti.entity.ProcessNode; import com.jero.modules.activiti.process.esinspectplan.service.IEsInspectPlanFlowService; import com.jero.modules.activiti.process.esinspectplan.vo.EsInspectPlanFlowVO; -import com.jero.modules.activiti.process.esinspectplan.vo.FlowRefusalVO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; @@ -110,16 +109,4 @@ public class EsInspectPlanFlowController { esInspectPlanFlowService.flowTransfer(taskId, userId); return Result.OK(MessageUtils.getMessage(ResultCommon.OK)); } - - /** - * 企标稽查计划流程-流程驳回 - * @return 结果对象 - */ - @AutoLog(value = "企标稽查计划流程-流程驳回") - @ApiOperation(value="企标稽查计划流程-流程驳回", notes="企标稽查计划流程-流程驳回") - @PostMapping(value = "/flowRefusal") - public Result flowRefusal(@RequestBody FlowRefusalVO flowRefusalVO) { - esInspectPlanFlowService.flowRefusal(flowRefusalVO); - return Result.OK(MessageUtils.getMessage(ResultCommon.OK)); - } } diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/IEsInspectPlanFlowService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/IEsInspectPlanFlowService.java index a2dcd9c6..d9c8f66d 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/IEsInspectPlanFlowService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/IEsInspectPlanFlowService.java @@ -2,7 +2,6 @@ package com.jero.modules.activiti.process.esinspectplan.service; import com.jero.modules.activiti.entity.ProcessNode; import com.jero.modules.activiti.process.esinspectplan.vo.EsInspectPlanFlowVO; -import com.jero.modules.activiti.process.esinspectplan.vo.FlowRefusalVO; import java.util.List; @@ -46,11 +45,4 @@ public interface IEsInspectPlanFlowService { * @param userId */ void flowTransfer(String taskId, String userId); - - /** - * 企标稽查计划流程-流程驳回 - * - * @param flowRefusalVO - */ - void flowRefusal(FlowRefusalVO flowRefusalVO); } diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/EsInspectPlanFlowServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/EsInspectPlanFlowServiceImpl.java index b6658289..89acfde0 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/EsInspectPlanFlowServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/EsInspectPlanFlowServiceImpl.java @@ -11,13 +11,11 @@ import com.jero.modules.activiti.entity.ProcessApprovalRecord; import com.jero.modules.activiti.entity.ProcessNode; import com.jero.modules.activiti.entity.ProcessNodeLink; import com.jero.modules.activiti.enums.FinishFlagEnum; -import com.jero.modules.activiti.process.common.service.ActFlowCommonService; import com.jero.modules.activiti.process.esinspectplan.common.EsInspectPlanCommon; import com.jero.modules.activiti.process.esinspectplan.entity.ProcessEsInspectPlan; import com.jero.modules.activiti.process.esinspectplan.service.IEsInspectPlanFlowService; import com.jero.modules.activiti.process.esinspectplan.service.IProcessEsInspectPlanService; import com.jero.modules.activiti.process.esinspectplan.vo.EsInspectPlanFlowVO; -import com.jero.modules.activiti.process.esinspectplan.vo.FlowRefusalVO; import com.jero.modules.activiti.service.ProcessAllService; import com.jero.modules.activiti.service.ProcessApprovalRecordService; import com.jero.modules.activiti.service.ProcessNodeLinkService; @@ -31,6 +29,7 @@ import org.activiti.engine.repository.ProcessDefinition; import org.activiti.engine.runtime.ProcessInstance; import org.activiti.engine.task.Task; import org.apache.shiro.SecurityUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -51,41 +50,36 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService { private final ProcessAllService processAllService; private final ProcessApprovalRecordService processApprovalRecordService; private final IProcessEsInspectPlanService processEsInspectPlanService; - private final TaskService taskService; private final RepositoryService repositoryService; private final ISysUserService sysUserService; private final ProcessNodeService processNodeService; private final ProcessNodeLinkService processNodeLinkService; - private final ActFlowCommonService actFlowCommonService; private final SendMessageAPI sendMessageAPI; public EsInspectPlanFlowServiceImpl(ProcessAllService processAllService, ProcessApprovalRecordService processApprovalRecordService, IProcessEsInspectPlanService processEsInspectPlanService, - TaskService taskService, RepositoryService repositoryService, ISysUserService sysUserService, ProcessNodeService processNodeService, ProcessNodeLinkService processNodeLinkService, - ActFlowCommonService actFlowCommonService, SendMessageAPI sendMessageAPI) { this.processAllService = processAllService; this.processApprovalRecordService = processApprovalRecordService; this.processEsInspectPlanService = processEsInspectPlanService; - this.taskService = taskService; this.repositoryService = repositoryService; this.sysUserService = sysUserService; this.processNodeService = processNodeService; this.processNodeLinkService = processNodeLinkService; - this.actFlowCommonService = actFlowCommonService; this.sendMessageAPI = sendMessageAPI; } - // ProcessEngine ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine(); - // RunTimeService RuntimeService runtimeService = processEngine.getRuntimeService(); + @Autowired + private TaskService taskService; + @Override public void flowStart(EsInspectPlanFlowVO esInspectPlanFlowVO) { // 流程信息 @@ -123,15 +117,13 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService { processApprovalRecord.setUserId(loginUser.getId()); processApprovalRecordService.update(processApprovalRecord, new LambdaUpdateWrapper() - .eq(ProcessApprovalRecord::getProcessInstanceId, processInstance.getId())); + .eq(ProcessApprovalRecord::getTaskId, task.getId())); // 新增流程实例节点关联用户表 processNodeLinkService.saveNodeUserLink(processInstance.getProcessDefinitionId(), processInstance.getId(), listToString(map)); // 自动完成第一个节点 - if (task != null) { - taskService.complete(task.getId()); - } + taskService.complete(task.getId()); } private Map listToString(Map map) { @@ -207,6 +199,7 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService { @Override public void flowApproval(EsInspectPlanFlowVO esInspectPlanFlowVO) { + LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); // 流程信息 ProcessAll processAll = esInspectPlanFlowVO.getProcessAll(); // 流程审批信息 @@ -215,26 +208,22 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService { Map map = esInspectPlanFlowVO.getMap(); // 更新流程审批信息 - processApprovalRecordService.update(processApprovalRecord, + processApprovalRecordService.update( new LambdaUpdateWrapper() - .eq(ProcessApprovalRecord::getTaskId, processAll.getTaskId())); + .eq(ProcessApprovalRecord::getUserId, loginUser.getId()) + .eq(ProcessApprovalRecord::getTaskId, processAll.getTaskId()) + .set(StringUtils.isNotBlank(processApprovalRecord.getCommitText()), + ProcessApprovalRecord::getCommitText, processApprovalRecord.getCommitText()) + .set(ProcessApprovalRecord::getCommitFlag, processApprovalRecord.getCommitFlag()) + .set(ProcessApprovalRecord::getFinishFlag, FinishFlagEnum.COMPLETE.getValue())); Task task = taskService.createTaskQuery().taskId(processAll.getTaskId()).singleResult(); if (task!= null) { // 完成任务 taskService.complete(task.getId(), map); - - // 查询当前流程实例的任务数量 - long activeTaskCount = taskService.createTaskQuery() - .processInstanceId(processAll.getProcessInstanceId()) - .active() - .count(); - if (activeTaskCount == 0){ - // 任务结束 - processApprovalRecordService.update(new LambdaUpdateWrapper() - .eq(ProcessApprovalRecord::getProcessInstanceId, processAll.getProcessInstanceId()) - .set(ProcessApprovalRecord::getFinishFlag, FinishFlagEnum.COMPLETE.getValue())); - + // 任务结束 + if (EsInspectPlanCommon.PROCESS_NODE_END.equals(task.getName()) + && map.containsKey("pass") && (boolean) map.get("pass")){ // 抄送消息 通过hiwork 给稽查联络人抄送消息 List processNodeList = queryPersonInfo(EsInspectPlanCommon.NAME, processAll.getProcessInstanceId()); if (!processNodeList.isEmpty()){ @@ -266,22 +255,4 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService { // 转办 taskService.setAssignee(taskId, userId); } - - @Override - public void flowRefusal(FlowRefusalVO flowRefusalVO) { - LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); - - String taskId = flowRefusalVO.getTaskId(); - Task task = taskService.createTaskQuery() - .processInstanceId(taskId) - .singleResult(); - if (task != null){ - // 更新流程审批信息 - processApprovalRecordService.update(new LambdaUpdateWrapper() - .eq(ProcessApprovalRecord::getTaskId, taskId) - .set(ProcessApprovalRecord::getUserId, loginUser.getId())); - // 驳回 - actFlowCommonService.completeTask(taskId, loginUser.getId()); - } - } }