From de0a284def3d129981fe11550e6c6095cae38f4b Mon Sep 17 00:00:00 2001 From: liao Date: Wed, 8 Nov 2023 10:30:50 +0800 Subject: [PATCH] =?UTF-8?q?add=20=E6=A0=87=E5=87=86=E6=B3=95=E8=A7=84?= =?UTF-8?q?=E5=85=A5=E5=BA=93/=E5=8F=98=E6=9B=B4=E6=B5=81=E7=A8=8B-?= =?UTF-8?q?=E4=BF=9D=E5=AD=98=E4=B8=BA=E8=8D=89=E7=A8=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../process/common/entity/ProcessDraft.java | 12 ++++++++++ .../ProcessFbEntryChangeController.java | 2 +- .../service/IProcessFbEntryChangeService.java | 2 +- .../impl/ProcessFbEntryChangeServiceImpl.java | 16 +++++++++++++- .../impl/ProcessHandleServiceImpl.java | 22 +++++++++++++++++++ 5 files changed, 51 insertions(+), 3 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/common/entity/ProcessDraft.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/common/entity/ProcessDraft.java index 0dfae906..f79995ba 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/common/entity/ProcessDraft.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/common/entity/ProcessDraft.java @@ -6,6 +6,8 @@ import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import java.io.Serializable; import java.util.Date; + +import io.swagger.annotations.ApiModelProperty; import lombok.Data; /** @@ -66,6 +68,16 @@ public class ProcessDraft implements Serializable { */ private String projectId; + /**流程审批信息-备注*/ + @ApiModelProperty(value = "流程审批信息-备注") + private java.lang.String handleText; + /**流程审批信息-附件*/ + @ApiModelProperty(value = "流程审批信息-附件") + private java.lang.String handleFile; + /**用户id*/ + @ApiModelProperty(value = "用户id") + private java.lang.String userId; + @TableField(exist = false) private static final long serialVersionUID = 1L; } \ No newline at end of file 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 4b147bde..6ab960f3 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 @@ -95,7 +95,7 @@ public class ProcessFbEntryChangeController extends JeroController saveToDraft(@Validated @RequestBody ProcessInfoVO processInfoVO) { + public Result saveToDraft(@Validated @RequestBody ProcessInfoVO processInfoVO) { processFbEntryChangeService.saveToDraft(processInfoVO); return Result.OK(); } 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 90917771..3e3402d4 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 @@ -59,5 +59,5 @@ public interface IProcessFbEntryChangeService extends IService processInfoVO); } 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 f42315ba..86ab2517 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 @@ -163,7 +163,21 @@ public class ProcessFbEntryChangeServiceImpl extends ServiceImpl processInfoVO) { + // 业务信息 + ProcessFbEntryChange businessInfoDTO = processInfoVO.getBusinessInfoDTO(); + if (StringUtils.isBlank(businessInfoDTO.getId())) { // 如果是发起时保存 + String businessId = UUIDUtils.randomUUID20(); + businessInfoDTO.setId(businessId); + addBusinessInfo(businessInfoDTO); + } else { // 如果是审批时保存 + processInfoVO.setBusinessId(businessInfoDTO.getId()); + editBusinessInfo(businessInfoDTO); + } + // 流程信息 + BasicProcessInfoDTO basicProcessInfoDTO = processInfoVO.getBasicProcessInfoDTO(); + basicProcessInfoDTO.setProcessType(ProcessTypeEnum.FB_ENTRY_CHANGE.getValue()); // 流程类型 + processHandleService.saveToDraft(processInfoVO); } } 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 3ee67157..d77c384d 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,11 +1,14 @@ package com.jero.modules.activiti.process.fb.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.jero.common.exception.JeroBootException; import com.jero.modules.activiti.entity.ProcessAll; 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.ProcessTypeEnum; +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.dto.BasicProcessInfoDTO; import com.jero.modules.activiti.process.fb.dto.BasicTaskInfoDTO; import com.jero.modules.activiti.process.fb.dto.ProcessDTO; @@ -55,6 +58,8 @@ public class ProcessHandleServiceImpl implements IProcessHandleService { private ProcessApprovalRecordService processApprovalRecordService; // 任务审批表 @Resource private ProcessNodeLinkService processNodeLinkService; // 流程实例节点关联用户表 + @Resource + private ProcessDraftService processDraftService; // 流程草稿表 /** * @Author: liao @@ -222,7 +227,24 @@ public class ProcessHandleServiceImpl implements IProcessHandleService { **/ @Override public void saveToDraft(ProcessInfoVO processInfoVO) { + BasicProcessInfoDTO basicProcessInfoDTO = processInfoVO.getBasicProcessInfoDTO(); + BasicTaskInfoDTO basicTaskInfoDTO = processInfoVO.getBasicTaskInfoDTO(); + // 添加前先进行旧数据删除 + LambdaQueryWrapper deleteWrapper = new LambdaQueryWrapper<>(); + deleteWrapper.eq(ProcessDraft::getProjectId, processInfoVO.getBusinessId()); + deleteWrapper.eq(ProcessDraft::getUserId, CurrentUserUtil.getId()); + processDraftService.remove(deleteWrapper); + + ProcessDraft processDraft = new ProcessDraft(); + processDraft.setProjectId(processInfoVO.getBusinessId()); // 业务id + processDraft.setProcessInstanceId(basicProcessInfoDTO.getProcessInstanceId()); // 流程实例id + processDraft.setPrcName(basicProcessInfoDTO.getProcessName()); // 流程名称 + processDraft.setPrcType(basicProcessInfoDTO.getProcessType()); // 流程类型 + processDraft.setHandleText(basicTaskInfoDTO.getHandleText()); // 流程审批信息-备注 + processDraft.setHandleFile(basicTaskInfoDTO.getHandleFile()); // 流程审批信息-附件 + processDraft.setUserId(CurrentUserUtil.getId()); // 用户id + processDraftService.save(processDraft); } /**