feat(企标稽查计划): 完善流程
This commit is contained in:
+1
@@ -20,6 +20,7 @@ public enum ProcessType {
|
|||||||
ES_CHANGE("企标变更流程", "7", "es-change", "ProcessEsChangeServiceImpl"),
|
ES_CHANGE("企标变更流程", "7", "es-change", "ProcessEsChangeServiceImpl"),
|
||||||
ES_RECHECK("企标复审流程", "8", "es-recheck", "ProcessEsRecheckServiceImpl"),
|
ES_RECHECK("企标复审流程", "8", "es-recheck", "ProcessEsRecheckServiceImpl"),
|
||||||
ES_ENABLE("已封存企标启用流程", "9", "es-enable", "ProcessEsEnableServiceImpl"),
|
ES_ENABLE("已封存企标启用流程", "9", "es-enable", "ProcessEsEnableServiceImpl"),
|
||||||
|
ES_INSPECT_PLAN("企标稽查计划", "16", "es-inspect_plan", "ProcessEsInspectPlanServiceImpl"),
|
||||||
;
|
;
|
||||||
|
|
||||||
private final String name;
|
private final String name;
|
||||||
|
|||||||
+13
-5
@@ -15,7 +15,7 @@ public class EsInspectPlanCommon {
|
|||||||
/**
|
/**
|
||||||
* 企标稽查计划key
|
* 企标稽查计划key
|
||||||
*/
|
*/
|
||||||
public static final String KEY = "Process_1dgrvyk";
|
public static final String KEY = "inspect_plan";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 企标稽查计划key
|
* 企标稽查计划key
|
||||||
@@ -23,12 +23,20 @@ public class EsInspectPlanCommon {
|
|||||||
public static final String NAME = "企业稽查计划";
|
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.entity.ProcessNode;
|
||||||
import com.jero.modules.activiti.process.esinspectplan.service.IEsInspectPlanFlowService;
|
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.EsInspectPlanFlowVO;
|
||||||
import com.jero.modules.activiti.process.esinspectplan.vo.FlowRefusalVO;
|
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
@@ -110,16 +109,4 @@ public class EsInspectPlanFlowController {
|
|||||||
esInspectPlanFlowService.flowTransfer(taskId, userId);
|
esInspectPlanFlowService.flowTransfer(taskId, userId);
|
||||||
return Result.OK(MessageUtils.getMessage(ResultCommon.OK));
|
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.entity.ProcessNode;
|
||||||
import com.jero.modules.activiti.process.esinspectplan.vo.EsInspectPlanFlowVO;
|
import com.jero.modules.activiti.process.esinspectplan.vo.EsInspectPlanFlowVO;
|
||||||
import com.jero.modules.activiti.process.esinspectplan.vo.FlowRefusalVO;
|
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@@ -46,11 +45,4 @@ public interface IEsInspectPlanFlowService {
|
|||||||
* @param userId
|
* @param userId
|
||||||
*/
|
*/
|
||||||
void flowTransfer(String taskId, String 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.ProcessNode;
|
||||||
import com.jero.modules.activiti.entity.ProcessNodeLink;
|
import com.jero.modules.activiti.entity.ProcessNodeLink;
|
||||||
import com.jero.modules.activiti.enums.FinishFlagEnum;
|
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.common.EsInspectPlanCommon;
|
||||||
import com.jero.modules.activiti.process.esinspectplan.entity.ProcessEsInspectPlan;
|
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.IEsInspectPlanFlowService;
|
||||||
import com.jero.modules.activiti.process.esinspectplan.service.IProcessEsInspectPlanService;
|
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.EsInspectPlanFlowVO;
|
||||||
import com.jero.modules.activiti.process.esinspectplan.vo.FlowRefusalVO;
|
|
||||||
import com.jero.modules.activiti.service.ProcessAllService;
|
import com.jero.modules.activiti.service.ProcessAllService;
|
||||||
import com.jero.modules.activiti.service.ProcessApprovalRecordService;
|
import com.jero.modules.activiti.service.ProcessApprovalRecordService;
|
||||||
import com.jero.modules.activiti.service.ProcessNodeLinkService;
|
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.runtime.ProcessInstance;
|
||||||
import org.activiti.engine.task.Task;
|
import org.activiti.engine.task.Task;
|
||||||
import org.apache.shiro.SecurityUtils;
|
import org.apache.shiro.SecurityUtils;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
@@ -51,41 +50,36 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService {
|
|||||||
private final ProcessAllService processAllService;
|
private final ProcessAllService processAllService;
|
||||||
private final ProcessApprovalRecordService processApprovalRecordService;
|
private final ProcessApprovalRecordService processApprovalRecordService;
|
||||||
private final IProcessEsInspectPlanService processEsInspectPlanService;
|
private final IProcessEsInspectPlanService processEsInspectPlanService;
|
||||||
private final TaskService taskService;
|
|
||||||
private final RepositoryService repositoryService;
|
private final RepositoryService repositoryService;
|
||||||
private final ISysUserService sysUserService;
|
private final ISysUserService sysUserService;
|
||||||
private final ProcessNodeService processNodeService;
|
private final ProcessNodeService processNodeService;
|
||||||
private final ProcessNodeLinkService processNodeLinkService;
|
private final ProcessNodeLinkService processNodeLinkService;
|
||||||
private final ActFlowCommonService actFlowCommonService;
|
|
||||||
private final SendMessageAPI sendMessageAPI;
|
private final SendMessageAPI sendMessageAPI;
|
||||||
|
|
||||||
public EsInspectPlanFlowServiceImpl(ProcessAllService processAllService,
|
public EsInspectPlanFlowServiceImpl(ProcessAllService processAllService,
|
||||||
ProcessApprovalRecordService processApprovalRecordService,
|
ProcessApprovalRecordService processApprovalRecordService,
|
||||||
IProcessEsInspectPlanService processEsInspectPlanService,
|
IProcessEsInspectPlanService processEsInspectPlanService,
|
||||||
TaskService taskService,
|
|
||||||
RepositoryService repositoryService,
|
RepositoryService repositoryService,
|
||||||
ISysUserService sysUserService,
|
ISysUserService sysUserService,
|
||||||
ProcessNodeService processNodeService,
|
ProcessNodeService processNodeService,
|
||||||
ProcessNodeLinkService processNodeLinkService,
|
ProcessNodeLinkService processNodeLinkService,
|
||||||
ActFlowCommonService actFlowCommonService,
|
|
||||||
SendMessageAPI sendMessageAPI) {
|
SendMessageAPI sendMessageAPI) {
|
||||||
this.processAllService = processAllService;
|
this.processAllService = processAllService;
|
||||||
this.processApprovalRecordService = processApprovalRecordService;
|
this.processApprovalRecordService = processApprovalRecordService;
|
||||||
this.processEsInspectPlanService = processEsInspectPlanService;
|
this.processEsInspectPlanService = processEsInspectPlanService;
|
||||||
this.taskService = taskService;
|
|
||||||
this.repositoryService = repositoryService;
|
this.repositoryService = repositoryService;
|
||||||
this.sysUserService = sysUserService;
|
this.sysUserService = sysUserService;
|
||||||
this.processNodeService = processNodeService;
|
this.processNodeService = processNodeService;
|
||||||
this.processNodeLinkService = processNodeLinkService;
|
this.processNodeLinkService = processNodeLinkService;
|
||||||
this.actFlowCommonService = actFlowCommonService;
|
|
||||||
this.sendMessageAPI = sendMessageAPI;
|
this.sendMessageAPI = sendMessageAPI;
|
||||||
}
|
}
|
||||||
|
|
||||||
// ProcessEngine
|
|
||||||
ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
|
ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
|
||||||
// RunTimeService
|
|
||||||
RuntimeService runtimeService = processEngine.getRuntimeService();
|
RuntimeService runtimeService = processEngine.getRuntimeService();
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private TaskService taskService;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void flowStart(EsInspectPlanFlowVO esInspectPlanFlowVO) {
|
public void flowStart(EsInspectPlanFlowVO esInspectPlanFlowVO) {
|
||||||
// 流程信息
|
// 流程信息
|
||||||
@@ -123,15 +117,13 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService {
|
|||||||
processApprovalRecord.setUserId(loginUser.getId());
|
processApprovalRecord.setUserId(loginUser.getId());
|
||||||
processApprovalRecordService.update(processApprovalRecord,
|
processApprovalRecordService.update(processApprovalRecord,
|
||||||
new LambdaUpdateWrapper<ProcessApprovalRecord>()
|
new LambdaUpdateWrapper<ProcessApprovalRecord>()
|
||||||
.eq(ProcessApprovalRecord::getProcessInstanceId, processInstance.getId()));
|
.eq(ProcessApprovalRecord::getTaskId, task.getId()));
|
||||||
|
|
||||||
// 新增流程实例节点关联用户表
|
// 新增流程实例节点关联用户表
|
||||||
processNodeLinkService.saveNodeUserLink(processInstance.getProcessDefinitionId(), processInstance.getId(), listToString(map));
|
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) {
|
private Map<String, Object> listToString(Map<String, Object> map) {
|
||||||
@@ -207,6 +199,7 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void flowApproval(EsInspectPlanFlowVO esInspectPlanFlowVO) {
|
public void flowApproval(EsInspectPlanFlowVO esInspectPlanFlowVO) {
|
||||||
|
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||||
// 流程信息
|
// 流程信息
|
||||||
ProcessAll processAll = esInspectPlanFlowVO.getProcessAll();
|
ProcessAll processAll = esInspectPlanFlowVO.getProcessAll();
|
||||||
// 流程审批信息
|
// 流程审批信息
|
||||||
@@ -215,26 +208,22 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService {
|
|||||||
Map<String, Object> map = esInspectPlanFlowVO.getMap();
|
Map<String, Object> map = esInspectPlanFlowVO.getMap();
|
||||||
|
|
||||||
// 更新流程审批信息
|
// 更新流程审批信息
|
||||||
processApprovalRecordService.update(processApprovalRecord,
|
processApprovalRecordService.update(
|
||||||
new LambdaUpdateWrapper<ProcessApprovalRecord>()
|
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();
|
Task task = taskService.createTaskQuery().taskId(processAll.getTaskId()).singleResult();
|
||||||
if (task!= null) {
|
if (task!= null) {
|
||||||
// 完成任务
|
// 完成任务
|
||||||
taskService.complete(task.getId(), map);
|
taskService.complete(task.getId(), map);
|
||||||
|
// 任务结束
|
||||||
// 查询当前流程实例的任务数量
|
if (EsInspectPlanCommon.PROCESS_NODE_END.equals(task.getName())
|
||||||
long activeTaskCount = taskService.createTaskQuery()
|
&& map.containsKey("pass") && (boolean) map.get("pass")){
|
||||||
.processInstanceId(processAll.getProcessInstanceId())
|
|
||||||
.active()
|
|
||||||
.count();
|
|
||||||
if (activeTaskCount == 0){
|
|
||||||
// 任务结束
|
|
||||||
processApprovalRecordService.update(new LambdaUpdateWrapper<ProcessApprovalRecord>()
|
|
||||||
.eq(ProcessApprovalRecord::getProcessInstanceId, processAll.getProcessInstanceId())
|
|
||||||
.set(ProcessApprovalRecord::getFinishFlag, FinishFlagEnum.COMPLETE.getValue()));
|
|
||||||
|
|
||||||
// 抄送消息 通过hiwork 给稽查联络人抄送消息
|
// 抄送消息 通过hiwork 给稽查联络人抄送消息
|
||||||
List<ProcessNode> processNodeList = queryPersonInfo(EsInspectPlanCommon.NAME, processAll.getProcessInstanceId());
|
List<ProcessNode> processNodeList = queryPersonInfo(EsInspectPlanCommon.NAME, processAll.getProcessInstanceId());
|
||||||
if (!processNodeList.isEmpty()){
|
if (!processNodeList.isEmpty()){
|
||||||
@@ -266,22 +255,4 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService {
|
|||||||
// 转办
|
// 转办
|
||||||
taskService.setAssignee(taskId, userId);
|
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