From f20fad8125774e487e133e909b323b43bd11db24 Mon Sep 17 00:00:00 2001 From: zxl <763096477@qq.com> Date: 星期一, 03 三月 2025 20:40:15 +0800 Subject: [PATCH] Merge branch 'master' into dev --- business/src/main/java/com/ycl/service/impl/FlowTaskServiceImpl.java | 36 +++++++++++++++++++----------------- 1 files changed, 19 insertions(+), 17 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 8c3ec5f..fd94884 100644 --- a/business/src/main/java/com/ycl/service/impl/FlowTaskServiceImpl.java +++ b/business/src/main/java/com/ycl/service/impl/FlowTaskServiceImpl.java @@ -155,28 +155,18 @@ return AjaxResult.error("椤圭洰娴佺▼鏈粦瀹�"); } - Map<String, Object> processVariables = new HashMap<>(); - //鏌ュ嚭瀛楀吀涓渶瑕佹敞鍏ョ殑瀛楁淇℃伅 + // 鏌ュ嚭瀛楀吀涓渶瑕佹敞鍏ョ殑瀛楁淇℃伅 List<String> dictList = sysDictDService.selectDictDataByType("flow_variables").stream().map(SysDictData::getDictValue).collect(Collectors.toList()); Map<String, Object> newV = new HashMap<>(2); if (!org.springframework.util.CollectionUtils.isEmpty(variables)) { for (String key : variables.keySet()) { newV.put(task.getTaskDefinitionKey() + "&" + key, variables.get(key)); - //瀛楀吀閲屾湁灏辨斁鍏ユ祦绋嬪彉閲忎腑 + // 瀛楀吀閲屾湁灏变笉鍋氬鐞� if (!CollectionUtils.isEmpty(dictList) && dictList.contains(key)) { - if ("money".equals(key)) { - // 涓囧厓杞厓 - Object w = variables.get(key); - BigDecimal y = new BigDecimal(w.toString()).multiply(new BigDecimal(10000)); - processVariables.put(key, y); - } else { - processVariables.put(key,variables.get(key)); - } + newV.put(key,variables.get(key)); } } } - //娣诲姞娴佺▼鍙橀噺 - if(!processVariables.isEmpty()) taskService.setVariables(taskId,processVariables); taskService.addComment(taskId, task.getProcessInstanceId(), FlowComment.SUBMIT.getType(), "瀹屾垚鎻愪氦"); if (DelegationState.PENDING.equals(task.getDelegationState())) { taskService.resolveTask(taskId, newV); @@ -1282,8 +1272,14 @@ if (node.getCurrent()) { return Boolean.TRUE; } - HistoricTaskInstance beforeTask = historyService.createHistoricTaskInstanceQuery().processInstanceId(finalProcessInsId).finished().taskDefinitionKey(node.getBeforeNodeDefId()).singleResult(); - return Objects.nonNull(beforeTask); + List<HistoricTaskInstance> beforeTasks = historyService.createHistoricTaskInstanceQuery() + .processInstanceId(finalProcessInsId) + .finished() + .taskDefinitionKey(node.getBeforeNodeDefId()) + .orderByTaskCreateTime() + .desc() + .list(); + return CollectionUtils.isNotEmpty(beforeTasks) && Objects.nonNull(beforeTasks.get(0)); }).collect(Collectors.toList()); List<DoFormDetailVO> vos = beforeNodes.stream().map(node -> { if (node.getCurrent()) { @@ -1354,8 +1350,14 @@ if (node.getCurrent()) { return Boolean.TRUE; } - HistoricTaskInstance beforeTask = historyService.createHistoricTaskInstanceQuery().processInstanceId(task.getProcessInstanceId()).finished().taskDefinitionKey(node.getBeforeNodeDefId()).singleResult(); - return Objects.nonNull(beforeTask); + List<HistoricTaskInstance> beforeTaskList = historyService.createHistoricTaskInstanceQuery() + .processInstanceId(task.getProcessInstanceId()) + .finished() + .taskDefinitionKey(node.getBeforeNodeDefId()) + .orderByTaskCreateTime() + .desc() + .list(); + return CollectionUtils.isNotEmpty(beforeTaskList) && Objects.nonNull(beforeTaskList.get(0)); }).collect(Collectors.toList()); List<DoFormDetailVO> vos = dataList.stream().map(node -> { if (node.getCurrent()) { -- Gitblit v1.8.0