From 789bacf67ee22c7fd2c214ac5014507d2df1e1b9 Mon Sep 17 00:00:00 2001
From: hongjli <3117313295@qq.com>
Date: 星期五, 23 五月 2025 10:24:44 +0800
Subject: [PATCH] row按workshop聚合统计时添加processName的参数的补充

---
 aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsGasPipingRouteStatServiceImpl.java |   23 +++++++++++++++++++++--
 1 files changed, 21 insertions(+), 2 deletions(-)

diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsGasPipingRouteStatServiceImpl.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsGasPipingRouteStatServiceImpl.java
index ce61324..247add4 100644
--- a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsGasPipingRouteStatServiceImpl.java
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsGasPipingRouteStatServiceImpl.java
@@ -1499,6 +1499,8 @@
         // 浣跨敤缁勫悎key鏉ュ疄鐜板缁村害鍒嗙粍锛堝姩鎬乺owGroupBy瀛楁 + 鍙�夌殑宸ュ巶/涓撲笟/杞﹂棿锛�
         Map<String, Map<String, Object>> groupInfoMap = new HashMap<>();
         Map<String, Map<String, BigDecimal>> groupTimeDataMap = new HashMap<>();
+        // 瀛樺偍姣忎釜groupKey瀵瑰簲鐨刾rocessName闆嗗悎
+        Map<String, Set<String>> groupProcessNamesMap = new HashMap<>();
         
         // 閬嶅巻鍘熷鏁版嵁锛屾寜澶氱淮搴﹀垎缁勮繘琛岃仛鍚�
         for (Map<String, Object> data : rawData) {
@@ -1550,6 +1552,14 @@
                 groupInfoMap.put(groupKey, groupInfo);
             }
             
+            // 鏀堕泦processName
+            if (processName != null && !processName.trim().isEmpty()) {
+                if (!groupProcessNamesMap.containsKey(groupKey)) {
+                    groupProcessNamesMap.put(groupKey, new HashSet<>());
+                }
+                groupProcessNamesMap.get(groupKey).add(processName);
+            }
+            
             // 璁$畻鏃堕棿鐐筀ey
             String timeKey;
             LocalDate planStartLocalDate = processPlanStartDay.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
@@ -1596,8 +1606,17 @@
                 rowDetail.put("workshop", groupInfo.get("workshop"));
             }
             
-            // 淇濈暀宸ュ簭鍚嶇О淇℃伅锛屼互渚垮墠绔睍绀�
-            if (!"processName".equals(rowGroupBy)) {
+            // 澶勭悊processName - 濡傛灉rowGroupBy涓簑orkshop锛屽垯灏嗘墍鏈塸rocessName鐢ㄥ垎鍙疯繛鎺�
+            if ("workshop".equals(rowGroupBy)) {
+                Set<String> processNames = groupProcessNamesMap.getOrDefault(groupKey, new HashSet<>());
+                if (!processNames.isEmpty()) {
+                    String joinedProcessNames = String.join(";", processNames);
+                    rowDetail.put("processName", joinedProcessNames);
+                } else {
+                    rowDetail.put("processName", groupInfo.get("processName"));
+                }
+            } else if (!"processName".equals(rowGroupBy)) {
+                // 淇濈暀宸ュ簭鍚嶇О淇℃伅锛屼互渚垮墠绔睍绀�
                 rowDetail.put("processName", groupInfo.get("processName"));
             }
             

--
Gitblit v1.9.3