diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/controller/ProcessFbEntryChangeController.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/controller/ProcessFbEntryChangeController.java index 374f2c2c..775eca0b 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/controller/ProcessFbEntryChangeController.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/controller/ProcessFbEntryChangeController.java @@ -42,8 +42,8 @@ public class ProcessFbEntryChangeController extends JeroController> queryProcessInfoVO(String draftId, String processInstanceId, String taskId){ - ProcessInfoVO processInfoVO = processFbEntryChangeService.queryProcessInfoVO(draftId, processInstanceId, taskId); + public Result> queryProcessInfoVO(String draftId, String processInstanceId, String taskId, String projectId){ + ProcessInfoVO processInfoVO = processFbEntryChangeService.queryProcessInfoVO(draftId, processInstanceId, taskId, projectId); return Result.OK(processInfoVO); } diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/controller/ProcessFbStandardConsultationController.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/controller/ProcessFbStandardConsultationController.java index 652a71e9..08b13f90 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/controller/ProcessFbStandardConsultationController.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/controller/ProcessFbStandardConsultationController.java @@ -3,22 +3,21 @@ package com.jero.modules.activiti.process.fb.controller; import com.jero.common.api.vo.Result; import com.jero.common.aspect.annotation.AutoLog; import com.jero.common.aspect.annotation.DictPoint; +import com.jero.common.system.base.controller.JeroController; import com.jero.modules.activiti.process.common.entity.TransferVO; -import com.jero.modules.activiti.process.fb.entity.ProcessFbEntryChange; import com.jero.modules.activiti.process.fb.entity.ProcessFbStandardConsultation; import com.jero.modules.activiti.process.fb.service.IProcessFbStandardConsultationService; import com.jero.modules.activiti.process.fb.vo.ProcessFbStandardConsultationVO; import com.jero.modules.activiti.process.fb.vo.ProcessInfoVO; +import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; -import com.jero.common.system.base.controller.JeroController; import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; -import io.swagger.annotations.Api; /** @@ -44,8 +43,8 @@ public class ProcessFbStandardConsultationController extends JeroController> queryProcessInfoVO(String draftId, String processInstanceId, String taskId){ - ProcessInfoVO processInfoVO = processFbStandardConsultationService.queryProcessInfoVO(draftId, processInstanceId, taskId); + public Result> queryProcessInfoVO(String draftId, String processInstanceId, String taskId, String projectId){ + ProcessInfoVO processInfoVO = processFbStandardConsultationService.queryProcessInfoVO(draftId, processInstanceId, taskId, projectId); return Result.OK(processInfoVO); } diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/controller/ProcessFbStandardPurchaseController.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/controller/ProcessFbStandardPurchaseController.java index 30cb16db..ca21d916 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/controller/ProcessFbStandardPurchaseController.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/controller/ProcessFbStandardPurchaseController.java @@ -43,8 +43,8 @@ public class ProcessFbStandardPurchaseController extends JeroController>> queryProcessInfoVO(String draftId, String processInstanceId, String taskId){ - ProcessInfoVO> processInfoVO = processFbStandardPurchaseService.queryProcessInfoVO(draftId, processInstanceId, taskId); + public Result>> queryProcessInfoVO(String draftId, String processInstanceId, String taskId, String projectId){ + ProcessInfoVO> processInfoVO = processFbStandardPurchaseService.queryProcessInfoVO(draftId, processInstanceId, taskId, projectId); return Result.OK(processInfoVO); } diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/IProcessFbEntryChangeService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/IProcessFbEntryChangeService.java index 5130363a..ebff6adb 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/IProcessFbEntryChangeService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/IProcessFbEntryChangeService.java @@ -58,5 +58,5 @@ public interface IProcessFbEntryChangeService extends IService queryProcessInfoVO(String draftId, String processInstanceId, String taskId); + ProcessInfoVO queryProcessInfoVO(String draftId, String processInstanceId, String taskId, String projectId); } diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/IProcessFbStandardConsultationService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/IProcessFbStandardConsultationService.java index 5df35ede..47a25bdf 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/IProcessFbStandardConsultationService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/IProcessFbStandardConsultationService.java @@ -56,7 +56,7 @@ public interface IProcessFbStandardConsultationService extends IService queryProcessInfoVO(String draftId, String processInstanceId, String taskId); + ProcessInfoVO queryProcessInfoVO(String draftId, String processInstanceId, String taskId, String projectId); /** * @Author: liao diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/IProcessFbStandardPurchaseService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/IProcessFbStandardPurchaseService.java index 7a9dcc73..de667bf8 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/IProcessFbStandardPurchaseService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/IProcessFbStandardPurchaseService.java @@ -20,7 +20,7 @@ public interface IProcessFbStandardPurchaseService extends IService> queryProcessInfoVO(String draftId, String processInstanceId, String taskId); + ProcessInfoVO> queryProcessInfoVO(String draftId, String processInstanceId, String taskId, String projectId); /** * @Author: liao diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/IProcessHandleService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/IProcessHandleService.java index a0415c9a..e8a4fc9b 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/IProcessHandleService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/IProcessHandleService.java @@ -3,7 +3,6 @@ package com.jero.modules.activiti.process.fb.service; import com.jero.modules.activiti.process.fb.dto.ProcessDTO; import com.jero.modules.activiti.process.fb.vo.ProcessInfoVO; import org.activiti.engine.runtime.ProcessInstance; -import org.apache.poi.ss.formula.functions.T; import java.util.List; import java.util.Map; @@ -93,6 +92,7 @@ public interface IProcessHandleService { **/ void deleteMyDraft(String taskId, String businessId, Integer processType); + /** * @Author: liao * @Date: 2023/11/8 11:16 @@ -100,6 +100,13 @@ public interface IProcessHandleService { **/ ProcessInfoVO queryProcessInfoVO(String draftId, String processInstanceId, String taskId); + /** + * @Author: liao + * @Date: 2023/11/8 11:16 + * @Description: 查询流程信息 + **/ + ProcessInfoVO queryProcessInfoVO(String draftId, String processInstanceId, String taskId, String projectId); + /** * @Author: liao * @Date: 2023/11/8 13:36 diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessFbEntryChangeServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessFbEntryChangeServiceImpl.java index 8a6d69e0..c556d46a 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessFbEntryChangeServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessFbEntryChangeServiceImpl.java @@ -2,9 +2,12 @@ package com.jero.modules.activiti.process.fb.service.impl; import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.jero.common.api.dto.message.SendMessageDTO; +import com.jero.common.api.vo.ResultCommon; import com.jero.common.api.vo.SendMessageAPI; import com.jero.common.constant.enums.YesOrNoEnum; +import com.jero.common.exception.JeroBootException; import com.jero.common.util.UUIDUtils; import com.jero.modules.activiti.enums.ProcessTypeEnum; import com.jero.modules.activiti.process.fb.common.ProcessDefinitionKey; @@ -14,25 +17,19 @@ import com.jero.modules.activiti.process.fb.mapper.ProcessFbEntryChangeMapper; import com.jero.modules.activiti.process.fb.service.IProcessFbEntryChangeService; import com.jero.modules.activiti.process.fb.service.IProcessHandleService; import com.jero.modules.activiti.process.fb.vo.ProcessInfoVO; -import com.jero.modules.laws.common.constant.DictCommon; import com.jero.modules.laws.common.constant.FieldCommon; -import com.jero.common.api.vo.ResultCommon; import com.jero.modules.laws.common.constant.MessageTemplateCodeCommon; import com.jero.modules.laws.common.mapper.LawsCommonMapper; import com.jero.modules.laws.common.service.ILawsCommonService; import com.jero.modules.laws.common.util.CurrentUserUtil; import com.jero.modules.laws.standard.entity.LawsEnterpriseStandard; import com.jero.modules.laws.standard.service.ILawsEnterpriseStandardService; -import com.jero.modules.system.entity.SysDictItem; import com.jero.modules.tag.entity.LawsTag; import com.jero.modules.tag.enums.TableNameEnum; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import com.jero.common.exception.JeroBootException; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import javax.annotation.Resource; import java.util.*; @@ -326,8 +323,8 @@ public class ProcessFbEntryChangeServiceImpl extends ServiceImpl queryProcessInfoVO(String draftId, String processInstanceId, String taskId) { - ProcessInfoVO processInfoVO = processHandleService.queryProcessInfoVO(draftId, processInstanceId, taskId); + public ProcessInfoVO queryProcessInfoVO(String draftId, String processInstanceId, String taskId, String projectId) { + ProcessInfoVO processInfoVO = processHandleService.queryProcessInfoVO(draftId, processInstanceId, taskId, projectId); ProcessFbEntryChange processFbEntryChange = getById(processInfoVO.getBusinessId()); Map map = JSON.parseObject(processFbEntryChange.getBusinessJson(), Map.class); diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessFbStandardConsultationServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessFbStandardConsultationServiceImpl.java index 2fcd3bd2..6a11f5ca 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessFbStandardConsultationServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessFbStandardConsultationServiceImpl.java @@ -310,8 +310,8 @@ public class ProcessFbStandardConsultationServiceImpl extends ServiceImpl queryProcessInfoVO(String draftId, String processInstanceId, String taskId) { - ProcessInfoVO processInfoVO = processHandleService.queryProcessInfoVO(draftId, processInstanceId, taskId); + public ProcessInfoVO queryProcessInfoVO(String draftId, String processInstanceId, String taskId, String projectId) { + ProcessInfoVO processInfoVO = processHandleService.queryProcessInfoVO(draftId, processInstanceId, taskId, projectId); ProcessFbStandardConsultationVO processFbStandardConsultationVO = new ProcessFbStandardConsultationVO(); processInfoVO.setBusinessInfoDTO(processFbStandardConsultationVO); diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessFbStandardPurchaseServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessFbStandardPurchaseServiceImpl.java index 90986c29..6e7b4cff 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessFbStandardPurchaseServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessFbStandardPurchaseServiceImpl.java @@ -1,13 +1,14 @@ package com.jero.modules.activiti.process.fb.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.jero.common.api.vo.ResultCommon; +import com.jero.common.exception.JeroBootException; import com.jero.common.system.base.controller.JeroController; import com.jero.common.util.UUIDUtils; import com.jero.modules.activiti.enums.ProcessTypeEnum; import com.jero.modules.activiti.process.fb.common.ProcessDefinitionKey; import com.jero.modules.activiti.process.fb.dto.BasicProcessInfoDTO; -import com.jero.modules.activiti.process.fb.entity.ProcessFbEntryChange; import com.jero.modules.activiti.process.fb.entity.ProcessFbStandardPurchase; import com.jero.modules.activiti.process.fb.mapper.ProcessFbStandardPurchaseMapper; import com.jero.modules.activiti.process.fb.service.IProcessFbStandardPurchaseService; @@ -20,11 +21,8 @@ import org.apache.commons.lang3.StringUtils; import org.jeecgframework.poi.excel.def.NormalExcelConstants; import org.jeecgframework.poi.excel.entity.ExportParams; import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; -import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import com.jero.common.exception.JeroBootException; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.web.servlet.ModelAndView; import javax.annotation.Resource; @@ -52,8 +50,8 @@ public class ProcessFbStandardPurchaseServiceImpl extends ServiceImpl> queryProcessInfoVO(String draftId, String processInstanceId, String taskId) { - ProcessInfoVO processInfoVO = processHandleService.queryProcessInfoVO(draftId, processInstanceId, taskId); + public ProcessInfoVO> queryProcessInfoVO(String draftId, String processInstanceId, String taskId, String projectId) { + ProcessInfoVO processInfoVO = processHandleService.queryProcessInfoVO(draftId, processInstanceId, taskId, projectId); LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(ProcessFbStandardPurchase::getBusinessId, processInfoVO.getBusinessId()); diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessHandleServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessHandleServiceImpl.java index 702588ae..e924831e 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessHandleServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessHandleServiceImpl.java @@ -1,7 +1,8 @@ package com.jero.modules.activiti.process.fb.service.impl; -import cn.hutool.core.collection.CollStreamUtil; 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.exception.JeroBootException; import com.jero.modules.activiti.entity.ProcessAll; import com.jero.modules.activiti.entity.ProcessApprovalRecord; @@ -11,7 +12,6 @@ import com.jero.modules.activiti.enums.CommitFlagEnum; import com.jero.modules.activiti.enums.FinishFlagEnum; import com.jero.modules.activiti.process.common.entity.ProcessDraft; import com.jero.modules.activiti.process.common.service.ProcessDraftService; -import com.jero.modules.activiti.process.fb.common.FbCommon; 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.ProcessDTO; @@ -20,7 +20,6 @@ import com.jero.modules.activiti.process.fb.vo.ProcessInfoVO; import com.jero.modules.activiti.service.ProcessAllService; import com.jero.modules.activiti.service.ProcessApprovalRecordService; import com.jero.modules.activiti.service.ProcessNodeLinkService; -import com.jero.common.api.vo.ResultCommon; import com.jero.modules.activiti.service.ProcessNodeService; import com.jero.modules.laws.common.util.CurrentUserUtil; import lombok.extern.slf4j.Slf4j; @@ -28,13 +27,9 @@ import org.activiti.engine.HistoryService; import org.activiti.engine.RepositoryService; import org.activiti.engine.RuntimeService; import org.activiti.engine.TaskService; -import org.activiti.engine.history.HistoricTaskInstance; -import org.activiti.engine.history.HistoricTaskInstanceQuery; import org.activiti.engine.runtime.Execution; -import org.activiti.engine.runtime.ExecutionQuery; import org.activiti.engine.runtime.ProcessInstance; import org.activiti.engine.task.Task; -import org.activiti.engine.task.TaskInfo; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -71,6 +66,8 @@ public class ProcessHandleServiceImpl implements IProcessHandleService { @Resource private ProcessDraftService processDraftService; // 流程草稿表 + private static final String SAVE_BY_DRAFT = "2"; + /** * @Author: liao * @Date: 2023/11/2 17:04 @@ -169,6 +166,36 @@ public class ProcessHandleServiceImpl implements IProcessHandleService { System.out.println("任务id: " + taskId); System.out.println("变量: " + variables); System.out.println("======================================================================="); + + if (!pass) { + log.info("==========流程驳回,若驳回到的节点之前经过转办,则驳回到转办人手里方法开始=========="); + // 驳回的节点 + List processApprovalRecordList = processApprovalRecordService.list( + new LambdaQueryWrapper() + .eq(ProcessApprovalRecord::getProcessInstanceId, processInstanceId) + .orderByDesc(ProcessApprovalRecord::getCreateTime)); + if (!processApprovalRecordList.isEmpty()){ + ProcessApprovalRecord processApprovalRecord = processApprovalRecordList.get(0); + processApprovalRecordList.remove(0); + Optional optional = processApprovalRecordList.stream().filter(v -> + v.getTaskName().equals(processApprovalRecord.getTaskName()) + && v.getNodeId().equals(processApprovalRecord.getNodeId())).findFirst(); + optional.ifPresent(v -> { + // 是否转办过 + if (StringUtils.isNotBlank(v.getTransferBy())){ + // 转办给转办人 + taskService.setAssignee(processApprovalRecord.getTaskId(), v.getUserId()); + // 更新流程审批记录表 + processApprovalRecordService.update( + new LambdaUpdateWrapper() + .eq(ProcessApprovalRecord::getTaskId, processApprovalRecord.getTaskId()) + .set(ProcessApprovalRecord::getUserId, v.getUserId()) + .set(ProcessApprovalRecord::getOriginUserId, v.getUserId())); + } + }); + } + log.info("==========流程驳回,若驳回到的节点之前经过转办,则驳回到转办人手里方法结束=========="); + } } /** @@ -309,21 +336,24 @@ public class ProcessHandleServiceImpl implements IProcessHandleService { // 删除自己的草稿 deleteMyDraft(taskId, processInfoVO.getBusinessId(), basicProcessInfoDTO.getProcessType()); + // 非发起节点不保存到草稿 + BasicTaskInfoDTO basicTaskInfoDTO1 = processInfoVO.getBasicTaskInfoDTO(); + if (StringUtils.isBlank(basicTaskInfoDTO1.getTaskId()) || SAVE_BY_DRAFT.equals(processInfoVO.getSaveSource())){ + ProcessDraft processDraft = new ProcessDraft(); + 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(CurrentUserUtil.getId()); // 用户id + processDraft.setInfoJsonStr(processInfoVO.getInfoJsonStr());//草稿信息json字符串 - ProcessDraft processDraft = new ProcessDraft(); - 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(CurrentUserUtil.getId()); // 用户id - processDraft.setInfoJsonStr(processInfoVO.getInfoJsonStr());//草稿信息json字符串 - - processDraftService.save(processDraft); + processDraftService.save(processDraft); + } } @Override @@ -392,6 +422,64 @@ public class ProcessHandleServiceImpl implements IProcessHandleService { .singleResult().getId(); } + /** + * @Author: liao + * @Date: 2023/11/8 11:16 + * @Description: 查询流程信息 + **/ + @Override + public ProcessInfoVO queryProcessInfoVO(String draftId, String processInstanceId, String taskId, String projectId) { + if (StringUtils.isBlank(draftId) && StringUtils.isBlank(taskId)) { + throw new JeroBootException(ResultCommon.NO_PERMISSION); + } + if (StringUtils.isNotBlank(taskId)) { + isMyTask(taskId); + } + + ProcessInfoVO processInfoVO = new ProcessInfoVO(); + // 流程信息 + BasicProcessInfoDTO basicProcessInfoDTO = new BasicProcessInfoDTO(); + processInfoVO.setBasicProcessInfoDTO(basicProcessInfoDTO); + // 审批信息 + BasicTaskInfoDTO basicTaskInfoDTO = new BasicTaskInfoDTO(); + processInfoVO.setBasicTaskInfoDTO(basicTaskInfoDTO); + + // 流程信息 + if (StringUtils.isNotBlank(projectId)) { +// ProcessAll processAll = processAllService.getByProcessInstanceId(processInstanceId); + ProcessAll processAll = processAllService.getOne(new LambdaQueryWrapper().eq(ProcessAll::getProjectId, projectId), false); + if (!Objects.isNull(processAll)) { + basicProcessInfoDTO.setProcessInstanceId(processAll.getProcessInstanceId()); + basicProcessInfoDTO.setProcessType(processAll.getPrcType()); + basicProcessInfoDTO.setProcessName(processAll.getPrcName()); + basicProcessInfoDTO.setProcessDescription(processAll.getMes()); + basicProcessInfoDTO.setProcessDueDate(processAll.getDueTime()); + processInfoVO.setBusinessId(processAll.getProjectId()); + } + } + + // 审批信息 + if (StringUtils.isNotBlank(draftId)) { + ProcessDraft processDraft = processDraftService.getById(draftId); + if (!CurrentUserUtil.getId().equals(processDraft.getUserId())) { + throw new JeroBootException(ResultCommon.NO_PERMISSION); + } + if (!Objects.isNull(processDraft)) { + basicTaskInfoDTO.setTaskId(processDraft.getTaskId()); + basicTaskInfoDTO.setHandleText(processDraft.getHandleText()); + basicTaskInfoDTO.setHandleFile(processDraft.getHandleFile()); + processInfoVO.setDraftId(draftId); + basicProcessInfoDTO.setProcessType(processDraft.getPrcType()); + basicProcessInfoDTO.setProcessName(processDraft.getPrcName()); + basicProcessInfoDTO.setProcessDescription(processDraft.getProcessDescription()); + basicProcessInfoDTO.setProcessDueDate(processDraft.getProcessDueDate()); + processInfoVO.setInfoJsonStr(processDraft.getInfoJsonStr()); + } + } + + return processInfoVO; + } + /** * @Author: liao * @Date: 2023/11/8 11:16 @@ -442,6 +530,7 @@ public class ProcessHandleServiceImpl implements IProcessHandleService { basicProcessInfoDTO.setProcessName(processDraft.getPrcName()); basicProcessInfoDTO.setProcessDescription(processDraft.getProcessDescription()); basicProcessInfoDTO.setProcessDueDate(processDraft.getProcessDueDate()); + processInfoVO.setInfoJsonStr(processDraft.getInfoJsonStr()); } }