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 2e4b1b55..e8e37440 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 @@ -487,7 +487,13 @@ public class ProcessHandleServiceImpl implements IProcessHandleService { processInfoVO.setBasicTaskInfoDTO(new BasicTaskInfoDTO()); } - ProcessSnapshot processSnapshot = new ProcessSnapshot(); + ProcessSnapshot processSnapshot; + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(ProcessSnapshot::getTaskId, taskId); + processSnapshot = processSnapshotService.getOne(wrapper); + if (Objects.isNull(processSnapshot)) { + processSnapshot = new ProcessSnapshot(); + } // 根据是否有taskId区分保存来源(待办、草稿) processSnapshot.setProcessInstanceId(basicProcessInfoDTO.getProcessInstanceId()); // 流程实例id @@ -500,7 +506,7 @@ public class ProcessHandleServiceImpl implements IProcessHandleService { processSnapshot.setHandleFile(handleFile); // 流程审批信息-附件 processSnapshot.setUserId(userId); // 用户id processSnapshot.setInfoJsonStr(processInfoVO.getInfoJsonStr());//草稿信息json字符串 - processSnapshotService.save(processSnapshot); + processSnapshotService.saveOrUpdate(processSnapshot); } @Override