feat: scc流程各部门接口人分发获取数据接口
This commit is contained in:
+15
-94
@@ -2,25 +2,21 @@ package com.jero.modules.activiti.process.common.service;
|
|||||||
|
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
||||||
import com.jero.common.api.vo.ResultCommon;
|
import com.jero.common.api.vo.ResultCommon;
|
||||||
import com.jero.common.exception.JeroBootException;
|
import com.jero.common.exception.JeroBootException;
|
||||||
import com.jero.modules.activiti.entity.ProcessAll;
|
import com.jero.modules.activiti.entity.ProcessAll;
|
||||||
import com.jero.modules.activiti.entity.ProcessApprovalRecord;
|
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.FinishFlagEnum;
|
||||||
import com.jero.modules.activiti.enums.ProcessTypeEnum;
|
import com.jero.modules.activiti.enums.ProcessTypeEnum;
|
||||||
import com.jero.modules.activiti.process.common.common.DraftCommon;
|
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.CommonVO;
|
||||||
import com.jero.modules.activiti.process.common.entity.ProcessDraft;
|
import com.jero.modules.activiti.process.common.entity.ProcessDraft;
|
||||||
import com.jero.modules.activiti.process.common.entity.ProcessSnapshot;
|
import com.jero.modules.activiti.process.common.entity.ProcessSnapshot;
|
||||||
import com.jero.modules.activiti.process.common.entity.StandTypeVO;
|
|
||||||
import com.jero.modules.activiti.process.common.enums.StandardStateEnum;
|
import com.jero.modules.activiti.process.common.enums.StandardStateEnum;
|
||||||
import com.jero.modules.activiti.process.fb.dto.BasicProcessInfoDTO;
|
import com.jero.modules.activiti.process.fb.dto.BasicProcessInfoDTO;
|
||||||
import com.jero.modules.activiti.process.fb.dto.BasicTaskInfoDTO;
|
import com.jero.modules.activiti.process.fb.dto.BasicTaskInfoDTO;
|
||||||
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.laws.enterprise.entity.EnterpriseStandardPlan;
|
|
||||||
import com.jero.modules.laws.enterprise.service.EnterpriseStandardPlanService;
|
import com.jero.modules.laws.enterprise.service.EnterpriseStandardPlanService;
|
||||||
import com.jero.modules.laws.standard.entity.LawsEnterpriseStandard;
|
import com.jero.modules.laws.standard.entity.LawsEnterpriseStandard;
|
||||||
import com.jero.modules.laws.standard.service.ILawsEnterpriseStandardService;
|
import com.jero.modules.laws.standard.service.ILawsEnterpriseStandardService;
|
||||||
@@ -256,20 +252,6 @@ public class ActFlowCommonService {
|
|||||||
return task.getProcessInstanceId();
|
return task.getProcessInstanceId();
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getProcessDefId(String processInstanceId) {
|
|
||||||
ProcessInstance processInstance =
|
|
||||||
runtimeService.createProcessInstanceQuery()
|
|
||||||
.processInstanceId(processInstanceId)
|
|
||||||
.singleResult();
|
|
||||||
|
|
||||||
// 从ProcessInstance对象中获取processDefId
|
|
||||||
if (processInstance != null) {
|
|
||||||
return processInstance.getProcessDefinitionId();
|
|
||||||
} else {
|
|
||||||
throw new JeroBootException("未找到流程定义Id");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 更新流程主表
|
* 更新流程主表
|
||||||
*
|
*
|
||||||
@@ -284,48 +266,6 @@ public class ActFlowCommonService {
|
|||||||
processAllService.updateById(process);
|
processAllService.updateById(process);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* 更新流程主表
|
|
||||||
*
|
|
||||||
* @param processInstanceId
|
|
||||||
* @param userId
|
|
||||||
* @param prcName
|
|
||||||
* @param prcMes
|
|
||||||
* @param prcType
|
|
||||||
* @param dueTime
|
|
||||||
*/
|
|
||||||
public void updateProcessAllWithUserId(String processInstanceId, String userId, String prcName, String prcMes, Integer prcType, Date dueTime) {
|
|
||||||
ProcessAll process = processAllService.getByProcessInstanceId(processInstanceId);
|
|
||||||
process.setCreateUserId(userId);
|
|
||||||
process.setPrcName(prcName);
|
|
||||||
process.setPrcMes(prcMes);
|
|
||||||
process.setDueTime(dueTime);
|
|
||||||
process.setPrcType(prcType);
|
|
||||||
processAllService.updateById(process);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void updateProcessAllWithProjectId(String processInstanceId, String prcName, String prcMes,
|
|
||||||
Integer prcType, Date dueTime, String projectId) {
|
|
||||||
ProcessAll process = processAllService.getByProcessInstanceId(processInstanceId);
|
|
||||||
process.setPrcName(prcName);
|
|
||||||
process.setPrcMes(prcMes);
|
|
||||||
process.setDueTime(dueTime);
|
|
||||||
process.setPrcType(prcType);
|
|
||||||
process.setProjectId(projectId);
|
|
||||||
processAllService.updateById(process);
|
|
||||||
}
|
|
||||||
|
|
||||||
public StandTypeVO getStandTypeByStandNo(String standardNo) {
|
|
||||||
LambdaUpdateWrapper<EnterpriseStandardPlan> espWrapper = new LambdaUpdateWrapper<>();
|
|
||||||
espWrapper.eq(EnterpriseStandardPlan::getNewEnStandardNo, standardNo);
|
|
||||||
EnterpriseStandardPlan one = espService.getOne(espWrapper);
|
|
||||||
StandTypeVO standTypeVO = new StandTypeVO();
|
|
||||||
if (one != null) {
|
|
||||||
standTypeVO.setStandardType(one.getStandardType());
|
|
||||||
}
|
|
||||||
return standTypeVO;
|
|
||||||
}
|
|
||||||
|
|
||||||
public ProcessDraft getExistDraft(String draftId) {
|
public ProcessDraft getExistDraft(String draftId) {
|
||||||
String userId = UserUtils.getUserId();
|
String userId = UserUtils.getUserId();
|
||||||
LambdaQueryWrapper<ProcessDraft> draftWrapper = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<ProcessDraft> draftWrapper = new LambdaQueryWrapper<>();
|
||||||
@@ -355,24 +295,6 @@ public class ActFlowCommonService {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public CommonVO getHandleCommon(String taskId) {
|
|
||||||
String processInstanceId = this.getProcessInstanceIdByTaskId(taskId);
|
|
||||||
String processDefinitionId = this.getProcessDefId(processInstanceId);
|
|
||||||
// 获取流程通用数据
|
|
||||||
ProcessAll process = processAllService.getByProcessInstanceId(processInstanceId);
|
|
||||||
CommonVO commonVO = new CommonVO();
|
|
||||||
commonVO.setPrcName(process.getPrcName());
|
|
||||||
commonVO.setTaskId(process.getTaskId());
|
|
||||||
commonVO.setPrcMes(process.getPrcMes());
|
|
||||||
commonVO.setDueTime(process.getDueTime());
|
|
||||||
commonVO.setProcessDefinitionId(processDefinitionId);
|
|
||||||
commonVO.setProcessInstanceId(processInstanceId);
|
|
||||||
// 获取节点ID
|
|
||||||
ProcessApprovalRecord record = this.getNodeIdByTaskId(taskId);
|
|
||||||
commonVO.setNodeId(record.getNodeId());
|
|
||||||
return commonVO;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void removeDraft(CommonVO commonVO) {
|
public void removeDraft(CommonVO commonVO) {
|
||||||
String userId = UserUtils.getUserId();
|
String userId = UserUtils.getUserId();
|
||||||
String taskId = commonVO.getTaskId();
|
String taskId = commonVO.getTaskId();
|
||||||
@@ -385,22 +307,6 @@ public class ActFlowCommonService {
|
|||||||
processDraftService.remove(draftWrapper);
|
processDraftService.remove(draftWrapper);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* 会签节点驳回后,将其余节点recode设置为 未处理 状态
|
|
||||||
*
|
|
||||||
* @param prcId
|
|
||||||
* @param nodeName
|
|
||||||
*/
|
|
||||||
public void updateOtherCountersignRecodeStatus(String prcId, String nodeName) {
|
|
||||||
LambdaUpdateWrapper<ProcessApprovalRecord> updateWrapper = new LambdaUpdateWrapper<>();
|
|
||||||
updateWrapper.eq(ProcessApprovalRecord::getProcessInstanceId, prcId);
|
|
||||||
updateWrapper.eq(ProcessApprovalRecord::getFinishFlag, FinishFlagEnum.INCOMPLETE.getValue());
|
|
||||||
updateWrapper.eq(ProcessApprovalRecord::getTaskName, nodeName);
|
|
||||||
updateWrapper.set(ProcessApprovalRecord::getCommitText, CommitFlagEnum.UNDISPOSED.getName());
|
|
||||||
updateWrapper.set(ProcessApprovalRecord::getFinishFlag, null);
|
|
||||||
processApprovalRecordService.update(updateWrapper);
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getOriginTaskAssignee(String taskId) {
|
public String getOriginTaskAssignee(String taskId) {
|
||||||
ProcessApprovalRecord approvalRecord = processApprovalRecordService.getToDoByTaskId(taskId);
|
ProcessApprovalRecord approvalRecord = processApprovalRecordService.getToDoByTaskId(taskId);
|
||||||
return approvalRecord.getOriginUserId();
|
return approvalRecord.getOriginUserId();
|
||||||
@@ -441,4 +347,19 @@ public class ActFlowCommonService {
|
|||||||
draftWrapper.eq(ProcessSnapshot::getId, snapshotId);
|
draftWrapper.eq(ProcessSnapshot::getId, snapshotId);
|
||||||
return processSnapshotService.getOne(draftWrapper);
|
return processSnapshotService.getOne(draftWrapper);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public BasicProcessInfoDTO getProcessInfo(String taskId) {
|
||||||
|
String processInstanceId = this.getProcessInstanceIdByTaskId(taskId);
|
||||||
|
// 获取流程通用数据
|
||||||
|
ProcessAll process = processAllService.getByProcessInstanceId(processInstanceId);
|
||||||
|
BasicProcessInfoDTO basicProcessInfoDTO = new BasicProcessInfoDTO();
|
||||||
|
// 获取节点ID
|
||||||
|
basicProcessInfoDTO.setProcessInstanceId(processInstanceId);
|
||||||
|
basicProcessInfoDTO.setProcessDescription(process.getPrcMes());
|
||||||
|
basicProcessInfoDTO.setProcessName(process.getPrcName());
|
||||||
|
basicProcessInfoDTO.setProcessDueDate(process.getDueTime());
|
||||||
|
basicProcessInfoDTO.setProcessType(process.getPrcType());
|
||||||
|
basicProcessInfoDTO.setProcessDefinitionId(process.getProcessDefinitionId());
|
||||||
|
return basicProcessInfoDTO;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+2
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
|
|||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import com.jero.common.aspect.annotation.Dict;
|
||||||
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModel;
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
@@ -117,6 +118,7 @@ public class ProcessStandardComplianceCheck implements Serializable {
|
|||||||
* 适用市场
|
* 适用市场
|
||||||
*/
|
*/
|
||||||
@ApiModelProperty(value = "适用市场")
|
@ApiModelProperty(value = "适用市场")
|
||||||
|
@Dict(dictTable = "laws_market_standard", dicText = "manifest_name", dicCode = "id")
|
||||||
private String applicableMarket;
|
private String applicableMarket;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
+93
-74
@@ -128,7 +128,7 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl<Proce
|
|||||||
processTask.setTaskId(taskId);
|
processTask.setTaskId(taskId);
|
||||||
// 保存第一个节点的草稿
|
// 保存第一个节点的草稿
|
||||||
processHandleService.saveToDraft(processInfoVO, userId);
|
processHandleService.saveToDraft(processInfoVO, userId);
|
||||||
// 保存第一个节点的草稿
|
// 保存第一个节点的快照
|
||||||
processHandleService.saveToSnapshot(processInfoVO, userId);
|
processHandleService.saveToSnapshot(processInfoVO, userId);
|
||||||
// 更新审批表为完成,填充数据
|
// 更新审批表为完成,填充数据
|
||||||
actFlowCommonService.updateApprovalInfo(processTask, taskId);
|
actFlowCommonService.updateApprovalInfo(processTask, taskId);
|
||||||
@@ -267,6 +267,98 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl<Proce
|
|||||||
return this.saveAllDetailData(modelExcelVOList, detailInfoList);
|
return this.saveAllDetailData(modelExcelVOList, detailInfoList);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ProcessInfoVO<ProcessSccVO> getHandleData(String taskId) {
|
||||||
|
if (!actFlowCommonService.taskExists(taskId)) {
|
||||||
|
throw new JeroBootException("任务不存在");
|
||||||
|
}
|
||||||
|
ProcessInfoVO<ProcessSccVO> result = new ProcessInfoVO<>();
|
||||||
|
ProcessSccVO processSccVO = new ProcessSccVO();
|
||||||
|
result.setBasicProcessInfoDTO(actFlowCommonService.getProcessInfo(taskId));
|
||||||
|
String userId = actFlowCommonService.getOriginTaskAssignee(taskId);
|
||||||
|
String executionId = taskService.createTaskQuery().taskId(taskId).singleResult().getExecutionId();
|
||||||
|
// 使用流程引擎根据taskId找到流程实例Id
|
||||||
|
String processInstanceId = actFlowCommonService.getProcessInstanceIdByTaskId(taskId);
|
||||||
|
// 获取流程通用数据
|
||||||
|
ProcessAll process = processAllService.getByProcessInstanceId(processInstanceId);
|
||||||
|
ProcessApprovalRecord record = actFlowCommonService.getNodeIdByTaskId(taskId);
|
||||||
|
// 获取当前流程数据
|
||||||
|
LambdaQueryWrapper<ProcessStandardComplianceCheck> queryWrapper = new LambdaQueryWrapper<>();
|
||||||
|
queryWrapper.eq(ProcessStandardComplianceCheck::getProcessInstanceId, processInstanceId);
|
||||||
|
ProcessStandardComplianceCheck scc = getOne(queryWrapper);
|
||||||
|
LambdaQueryWrapper<ProcessStandardComplianceCheckDetail> detailQueryWrapper = new LambdaQueryWrapper<>();
|
||||||
|
detailQueryWrapper.eq(ProcessStandardComplianceCheckDetail::getCheckId, scc.getId());
|
||||||
|
List<ProcessStandardComplianceCheckDetail> detailList = sccDetailService.list(detailQueryWrapper);
|
||||||
|
String xmlNodeId = record.getNodeId();
|
||||||
|
// 设置流程信息
|
||||||
|
switch (xmlNodeId) {
|
||||||
|
case DEPT_USER_DISTRIBUTE:
|
||||||
|
processSccVO.setStandardInfo(scc);
|
||||||
|
processSccVO.setDetailInfoList(detailList);
|
||||||
|
break;
|
||||||
|
case MAIN_CHECK_USER_COLLECT:
|
||||||
|
break;
|
||||||
|
case COUNTERSIGN:
|
||||||
|
break;
|
||||||
|
case MANAGER_APPROVAL:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
result.setBusinessInfoDTO(processSccVO);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void createAutoTaskListener(DelegateTask delegateTask) {
|
||||||
|
String taskId = delegateTask.getId();
|
||||||
|
String taskDefinitionKey = delegateTask.getTaskDefinitionKey();
|
||||||
|
String processInstanceId = delegateTask.getProcessInstanceId();
|
||||||
|
Map<String, Object> userInfoMap = new HashMap<>();
|
||||||
|
ProcessInfoVO<ProcessDemoVO> processInfoVO = new ProcessInfoVO<>();
|
||||||
|
BasicProcessInfoDTO basicProcessInfoDTO = new BasicProcessInfoDTO();
|
||||||
|
String mainInstanceId = (String) delegateTask.getVariable(ActivitiCommon.MAIN_INSTANCE_ID);
|
||||||
|
//保存父子关联信息
|
||||||
|
Map<String, Object> variables = new HashMap<>();
|
||||||
|
variables.put(ActivitiCommon.MAIN_INSTANCE_ID, mainInstanceId != null ? mainInstanceId : processInstanceId);
|
||||||
|
variables.put(ActivitiCommon.PARENT_TASK_ID, taskId);
|
||||||
|
|
||||||
|
switch (taskDefinitionKey) {
|
||||||
|
//主排查人分批下发后自动任务
|
||||||
|
case AUTO_TASK_1:
|
||||||
|
case AUTO_TASK_3:
|
||||||
|
// TODO
|
||||||
|
List<String> interpreterList = (List<String>) delegateTask.getVariable(ProcessDemoCommon.INTERPRETER);
|
||||||
|
for (String interpreter : interpreterList) {
|
||||||
|
userInfoMap.put(ProcessDemoCommon.INTERPRETER, interpreter);
|
||||||
|
// 流程定义id
|
||||||
|
String definitionId = processHandleService.getDefinitionIdByKey(ProcessDefinitionKey.STANDARD_COMPLIANCE_CHECK_DISTRIBUTE);
|
||||||
|
basicProcessInfoDTO.setProcessDefinitionId(definitionId);
|
||||||
|
basicProcessInfoDTO.setProcessType(ProcessTypeEnum.STANDARD_COMPLIANCE_CHECK.getValue()); // 流程类型
|
||||||
|
processInfoVO.setBasicProcessInfoDTO(basicProcessInfoDTO);
|
||||||
|
|
||||||
|
processInfoVO.setProcessVariables(variables);
|
||||||
|
processInfoVO.setUserInfoMap(userInfoMap);
|
||||||
|
processHandleService.startChildrenProcess(processInfoVO);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
//设计工程师驳回后自动任务
|
||||||
|
case AUTO_TASK_2:
|
||||||
|
// TODO
|
||||||
|
String mainInterpreter = (String) delegateTask.getVariable(ProcessDemoCommon.MAIN_INTERPRETER);
|
||||||
|
userInfoMap.put(ProcessDemoCommon.MAIN_INTERPRETER, mainInterpreter);
|
||||||
|
// 流程定义id
|
||||||
|
String definitionId = processHandleService.getDefinitionIdByKey(ProcessDefinitionKey.STANDARD_COMPLIANCE_CHECK_REDISTRIBUTE);
|
||||||
|
basicProcessInfoDTO.setProcessDefinitionId(definitionId);
|
||||||
|
basicProcessInfoDTO.setProcessType(ProcessTypeEnum.STANDARD_COMPLIANCE_CHECK.getValue()); // 流程类型
|
||||||
|
processInfoVO.setBasicProcessInfoDTO(basicProcessInfoDTO);
|
||||||
|
|
||||||
|
processInfoVO.setProcessVariables(variables);
|
||||||
|
processInfoVO.setUserInfoMap(userInfoMap);
|
||||||
|
processHandleService.startChildrenProcess(processInfoVO);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private MultipartFile getFileById(String fileId) {
|
private MultipartFile getFileById(String fileId) {
|
||||||
List<OSSFile> fileInfos = ossFileService.getFileInfos(fileId);
|
List<OSSFile> fileInfos = ossFileService.getFileInfos(fileId);
|
||||||
if (fileInfos == null || fileInfos.isEmpty()) {
|
if (fileInfos == null || fileInfos.isEmpty()) {
|
||||||
@@ -423,79 +515,6 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl<Proce
|
|||||||
}
|
}
|
||||||
return modelExcelVOList;
|
return modelExcelVOList;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public ProcessInfoVO<ProcessSccVO> getHandleData(String taskId) {
|
|
||||||
if (!actFlowCommonService.taskExists(taskId)) {
|
|
||||||
throw new JeroBootException("任务不存在");
|
|
||||||
}
|
|
||||||
ProcessInfoVO<ProcessSccVO> result = new ProcessInfoVO<>();
|
|
||||||
String userId = actFlowCommonService.getOriginTaskAssignee(taskId);
|
|
||||||
String executionId = taskService.createTaskQuery().taskId(taskId).singleResult().getExecutionId();
|
|
||||||
// 使用流程引擎根据taskId找到流程实例Id
|
|
||||||
String processInstanceId = actFlowCommonService.getProcessInstanceIdByTaskId(taskId);
|
|
||||||
// 获取流程通用数据
|
|
||||||
ProcessAll process = processAllService.getByProcessInstanceId(processInstanceId);
|
|
||||||
ProcessApprovalRecord record = actFlowCommonService.getNodeIdByTaskId(taskId);
|
|
||||||
String xmlNodeId = record.getNodeId();
|
|
||||||
// 设置流程信息
|
|
||||||
switch (xmlNodeId) {
|
|
||||||
//TODO
|
|
||||||
}
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void createAutoTaskListener(DelegateTask delegateTask) {
|
|
||||||
String taskId = delegateTask.getId();
|
|
||||||
String taskDefinitionKey = delegateTask.getTaskDefinitionKey();
|
|
||||||
String processInstanceId = delegateTask.getProcessInstanceId();
|
|
||||||
Map<String, Object> userInfoMap = new HashMap<>();
|
|
||||||
ProcessInfoVO<ProcessDemoVO> processInfoVO = new ProcessInfoVO<>();
|
|
||||||
BasicProcessInfoDTO basicProcessInfoDTO = new BasicProcessInfoDTO();
|
|
||||||
String mainInstanceId = (String) delegateTask.getVariable(ActivitiCommon.MAIN_INSTANCE_ID);
|
|
||||||
//保存父子关联信息
|
|
||||||
Map<String, Object> variables = new HashMap<>();
|
|
||||||
variables.put(ActivitiCommon.MAIN_INSTANCE_ID, mainInstanceId != null ? mainInstanceId : processInstanceId);
|
|
||||||
variables.put(ActivitiCommon.PARENT_TASK_ID, taskId);
|
|
||||||
|
|
||||||
switch (taskDefinitionKey) {
|
|
||||||
//主排查人分批下发后自动任务
|
|
||||||
case AUTO_TASK_1:
|
|
||||||
case AUTO_TASK_3:
|
|
||||||
// TODO
|
|
||||||
List<String> interpreterList = (List<String>) delegateTask.getVariable(ProcessDemoCommon.INTERPRETER);
|
|
||||||
for (String interpreter : interpreterList) {
|
|
||||||
userInfoMap.put(ProcessDemoCommon.INTERPRETER, interpreter);
|
|
||||||
// 流程定义id
|
|
||||||
String definitionId = processHandleService.getDefinitionIdByKey(ProcessDefinitionKey.STANDARD_COMPLIANCE_CHECK_DISTRIBUTE);
|
|
||||||
basicProcessInfoDTO.setProcessDefinitionId(definitionId);
|
|
||||||
basicProcessInfoDTO.setProcessType(ProcessTypeEnum.STANDARD_COMPLIANCE_CHECK.getValue()); // 流程类型
|
|
||||||
processInfoVO.setBasicProcessInfoDTO(basicProcessInfoDTO);
|
|
||||||
|
|
||||||
processInfoVO.setProcessVariables(variables);
|
|
||||||
processInfoVO.setUserInfoMap(userInfoMap);
|
|
||||||
processHandleService.startChildrenProcess(processInfoVO);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
//设计工程师驳回后自动任务
|
|
||||||
case AUTO_TASK_2:
|
|
||||||
// TODO
|
|
||||||
String mainInterpreter = (String) delegateTask.getVariable(ProcessDemoCommon.MAIN_INTERPRETER);
|
|
||||||
userInfoMap.put(ProcessDemoCommon.MAIN_INTERPRETER, mainInterpreter);
|
|
||||||
// 流程定义id
|
|
||||||
String definitionId = processHandleService.getDefinitionIdByKey(ProcessDefinitionKey.STANDARD_COMPLIANCE_CHECK_REDISTRIBUTE);
|
|
||||||
basicProcessInfoDTO.setProcessDefinitionId(definitionId);
|
|
||||||
basicProcessInfoDTO.setProcessType(ProcessTypeEnum.STANDARD_COMPLIANCE_CHECK.getValue()); // 流程类型
|
|
||||||
processInfoVO.setBasicProcessInfoDTO(basicProcessInfoDTO);
|
|
||||||
|
|
||||||
processInfoVO.setProcessVariables(variables);
|
|
||||||
processInfoVO.setUserInfoMap(userInfoMap);
|
|
||||||
processHandleService.startChildrenProcess(processInfoVO);
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user