From cd3e490b95b7e6130c506b47debc5ca004bc01f2 Mon Sep 17 00:00:00 2001
From: sfd <sun.sunshine@163.com>
Date: 星期五, 23 五月 2025 15:36:36 +0800
Subject: [PATCH] Merge branch 'dev' of http://192.168.50.149:8085/r/aps-backend into dev
---
aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsGasPipingRouteStatServiceImpl.java | 24 ++++++++++++++++++++++++
aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlate/ApsPlateProcessShopStatServiceImpl.java | 15 +++++++++++++--
2 files changed, 37 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 53dd3b5..8102872 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
@@ -1854,6 +1854,30 @@
result.put("timePoints", timePoints);
result.put("rowGroupBy", rowGroupBy);
+ // 鏍规嵁鏂囨。娉ㄦ剰鐐�3锛屾坊鍔犳帓搴忛�昏緫
+ if (!plantTable.isEmpty()) {
+ // 瀵硅仛鍚堢粨鏋滆繘琛屾帓搴�
+ Collections.sort(plantTable, (map1, map2) -> {
+ String key1 = map1.keySet().iterator().next();
+ String key2 = map2.keySet().iterator().next();
+
+ // 棣栧厛鎸塺owGroupBy鎺掑簭锛坧rocessName鎴杦orkshop锛�
+ int result1 = key1.compareTo(key2);
+ if (result1 != 0) {
+ return result1;
+ }
+
+ // 濡傛灉rowGroupBy鐩稿悓锛屽啀鎸塸lant鎺掑簭
+ Map<String, Object> detail1 = (Map<String, Object>) map1.get(key1);
+ Map<String, Object> detail2 = (Map<String, Object>) map2.get(key2);
+
+ String plant1 = detail1.containsKey("plant") ? (String) detail1.get("plant") : "";
+ String plant2 = detail2.containsKey("plant") ? (String) detail2.get("plant") : "";
+
+ return plant1.compareTo(plant2);
+ });
+ }
+
return result;
}
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlate/ApsPlateProcessShopStatServiceImpl.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlate/ApsPlateProcessShopStatServiceImpl.java
index 49350cd..71e20d1 100644
--- a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlate/ApsPlateProcessShopStatServiceImpl.java
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlate/ApsPlateProcessShopStatServiceImpl.java
@@ -147,6 +147,7 @@
// 鏌ヨ鐩稿叧鏁版嵁
ApsPlatePlan platePlan = new ApsPlatePlan();
platePlan.setPlant(plant);
+ log.info("寮�濮嬫墽琛岄挘閲戣鍒掑ぇ琛�");
List<ApsPlatePlan> planList = apsPlatePlanMapper.selectApsPlatePlanList(platePlan);
ApsShop apsShop = new ApsShop();
@@ -160,9 +161,11 @@
List<ApsStandardProcess> shopProcesses = standardProcessMapper.selectApsStandardProcessList(process);
if (!planList.isEmpty() && !shopList.isEmpty() && !shopProcesses.isEmpty()) {
- // 寮�濮嬩箣鍓嶅厛鍒犻櫎鎵�鏈夊巻鍙叉暟鎹�
+
+ log.info("閽i噾璁″垝澶ц〃锛氬垹闄ゆ墍鏈夊巻鍙叉暟鎹�");
apsPlateProcessStatMapper.deleteAll();
apsPlateProcessShopStatMapper.deleteAll();
+ log.info("閽i噾璁″垝澶ц〃锛氭帹绠楀�掓帓閽i噾宸ュ簭璁″垝瀹屽伐鏃ユ湡鍜岃鍒掑紑宸ユ椂闂�");
List<ApsPlateProcessStat> statList =apsPlateProcessStatService.computePlateProcessStat();
// 鏋勫缓杞﹂棿鍚嶇О鍒板伐搴忓悕绉扮殑鏄犲皠
Map<String, List<String>> shopToProcessNames = shopProcesses.stream().filter(x -> null!=x.getWorkShop())
@@ -170,30 +173,38 @@
Collectors.mapping(ApsStandardProcess::getProcessName, Collectors.toList())
));
// 鎵归噺鎻掑叆缁熻鏁版嵁
+ log.info("閽i噾璁″垝澶ц〃锛氳绠楁瘡涓伐鍗曚腑姣忎釜杞﹂棿鐨勫紑濮嬨�佺粨鏉熸椂闂�");
List<ApsPlateProcessShopStat> statsToInsert = new ArrayList<>();
for (ApsPlatePlan plan : planList) {
for (ApsShop shop : shopList) {
+ log.info("閽i噾璁″垝澶ц〃锛氳绠楀伐鍗曪細"+plan.getDocumentNumber());
ApsPlateProcessShopStat stat = createShopStat(plan, shop, shopToProcessNames, statList);
statsToInsert.add(stat);
}
}
+ log.info("閽i噾璁″垝澶ц〃锛氭壒閲忎繚瀛樺伐搴忓紑宸ュ拰瀹屽伐鏃堕棿");
List<List<ApsPlateProcessStat>> processStatBatchList = ListUtil.split(statList, 1000);
processStatBatchList.forEach(batch -> apsPlateProcessStatMapper.batchInsertPlateStat(batch));
+ log.info("閽i噾璁″垝澶ц〃锛氭壒閲忎繚瀛樺伐鍗�-杞﹂棿鏃堕棿淇℃伅");
List<List<ApsPlateProcessShopStat>> shopStatBatchList = ListUtil.split(statsToInsert, 1000);
shopStatBatchList.forEach(batch -> apsPlateProcessShopStatMapper.batchInsert(batch));
}else {
if(shopProcesses.isEmpty()){
+ log.error("閽i噾璁″垝澶ц〃锛氭湭鎵惧埌鏍囧噯宸ュ簭鏁版嵁锛�");
throw new RuntimeException("鏈壘鍒版爣鍑嗗伐搴忔暟鎹紒");
}
if(shopList.isEmpty()){
+ log.error("閽i噾璁″垝澶ц〃锛氭湭鎵惧埌杞﹂棿鏁版嵁锛�");
throw new RuntimeException("鏈壘鍒拌溅闂存暟鎹紒");
}
if(planList.isEmpty()){
+ log.error("閽i噾璁″垝澶ц〃锛氭湭鎵惧埌宸ュ崟鏁版嵁锛�");
throw new RuntimeException("鏈壘鍒板伐鍗曟暟鎹紒");
}
}
+ log.info("閽i噾璁″垝澶ц〃锛氬畬鎴�");
}
/**
@@ -253,7 +264,7 @@
}
}
} catch (Exception e) {
- log.error("computer error:"+ JSONObject.toJSONString(stat));
+ log.error("閽i噾璁″垝澶ц〃 error:"+ JSONObject.toJSONString(stat));
throw new RuntimeException("璁$畻杞﹂棿缁熻鏁版嵁寮傚父锛�");
}
return stat;
--
Gitblit v1.9.3