From 3cbfc1624bb7a23a4dfa62ec4558578b00be56b3 Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期二, 04 三月 2025 21:59:55 +0800 Subject: [PATCH] 流程日志查询bug、督办日志bug --- business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java | 4 ++-- business/src/main/java/com/ycl/service/impl/FlowTaskServiceImpl.java | 6 +++--- flowable/src/main/resources/mapper/ProcessLogMapper.xml | 1 + flowable/src/main/java/com/ycl/domain/query/ProcessLogQuery.java | 5 +++++ business/src/main/java/com/ycl/service/impl/ProcessLogServiceImpl.java | 13 ++++++++----- 5 files changed, 19 insertions(+), 10 deletions(-) diff --git a/business/src/main/java/com/ycl/service/impl/FlowTaskServiceImpl.java b/business/src/main/java/com/ycl/service/impl/FlowTaskServiceImpl.java index f943d23..c41b7db 100644 --- a/business/src/main/java/com/ycl/service/impl/FlowTaskServiceImpl.java +++ b/business/src/main/java/com/ycl/service/impl/FlowTaskServiceImpl.java @@ -1304,7 +1304,7 @@ } // 鍒ゆ柇浠诲姟鏄惁瀛樺湪鐗规畩鎿嶄綔(濡傝烦杩囥�佽浆鍔炵瓑)锛岄渶瑕佸湪鍓嶇灞曠ず鍑烘潵 ProcessLogQuery query = new ProcessLogQuery(); - query.setTaskId(taskId); + query.setTaskDefKey(node.getUserTask().getId()); query.setProcessInsId(finalProcessInsId); Result result = processLogService.projectProcessLogPage(query); List<ProcessLogVO> logList = (List<ProcessLogVO>) result.get("data"); @@ -1375,7 +1375,7 @@ } // 鍒ゆ柇浠诲姟鏄惁瀛樺湪鐗规畩鎿嶄綔(濡傝烦杩囥�佽浆鍔炵瓑)锛岄渶瑕佸湪鍓嶇灞曠ず鍑烘潵 ProcessLogQuery query = new ProcessLogQuery(); - query.setTaskId(hisTask.getId()); + query.setTaskDefKey(node.getUserTask().getId()); query.setProcessInsId(hisTask.getProcessInstanceId()); Result result = processLogService.projectProcessLogPage(query); List<ProcessLogVO> logList = (List<ProcessLogVO>) result.get("data"); @@ -1427,7 +1427,7 @@ } // 鍒ゆ柇浠诲姟鏄惁瀛樺湪鐗规畩鎿嶄綔(濡傝烦杩囥�佽浆鍔炵瓑)锛岄渶瑕佸湪鍓嶇灞曠ず鍑烘潵 ProcessLogQuery query = new ProcessLogQuery(); - query.setTaskId(task.getId()); + query.setTaskDefKey(node.getUserTask().getId()); query.setProcessInsId(task.getProcessInstanceId()); Result result = processLogService.projectProcessLogPage(query); List<ProcessLogVO> logList = (List<ProcessLogVO>) result.get("data"); diff --git a/business/src/main/java/com/ycl/service/impl/ProcessLogServiceImpl.java b/business/src/main/java/com/ycl/service/impl/ProcessLogServiceImpl.java index 9773792..f67a65e 100644 --- a/business/src/main/java/com/ycl/service/impl/ProcessLogServiceImpl.java +++ b/business/src/main/java/com/ycl/service/impl/ProcessLogServiceImpl.java @@ -178,12 +178,15 @@ } else if (ProcessLogEventTypeEnum.REJECT.equals(log.getEventType())) { log.setEventDataObj(JSON.parseObject(log.getEventDataJson(), RejectData.class)); } else if (ProcessLogEventTypeEnum.SUPERVISE.equals(log.getEventType())) { - SuperviseData superviseData = JSON.parseObject(log.getEventDataJson(), SuperviseData.class); - SysUser user = userService.selectUserById(Long.parseLong(superviseData.getSenderId())); - if (Objects.nonNull(user)) { - superviseData.setSenderName(user.getNickName() + "(" + (Objects.nonNull(user.getDept()) ? user.getDept().getDeptName() : "鏃犻儴闂�") + ")"); + List<SuperviseData> superviseDataList = JSON.parseArray(log.getEventDataJson(), SuperviseData.class); + if (CollectionUtils.isNotEmpty(superviseDataList)) { + SysUser user = userService.selectUserById(Long.parseLong(superviseDataList.get(0).getSenderId())); + if (Objects.nonNull(user)) { + superviseDataList.get(0).setSenderName(user.getNickName() + "(" + (Objects.nonNull(user.getDept()) ? user.getDept().getDeptName() : "鏃犻儴闂�") + ")"); + } + log.setEventDataObj(superviseDataList.get(0)); } - log.setEventDataObj(superviseData); + } else if (ProcessLogEventTypeEnum.HANGUP.equals(log.getEventType())) { log.setEventDataObj(JSON.parseObject(log.getEventDataJson(), HangupData.class)); } diff --git a/business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java b/business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java index 8056e84..23c7f21 100644 --- a/business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java +++ b/business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java @@ -761,7 +761,7 @@ ProcessLog processLog = new LambdaQueryChainWrapper<>(processLogService.getBaseMapper()) .eq(ProcessLog::getTaskId, form.getTaskId()) .eq(ProcessLog::getEventType, ProcessLogEventTypeEnum.SUPERVISE) - .eq(ProcessLog::getProcessInsId, form.getProcessInsId()) + .eq(ProcessLog::getProcessInsId, task.getProcessInstanceId()) .one(); List<SuperviseData> dataList; if (processLog != null) { @@ -778,7 +778,7 @@ processLog.getId(), processLog.getUserId(), form.getProjectId(), - form.getProcessInsId(), + task.getProcessInstanceId(), form.getTaskId(), task.getTaskDefinitionKey(), task.getName(), diff --git a/flowable/src/main/java/com/ycl/domain/query/ProcessLogQuery.java b/flowable/src/main/java/com/ycl/domain/query/ProcessLogQuery.java index 9e7fb6e..000437a 100644 --- a/flowable/src/main/java/com/ycl/domain/query/ProcessLogQuery.java +++ b/flowable/src/main/java/com/ycl/domain/query/ProcessLogQuery.java @@ -30,6 +30,11 @@ private String taskId; /** + * 浠诲姟瀹氫箟key + */ + private String taskDefKey; + + /** * 娴佺▼瀹炰緥id */ private String processInsId; diff --git a/flowable/src/main/resources/mapper/ProcessLogMapper.xml b/flowable/src/main/resources/mapper/ProcessLogMapper.xml index 6319ad0..8b788c5 100644 --- a/flowable/src/main/resources/mapper/ProcessLogMapper.xml +++ b/flowable/src/main/resources/mapper/ProcessLogMapper.xml @@ -76,6 +76,7 @@ TFL.deleted = 0 AND TFL.process_ins_id = #{query.processInsId} <if test="query.taskId != null and query.taskId != ''">AND TFL.task_id = #{query.taskId}</if> <if test="query.projectId != null and query.projectId != ''">AND TFL.project_id = #{query.projectId}</if> + <if test="query.taskDefKey != null and query.taskDefKey != ''">AND TFL.task_def_key = #{query.taskDefKey}</if> ORDER BY TFL.gmt_create DESC </select> -- Gitblit v1.8.0