feat(企标稽查计划): 完善流程
This commit is contained in:
+1
@@ -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;
|
||||
|
||||
+13
-5
@@ -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";
|
||||
}
|
||||
|
||||
-13
@@ -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<T> flowRefusal(@RequestBody FlowRefusalVO flowRefusalVO) {
|
||||
esInspectPlanFlowService.flowRefusal(flowRefusalVO);
|
||||
return Result.OK(MessageUtils.getMessage(ResultCommon.OK));
|
||||
}
|
||||
}
|
||||
|
||||
-8
@@ -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);
|
||||
}
|
||||
|
||||
+17
-46
@@ -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<ProcessApprovalRecord>()
|
||||
.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<String, Object> listToString(Map<String, Object> 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<String, Object> map = esInspectPlanFlowVO.getMap();
|
||||
|
||||
// 更新流程审批信息
|
||||
processApprovalRecordService.update(processApprovalRecord,
|
||||
processApprovalRecordService.update(
|
||||
new LambdaUpdateWrapper<ProcessApprovalRecord>()
|
||||
.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<ProcessApprovalRecord>()
|
||||
.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<ProcessNode> 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<ProcessApprovalRecord>()
|
||||
.eq(ProcessApprovalRecord::getTaskId, taskId)
|
||||
.set(ProcessApprovalRecord::getUserId, loginUser.getId()));
|
||||
// 驳回
|
||||
actFlowCommonService.completeTask(taskId, loginUser.getId());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user