完善新法规导入流程
This commit is contained in:
+3
-1
@@ -55,7 +55,7 @@ public interface IProcessHandleService {
|
||||
**/
|
||||
void updateProcessAll(ProcessInfoVO processInfoVO);
|
||||
|
||||
|
||||
void updateProcessAllCustomUserId(ProcessInfoVO processInfoVO, String userId);
|
||||
/**
|
||||
* @Author: liao
|
||||
* @Date: 2023/11/3 10:52
|
||||
@@ -63,6 +63,8 @@ public interface IProcessHandleService {
|
||||
**/
|
||||
void updateApprovalRecord(ProcessInfoVO processInfoVO);
|
||||
|
||||
void saveToDraft(ProcessInfoVO processInfoVO);
|
||||
|
||||
/**
|
||||
* @Author: liao
|
||||
* @Date: 2023/11/3 11:13
|
||||
|
||||
+63
@@ -299,6 +299,69 @@ public class ProcessHandleServiceImpl implements IProcessHandleService {
|
||||
processApprovalRecordService.updateById(approvalRecord);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void saveToDraft(ProcessInfoVO processInfoVO) {
|
||||
this.saveToDraft(processInfoVO, CurrentUserUtil.getId());
|
||||
}
|
||||
|
||||
private void saveToDraft(ProcessInfoVO processInfoVO, String userId) {
|
||||
BasicProcessInfoDTO basicProcessInfoDTO = processInfoVO.getBasicProcessInfoDTO();
|
||||
BasicTaskInfoDTO basicTaskInfoDTO = processInfoVO.getBasicTaskInfoDTO();
|
||||
String taskId = null;
|
||||
String handleText = null;
|
||||
String handleFile = null;
|
||||
if (basicTaskInfoDTO != null) {
|
||||
taskId = basicTaskInfoDTO.getTaskId();
|
||||
handleText = basicTaskInfoDTO.getHandleText();
|
||||
handleFile = basicTaskInfoDTO.getHandleFile();
|
||||
} else {
|
||||
processInfoVO.setBasicTaskInfoDTO(new BasicTaskInfoDTO());
|
||||
}
|
||||
|
||||
// 保存
|
||||
updateProcessAllCustomUserId(processInfoVO, userId);
|
||||
updateApprovalRecord(processInfoVO);
|
||||
|
||||
// 删除自己的草稿
|
||||
ProcessDraft processDraft = new ProcessDraft();
|
||||
|
||||
String draftId = processInfoVO.getDraftId();
|
||||
if (StringUtils.isNotBlank(draftId)) {
|
||||
processDraft.setId(draftId);
|
||||
//processDraftService.removeById(draftId);
|
||||
}
|
||||
// 根据是否有taskId区分保存来源(待办、草稿)
|
||||
processDraft.setProjectId(processInfoVO.getBusinessId()); // 业务id
|
||||
processDraft.setProcessInstanceId(basicProcessInfoDTO.getProcessInstanceId()); // 流程实例id
|
||||
processDraft.setPrcName(basicProcessInfoDTO.getProcessName()); // 流程名称
|
||||
processDraft.setPrcType(basicProcessInfoDTO.getProcessType()); // 流程类型
|
||||
processDraft.setProcessDueDate(basicProcessInfoDTO.getProcessDueDate()); // 流程信息-截止日期
|
||||
processDraft.setProcessDescription(basicProcessInfoDTO.getProcessDescription()); // 流程信息-流程说明
|
||||
processDraft.setTaskId(taskId); // 任务id
|
||||
processDraft.setHandleText(handleText); // 流程审批信息-备注
|
||||
processDraft.setHandleFile(handleFile); // 流程审批信息-附件
|
||||
processDraft.setUserId(userId); // 用户id
|
||||
processDraft.setInfoJsonStr(processInfoVO.getInfoJsonStr());//草稿信息json字符串
|
||||
processDraft.setSaveSource(processInfoVO.getSaveSource());//来源(启动流程时有用,用于保存初始业务信息用于强制驳回)
|
||||
processDraftService.saveOrUpdate(processDraft);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateProcessAllCustomUserId(ProcessInfoVO processInfoVO, String userId) {
|
||||
BasicProcessInfoDTO basicProcessInfoDTO = processInfoVO.getBasicProcessInfoDTO();
|
||||
ProcessAll process = processAllService.getByProcessInstanceId(basicProcessInfoDTO.getProcessInstanceId());
|
||||
if (Objects.isNull(process)) {
|
||||
process = new ProcessAll();
|
||||
}
|
||||
process.setPrcName(basicProcessInfoDTO.getProcessName()); // 流程名称
|
||||
process.setMes(basicProcessInfoDTO.getProcessDescription()); // 流程说明
|
||||
process.setPrcMes(basicProcessInfoDTO.getProcessDescription()); // 流程说明
|
||||
process.setDueTime(basicProcessInfoDTO.getProcessDueDate()); // 流程截止时间
|
||||
process.setPrcType(basicProcessInfoDTO.getProcessType()); // 流程类型
|
||||
process.setProjectId(processInfoVO.getBusinessId()); // 业务id
|
||||
processAllService.updateById(process);
|
||||
}
|
||||
|
||||
/**
|
||||
* @Author: liao
|
||||
* @Date: 2023/11/9 16:46
|
||||
|
||||
+13
@@ -51,6 +51,19 @@ public class ProcessNewStandardImportController extends JeroController<ProcessNe
|
||||
return Result.OK();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 保存到草稿
|
||||
* @param processInfoVO
|
||||
*/
|
||||
@AutoLog(value = "企标废止发起流程-保存")
|
||||
@ApiOperation(value="企标废止发起流程-保存", notes="企标废止发起流程-保存")
|
||||
@PostMapping("/save")
|
||||
public Result<?> save(@Validated @RequestBody ProcessInfoVO<ProcessNewStandardImport> processInfoVO) {
|
||||
sccService.saveToDraft(processInfoVO);
|
||||
return Result.OK();
|
||||
}
|
||||
|
||||
@AutoLog(value = "新法规导入流程-同意")
|
||||
@ApiOperation(value = "新法规导入流程-同意", notes = "新法规导入流程-同意")
|
||||
@PostMapping("/agree")
|
||||
|
||||
+2
@@ -15,6 +15,8 @@ public interface IProcessNewStandardImportService extends IService<ProcessNewSta
|
||||
|
||||
void startProcess(ProcessInfoVO<ProcessNewStandardImport> processInfoVO);
|
||||
|
||||
void saveToDraft(ProcessInfoVO<ProcessNewStandardImport> processInfoVO);
|
||||
|
||||
void approveTask(ProcessInfoVO<ProcessNewStandardImport> processInfoVO, boolean b);
|
||||
|
||||
ProcessInfoVO<ProcessNewStandardImport> getHandleData(String taskId);
|
||||
|
||||
+28
-1
@@ -1,7 +1,9 @@
|
||||
package com.jero.modules.activiti.process.ni.service.impl;
|
||||
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.common.constant.enums.YesOrNoEnum;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.modules.activiti.entity.ProcessAll;
|
||||
import com.jero.modules.activiti.entity.ProcessApprovalRecord;
|
||||
@@ -10,6 +12,7 @@ import com.jero.modules.activiti.process.common.enums.ProcessType;
|
||||
import com.jero.modules.activiti.process.common.service.ActFlowCommonService;
|
||||
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.service.IProcessHandleService;
|
||||
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.mapper.ProcessNewStandardImportMapper;
|
||||
@@ -56,6 +59,9 @@ public class ProcessNewStandardImportServiceImpl extends ServiceImpl<ProcessNewS
|
||||
@Resource
|
||||
private RuntimeService runtimeService;
|
||||
|
||||
@Resource
|
||||
private IProcessHandleService processHandleService;
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = JeroBootException.class)
|
||||
public void startProcess(ProcessInfoVO<ProcessNewStandardImport> processInfoVO) {
|
||||
@@ -91,7 +97,7 @@ public class ProcessNewStandardImportServiceImpl extends ServiceImpl<ProcessNewS
|
||||
// 获取第一个任务的taskId
|
||||
String taskId = actFlowCommonService.getFirstTaskId(processInstanceId, userId, processDefinitionId);
|
||||
// 保存第一个节点的草稿
|
||||
actFlowCommonService.saveFirstNodeDraft(processInfoVO, userId);
|
||||
processHandleService.saveToDraft(processInfoVO);
|
||||
// 更新审批表为完成,填充数据
|
||||
actFlowCommonService.updateApprovalInfo(processTask, taskId);
|
||||
// 自动完成第一个任务
|
||||
@@ -100,6 +106,15 @@ public class ProcessNewStandardImportServiceImpl extends ServiceImpl<ProcessNewS
|
||||
actFlowCommonService.updateProcessAll(processInfo);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void saveToDraft(ProcessInfoVO<ProcessNewStandardImport> processInfoVO) {
|
||||
// 流程信息
|
||||
BasicProcessInfoDTO basicProcessInfoDTO = processInfoVO.getBasicProcessInfoDTO();
|
||||
// 流程类型
|
||||
basicProcessInfoDTO.setProcessType(ProcessTypeEnum.NEW_STANDARD_IMPORT.getValue());
|
||||
processHandleService.saveToDraft(processInfoVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 第一个节点业务数据处理
|
||||
* @param processInfoVO
|
||||
@@ -182,12 +197,24 @@ public class ProcessNewStandardImportServiceImpl extends ServiceImpl<ProcessNewS
|
||||
String processInstanceId = actFlowCommonService.getProcessInstanceIdByTaskId(taskId);
|
||||
// 获取流程通用数据
|
||||
ProcessAll process = processAllService.getByProcessInstanceId(processInstanceId);
|
||||
BasicProcessInfoDTO basicProcessInfoDTO = new BasicProcessInfoDTO();
|
||||
basicProcessInfoDTO.setProcessName(process.getPrcName());
|
||||
basicProcessInfoDTO.setProcessType(process.getPrcType());
|
||||
basicProcessInfoDTO.setProcessDefinitionId(process.getProcessDefinitionId());
|
||||
basicProcessInfoDTO.setProcessInstanceId(process.getProcessInstanceId());
|
||||
basicProcessInfoDTO.setProcessDescription(process.getPrcMes());
|
||||
basicProcessInfoDTO.setProcessDueDate(process.getDueTime());
|
||||
result.setBasicProcessInfoDTO(basicProcessInfoDTO);
|
||||
ProcessApprovalRecord record = actFlowCommonService.getNodeIdByTaskId(taskId);
|
||||
String xmlNodeId = record.getNodeId();
|
||||
// 设置流程信息
|
||||
switch (xmlNodeId) {
|
||||
//TODO
|
||||
}
|
||||
LambdaQueryWrapper<ProcessNewStandardImport> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper.eq(ProcessNewStandardImport::getProcessInstanceId, processInstanceId);
|
||||
ProcessNewStandardImport data = getOne(lambdaQueryWrapper);
|
||||
result.setBusinessInfoDTO(data);
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user