完善新法规导入流程
This commit is contained in:
@@ -11,7 +11,7 @@ import lombok.Getter;
|
|||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
public enum ProcessTypeEnum {
|
public enum ProcessTypeEnum {
|
||||||
DEMO("测试流程", 0, "com.jero.modules.activiti.process.demo.service.ProcessDemoService", "/workCenter/StandardEntryOrChangeProcess", "/workCenter/StandardEntryOrChangeProcess"),
|
DEMO("测试流程", 0, "com.jero.modules.activiti.process.demo.service.ProcessDemoService", "/workCenter/StandardEntryOrChangeProcess", "/workCenter/StandardEntryOrChangeProcess"),
|
||||||
NEW_STANDARD_IMPORT("新法规导入流程", 1, "com.jero.modules.activiti.process.ni.service.ProcessNewStandardImportService", "/workCenter/ProcessNewStandardImportProcess", "/workCenter/StandardComplianceCheckProcess"),
|
NEW_STANDARD_IMPORT("新法规导入流程", 1, "com.jero.modules.activiti.process.ni.service.impl.ProcessNewStandardImportServiceImpl", "/workCenter/ProcessNewStandardImportProcess", "/workCenter/StandardComplianceCheckProcess"),
|
||||||
STANDARD_INTERPRET("标准解读流程", 2, "com.jero.modules.activiti.process.standardinterpret.service.impl.StandardInterpretFlow", "", ""),
|
STANDARD_INTERPRET("标准解读流程", 2, "com.jero.modules.activiti.process.standardinterpret.service.impl.StandardInterpretFlow", "", ""),
|
||||||
STANDARD_COMPLIANCE_CHECK("法规符合性排查流程", 3, "com.jero.modules.activiti.process.standardComplianceCheck.service.ProcessStandardComplianceCheckService", "/workCenter/StandardComplianceCheckProcess", "/workCenter/StandardComplianceCheckProcess"),
|
STANDARD_COMPLIANCE_CHECK("法规符合性排查流程", 3, "com.jero.modules.activiti.process.standardComplianceCheck.service.ProcessStandardComplianceCheckService", "/workCenter/StandardComplianceCheckProcess", "/workCenter/StandardComplianceCheckProcess"),
|
||||||
MARKET_STANDARD_PUBLISH("市场清单发布流程", 4, "com.jero.modules.activiti.process.ni.service.ProcessNewStandardImportService", "/workCenter/ProcessNewStandardImportProcess", "/workCenter/StandardComplianceCheckProcess"),
|
MARKET_STANDARD_PUBLISH("市场清单发布流程", 4, "com.jero.modules.activiti.process.ni.service.ProcessNewStandardImportService", "/workCenter/ProcessNewStandardImportProcess", "/workCenter/StandardComplianceCheckProcess"),
|
||||||
|
|||||||
-1
@@ -188,7 +188,6 @@ public class ProcessHandleServiceImpl implements IProcessHandleService {
|
|||||||
* @Description: 转办
|
* @Description: 转办
|
||||||
**/
|
**/
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = JeroBootException.class)
|
|
||||||
public void transfer(String taskId, String toUserId) {
|
public void transfer(String taskId, String toUserId) {
|
||||||
isMyTask(taskId); // 判断是否拥有任务处理权限
|
isMyTask(taskId); // 判断是否拥有任务处理权限
|
||||||
ProcessApprovalRecord processApprovalRecord = processApprovalRecordService.getToDoByTaskId(taskId);
|
ProcessApprovalRecord processApprovalRecord = processApprovalRecordService.getToDoByTaskId(taskId);
|
||||||
|
|||||||
+3
-2
@@ -12,6 +12,7 @@ import com.jero.modules.activiti.process.fb.service.IProcessHandleService;
|
|||||||
import com.jero.modules.activiti.process.fb.vo.ProcessInfoVO;
|
import com.jero.modules.activiti.process.fb.vo.ProcessInfoVO;
|
||||||
import com.jero.modules.activiti.process.ni.entity.ProcessNewStandardImport;
|
import com.jero.modules.activiti.process.ni.entity.ProcessNewStandardImport;
|
||||||
import com.jero.modules.activiti.process.ni.service.IProcessNewStandardImportService;
|
import com.jero.modules.activiti.process.ni.service.IProcessNewStandardImportService;
|
||||||
|
import com.jero.modules.activiti.vo.DelegateTaskParam;
|
||||||
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;
|
||||||
@@ -95,8 +96,8 @@ public class ProcessNewStandardImportController extends JeroController<ProcessNe
|
|||||||
@AutoLog(value = "新法规导入流程-转办")
|
@AutoLog(value = "新法规导入流程-转办")
|
||||||
@ApiOperation(value="新法规导入流程-转办", notes="新法规导入流程-转办")
|
@ApiOperation(value="新法规导入流程-转办", notes="新法规导入流程-转办")
|
||||||
@PostMapping(value = "/transfer")
|
@PostMapping(value = "/transfer")
|
||||||
public Result<?> transfer(@RequestBody TransferVO transferVO) {
|
public Result<?> transfer(@RequestBody DelegateTaskParam param) {
|
||||||
processHandleService.transfer(transferVO.getTaskId(), transferVO.getUserId());
|
processHandleService.transfer(param.getTaskId(), param.getUserId());
|
||||||
return Result.OK();
|
return Result.OK();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+4
@@ -87,6 +87,10 @@ public class ProcessNewStandardImport implements Serializable {
|
|||||||
@ApiModelProperty(value = "标准类型")
|
@ApiModelProperty(value = "标准类型")
|
||||||
@Dict(dicCode = "standard_type")
|
@Dict(dicCode = "standard_type")
|
||||||
private String standardCategory;
|
private String standardCategory;
|
||||||
|
/**实施日期*/
|
||||||
|
@ApiModelProperty(value = "实施日期")
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String implementationDate;
|
||||||
/**标准名称*/
|
/**标准名称*/
|
||||||
@ApiModelProperty(value = "标准名称")
|
@ApiModelProperty(value = "标准名称")
|
||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
|
|||||||
+9
-3
@@ -1,10 +1,16 @@
|
|||||||
package com.jero.modules.activiti.process.ni.listener;
|
package com.jero.modules.activiti.process.ni.listener;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||||
import com.jero.common.util.SpringContextUtils;
|
import com.jero.common.util.SpringContextUtils;
|
||||||
|
import com.jero.modules.activiti.process.common.enums.StandardStateEnum;
|
||||||
import com.jero.modules.activiti.process.ni.service.IProcessNewStandardImportService;
|
import com.jero.modules.activiti.process.ni.service.IProcessNewStandardImportService;
|
||||||
import com.jero.modules.activiti.process.standardinterpret.service.StandardInterpretFlowService;
|
import com.jero.modules.activiti.process.standardinterpret.service.StandardInterpretFlowService;
|
||||||
|
import com.jero.modules.laws.standard.entity.LawsEnterpriseStandard;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.activiti.engine.delegate.DelegateExecution;
|
||||||
import org.activiti.engine.delegate.DelegateTask;
|
import org.activiti.engine.delegate.DelegateTask;
|
||||||
|
import org.activiti.engine.delegate.ExecutionListener;
|
||||||
import org.activiti.engine.delegate.TaskListener;
|
import org.activiti.engine.delegate.TaskListener;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
@@ -16,13 +22,13 @@ import javax.annotation.Resource;
|
|||||||
*/
|
*/
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@Component
|
@Component
|
||||||
public class ProcessNewStandardImportFlowListener implements TaskListener {
|
public class ProcessNewStandardImportEndListener implements ExecutionListener {
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
private IProcessNewStandardImportService processNewStandardImportService;
|
private IProcessNewStandardImportService processNewStandardImportService;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void notify(DelegateTask delegateTask) {
|
public void notify(DelegateExecution delegateExecution) {
|
||||||
processNewStandardImportService.flowListener(delegateTask);
|
processNewStandardImportService.flowListener(delegateExecution);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
+3
-3
@@ -5,12 +5,12 @@
|
|||||||
<mapper namespace="com.jero.modules.activiti.process.ni.mapper.ProcessNewStandardImportMapper">
|
<mapper namespace="com.jero.modules.activiti.process.ni.mapper.ProcessNewStandardImportMapper">
|
||||||
|
|
||||||
<select id="getStandardNameById" resultType="com.jero.modules.activiti.process.ni.entity.ProcessNewStandardImport">
|
<select id="getStandardNameById" resultType="com.jero.modules.activiti.process.ni.entity.ProcessNewStandardImport">
|
||||||
select standard_number,standard_name,substitute_standard_number from
|
select standard_number,standard_name,substitute_standard_number,implementation_date from
|
||||||
(select id, standard_number,standard_name,substitute_standard_number
|
(select id, standard_number,standard_name,substitute_standard_number,implementation_date
|
||||||
from laws_domestic_standard
|
from laws_domestic_standard
|
||||||
where del_flag = 0
|
where del_flag = 0
|
||||||
union all
|
union all
|
||||||
select id, standard_number,standard_name,substitute_standard_number
|
select id, standard_number,standard_name,substitute_standard_number,implementation_date
|
||||||
from laws_enterprise_standard
|
from laws_enterprise_standard
|
||||||
where del_flag = 0) a where id = #{id}
|
where del_flag = 0) a where id = #{id}
|
||||||
</select>
|
</select>
|
||||||
|
|||||||
+2
-1
@@ -3,6 +3,7 @@ package com.jero.modules.activiti.process.ni.service;
|
|||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
import com.jero.modules.activiti.process.fb.vo.ProcessInfoVO;
|
import com.jero.modules.activiti.process.fb.vo.ProcessInfoVO;
|
||||||
import com.jero.modules.activiti.process.ni.entity.ProcessNewStandardImport;
|
import com.jero.modules.activiti.process.ni.entity.ProcessNewStandardImport;
|
||||||
|
import org.activiti.engine.delegate.DelegateExecution;
|
||||||
import org.activiti.engine.delegate.DelegateTask;
|
import org.activiti.engine.delegate.DelegateTask;
|
||||||
import org.springframework.web.multipart.MultipartFile;
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
@@ -25,5 +26,5 @@ public interface IProcessNewStandardImportService extends IService<ProcessNewSta
|
|||||||
|
|
||||||
String generate(ProcessNewStandardImport scc, MultipartFile modelFile, MultipartFile splitFile) throws Exception;
|
String generate(ProcessNewStandardImport scc, MultipartFile modelFile, MultipartFile splitFile) throws Exception;
|
||||||
|
|
||||||
void flowListener(DelegateTask delegateTask);
|
void flowListener(DelegateExecution delegateExecution);
|
||||||
}
|
}
|
||||||
|
|||||||
+37
-5
@@ -3,6 +3,7 @@ package com.jero.modules.activiti.process.ni.service.impl;
|
|||||||
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.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import com.jero.common.api.dto.message.SendMessageDTO;
|
||||||
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;
|
||||||
@@ -18,9 +19,13 @@ import com.jero.modules.activiti.process.ni.mapper.ProcessNewStandardImportMappe
|
|||||||
import com.jero.modules.activiti.process.ni.service.IProcessNewStandardImportService;
|
import com.jero.modules.activiti.process.ni.service.IProcessNewStandardImportService;
|
||||||
import com.jero.modules.activiti.service.ProcessAllService;
|
import com.jero.modules.activiti.service.ProcessAllService;
|
||||||
import com.jero.modules.activiti.service.ProcessNodeLinkService;
|
import com.jero.modules.activiti.service.ProcessNodeLinkService;
|
||||||
|
import com.jero.modules.common.service.SendMessageAPI;
|
||||||
|
import com.jero.modules.laws.common.constant.MessageTemplateCodeCommon;
|
||||||
import com.jero.modules.sys.utils.UserUtils;
|
import com.jero.modules.sys.utils.UserUtils;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.activiti.engine.RuntimeService;
|
import org.activiti.engine.RuntimeService;
|
||||||
import org.activiti.engine.TaskService;
|
import org.activiti.engine.TaskService;
|
||||||
|
import org.activiti.engine.delegate.DelegateExecution;
|
||||||
import org.activiti.engine.delegate.DelegateTask;
|
import org.activiti.engine.delegate.DelegateTask;
|
||||||
import org.activiti.engine.runtime.ProcessInstance;
|
import org.activiti.engine.runtime.ProcessInstance;
|
||||||
import org.activiti.engine.task.Task;
|
import org.activiti.engine.task.Task;
|
||||||
@@ -40,6 +45,7 @@ import static com.jero.modules.activiti.common.ActivitiCommon.PASS;
|
|||||||
* @description 针对表【process_standard_compliance_check】的数据库操作Service实现
|
* @description 针对表【process_standard_compliance_check】的数据库操作Service实现
|
||||||
* @createDate 2024-07-04 10:21:21
|
* @createDate 2024-07-04 10:21:21
|
||||||
*/
|
*/
|
||||||
|
@Slf4j
|
||||||
@Service
|
@Service
|
||||||
public class ProcessNewStandardImportServiceImpl extends ServiceImpl<ProcessNewStandardImportMapper, ProcessNewStandardImport>
|
public class ProcessNewStandardImportServiceImpl extends ServiceImpl<ProcessNewStandardImportMapper, ProcessNewStandardImport>
|
||||||
implements IProcessNewStandardImportService {
|
implements IProcessNewStandardImportService {
|
||||||
@@ -65,6 +71,9 @@ public class ProcessNewStandardImportServiceImpl extends ServiceImpl<ProcessNewS
|
|||||||
@Resource
|
@Resource
|
||||||
private ProcessNewStandardImportMapper processNewStandardImportMapper;
|
private ProcessNewStandardImportMapper processNewStandardImportMapper;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private SendMessageAPI sendMessageAPI;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = JeroBootException.class)
|
@Transactional(rollbackFor = JeroBootException.class)
|
||||||
public void startProcess(ProcessInfoVO<ProcessNewStandardImport> processInfoVO) {
|
public void startProcess(ProcessInfoVO<ProcessNewStandardImport> processInfoVO) {
|
||||||
@@ -99,6 +108,7 @@ public class ProcessNewStandardImportServiceImpl extends ServiceImpl<ProcessNewS
|
|||||||
String userId = UserUtils.getUserId();
|
String userId = UserUtils.getUserId();
|
||||||
// 获取第一个任务的taskId
|
// 获取第一个任务的taskId
|
||||||
String taskId = actFlowCommonService.getFirstTaskId(processInstanceId, userId, processDefinitionId);
|
String taskId = actFlowCommonService.getFirstTaskId(processInstanceId, userId, processDefinitionId);
|
||||||
|
processTask.setTaskId(taskId);
|
||||||
// 保存第一个节点的草稿
|
// 保存第一个节点的草稿
|
||||||
processHandleService.saveToDraft(processInfoVO, UserUtils.getUserId());
|
processHandleService.saveToDraft(processInfoVO, UserUtils.getUserId());
|
||||||
// 更新审批表为完成,填充数据
|
// 更新审批表为完成,填充数据
|
||||||
@@ -186,8 +196,32 @@ public class ProcessNewStandardImportServiceImpl extends ServiceImpl<ProcessNewS
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void flowListener(DelegateTask delegateTask) {
|
public void flowListener(DelegateExecution delegateExecution) {
|
||||||
|
log.info("触发监听");
|
||||||
|
String processInstanceId = delegateExecution.getProcessInstanceId();
|
||||||
|
LambdaQueryWrapper<ProcessNewStandardImport> queryWrapperProcessNewStandardImport = new LambdaQueryWrapper<>();
|
||||||
|
queryWrapperProcessNewStandardImport.eq(ProcessNewStandardImport::getProcessInstanceId, processInstanceId);
|
||||||
|
ProcessNewStandardImport processNewStandardImport = getOne(queryWrapperProcessNewStandardImport,false);
|
||||||
|
if(Objects.isNull(processNewStandardImport)){
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
String copyUser = processNewStandardImport.getCopyUser();
|
||||||
|
ProcessNewStandardImport standardImport = processNewStandardImportMapper.
|
||||||
|
getStandardNameById(processNewStandardImport.getStandardId());
|
||||||
|
if(Objects.isNull(standardImport)){
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// 流程Key
|
||||||
|
String processDefinitionKey = ProcessType.NEW_STANDARD_IMPORT.getProcessKey();
|
||||||
|
// 发送消息
|
||||||
|
SendMessageDTO sendMessageDTO = new SendMessageDTO();
|
||||||
|
sendMessageDTO.setTemplateCode(processDefinitionKey);
|
||||||
|
sendMessageDTO.setToUserId(copyUser);
|
||||||
|
Map<String, String> sendMap = new HashMap<>();
|
||||||
|
sendMap.put("standardNumber", standardImport.getStandardNumber());
|
||||||
|
sendMap.put("standardName", standardImport.getStandardName());
|
||||||
|
sendMessageDTO.setMap(sendMap);
|
||||||
|
sendMessageAPI.sendMessage(sendMessageDTO);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -196,8 +230,6 @@ public class ProcessNewStandardImportServiceImpl extends ServiceImpl<ProcessNewS
|
|||||||
throw new JeroBootException("任务不存在");
|
throw new JeroBootException("任务不存在");
|
||||||
}
|
}
|
||||||
ProcessInfoVO<ProcessNewStandardImport> result = new ProcessInfoVO<>();
|
ProcessInfoVO<ProcessNewStandardImport> result = new ProcessInfoVO<>();
|
||||||
String userId = actFlowCommonService.getOriginTaskAssignee(taskId);
|
|
||||||
String executionId = taskService.createTaskQuery().taskId(taskId).singleResult().getExecutionId();
|
|
||||||
// 使用流程引擎根据taskId找到流程实例Id
|
// 使用流程引擎根据taskId找到流程实例Id
|
||||||
String processInstanceId = actFlowCommonService.getProcessInstanceIdByTaskId(taskId);
|
String processInstanceId = actFlowCommonService.getProcessInstanceIdByTaskId(taskId);
|
||||||
// 获取流程通用数据
|
// 获取流程通用数据
|
||||||
@@ -222,7 +254,7 @@ public class ProcessNewStandardImportServiceImpl extends ServiceImpl<ProcessNewS
|
|||||||
if(!Objects.isNull(processNewStandardImport)){
|
if(!Objects.isNull(processNewStandardImport)){
|
||||||
data.setStandardName(processNewStandardImport.getStandardName());
|
data.setStandardName(processNewStandardImport.getStandardName());
|
||||||
data.setStandardNumber(processNewStandardImport.getStandardNumber());
|
data.setStandardNumber(processNewStandardImport.getStandardNumber());
|
||||||
data.setStandardCategory(processNewStandardImport.getStandardCategory());
|
data.setImplementationDate(processNewStandardImport.getImplementationDate());
|
||||||
data.setSubstituteStandardNumber(processNewStandardImport.getSubstituteStandardNumber());
|
data.setSubstituteStandardNumber(processNewStandardImport.getSubstituteStandardNumber());
|
||||||
}
|
}
|
||||||
result.setBusinessInfoDTO(data);
|
result.setBusinessInfoDTO(data);
|
||||||
|
|||||||
Reference in New Issue
Block a user