From 5d9bb3edf3a328eca9dea2394d990f900179cfba Mon Sep 17 00:00:00 2001
From: Crunchy <3114200645@qq.com>
Date: 星期六, 03 八月 2024 11:00:06 +0800
Subject: [PATCH] 数采bug修复

---
 cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java |   24 ++++++++++++++++++------
 1 files changed, 18 insertions(+), 6 deletions(-)

diff --git a/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java b/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java
index c78ea55..7083104 100644
--- a/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java
+++ b/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java
@@ -180,7 +180,13 @@
         Map<String, Object> map = DataAcquisition.dataAcquisitionEntrance(list1, device.get(0), entrustCode, sampleCode, ip);
         // 4銆侀�犲惊鐜鏁�
         if (ObjectUtils.isNotEmpty(map)) {
-            return Result.success(DataAcquisition.createFrequency(entrustCode, sampleCode, map));
+            if (ObjectUtils.isEmpty(device.get(0).getEntrustCode()) && ObjectUtils.isEmpty(device.get(0).getSampleCode())) {
+                Map<String, Object> frequency = DataAcquisition.createFrequency(entrustCode, sampleCode, map);
+                Object o = formulaCalculation(frequency, true);
+                return Result.success(o);
+            } else {
+                return Result.success(DataAcquisition.createFrequency(entrustCode, sampleCode, map));
+            }
         } else {
             return Result.success(null);
         }
@@ -990,7 +996,7 @@
     }
 
     @Override
-    public Object formulaCalculation(Map<String, Object> map) {
+    public Object formulaCalculation(Map<String, Object> map, Boolean isAdopt) {
         map.forEach((key, value) -> {
             Map<String, Object> jsonObject = JSONObject.parseObject(JSON.toJSONString(map.get(key)), Map.class);
             for (Map.Entry<String, Object> entry : jsonObject.entrySet()) {
@@ -1011,11 +1017,17 @@
                                 resultList.add(result);
                             }
                             ArrayList<Object> list = new ArrayList<>();
-                            resultList.forEach(i -> {
-                                List<Object> strings = Arrays.asList(i.toString().split(","));
-                                String result = calculationFormula(strings, formula);
+                            if (isAdopt) {
+                                String result = calculationFormula(resultList, formula);
                                 list.add(result);
-                            });
+                            } else {
+                                resultList.forEach(i -> {
+                                    List<Object> strings = Arrays.asList(i.toString().split(","));
+                                    String result = calculationFormula(strings, formula);
+                                    list.add(result);
+                                });
+                            }
+
                             formulaData.put("isCalculation", false);
                             formulaData.put("result", list);
                         }

--
Gitblit v1.9.3