From 24ed7d322c43caa4412ecc76597cc6789ff89b3c Mon Sep 17 00:00:00 2001
From: jinpengyong <jpy123456>
Date: Tue, 10 Oct 2023 10:43:42 +0800
Subject: [PATCH] chore:处理尘负荷字符串转化异常

---
 screen-api/src/main/java/com/moral/api/service/impl/DustldServiceImpl.java    |   36 ++++++++++++++++--------------------
 screen-api/src/main/java/com/moral/api/mapper/HistorySecondCruiserMapper.java |    2 +-
 screen-api/src/main/resources/mapper/HistorySecondCruiserMapper.xml           |    4 ++--
 3 files changed, 19 insertions(+), 23 deletions(-)

diff --git a/screen-api/src/main/java/com/moral/api/mapper/HistorySecondCruiserMapper.java b/screen-api/src/main/java/com/moral/api/mapper/HistorySecondCruiserMapper.java
index b22bf87..a725f09 100644
--- a/screen-api/src/main/java/com/moral/api/mapper/HistorySecondCruiserMapper.java
+++ b/screen-api/src/main/java/com/moral/api/mapper/HistorySecondCruiserMapper.java
@@ -26,7 +26,7 @@
 
     String  getDaily(Map<String,Object> params);
 
-    List<Double> getDust(String start,String end,String mac);
+    List<String> getDust(String start,String end,String mac);
 
     List<Map<String,Object>> getDusts(Map<String,Object> params);
 
diff --git a/screen-api/src/main/java/com/moral/api/service/impl/DustldServiceImpl.java b/screen-api/src/main/java/com/moral/api/service/impl/DustldServiceImpl.java
index dd304f4..aeefda9 100644
--- a/screen-api/src/main/java/com/moral/api/service/impl/DustldServiceImpl.java
+++ b/screen-api/src/main/java/com/moral/api/service/impl/DustldServiceImpl.java
@@ -90,29 +90,25 @@
             for (TimeForm timeForm : tables) {
                 String start = timeForm.getStart();
                 String end = timeForm.getEnd();
-                List<Double> dust = historySecondCruiserMapper.getDust(start, end, mac);
+                List<String> dust = historySecondCruiserMapper.getDust(start, end, mac);
                 ArrayList<Double> rsDouble = new ArrayList<>();
-                for (Double aDouble : dust) {
-                    double v =0.0;
+                for (String s : dust) {
+                    double aDouble = Double.parseDouble(s);
+
                     if (aDouble>=0 && aDouble<40 ){
-                        v = aDouble + 170;
+                        aDouble = aDouble + 170;
+                    }else if (aDouble>=40 && aDouble<60){
+                        aDouble = aDouble + 130;
+                    }else if (aDouble>=60 && aDouble<100 ){
+                        aDouble = aDouble + 110;
+                    }else if (aDouble>=100 && aDouble<150){
+                        aDouble = aDouble + 70;
+                    }else if (aDouble>=150 && aDouble<180){
+                        aDouble = aDouble + 30;
+                    }else {
+                        aDouble= aDouble+0;
                     }
-                    if (aDouble>=40 && aDouble<60 ){
-                        v = aDouble + 130;
-                    }
-                    if (aDouble>=60 && aDouble<100 ){
-                        v = aDouble + 110;
-                    }
-                    if (aDouble>=100 && aDouble<150 ){
-                        v = aDouble + 70;
-                    }
-                    if (aDouble>=150 && aDouble<180 ){
-                        v = aDouble + 30;
-                    }
-                    if (aDouble>=180){
-                        v= aDouble;
-                    }
-                    rsDouble.add(v);
+                    rsDouble.add(aDouble);
                 }
                 list.addAll(rsDouble);
             }
diff --git a/screen-api/src/main/resources/mapper/HistorySecondCruiserMapper.xml b/screen-api/src/main/resources/mapper/HistorySecondCruiserMapper.xml
index f69bdb2..1b61bbb 100644
--- a/screen-api/src/main/resources/mapper/HistorySecondCruiserMapper.xml
+++ b/screen-api/src/main/resources/mapper/HistorySecondCruiserMapper.xml
@@ -50,8 +50,8 @@
           AND `time` <![CDATA[<=]]> #{time2}
     </select>
 
-    <select id="getDust" resultType="java.lang.Double">
-        select JSON_EXTRACT(value,'$.dustld')
+    <select id="getDust" resultType="java.lang.String">
+        select value ->>'$.dustld'
         from `history_second_cruiser`
         WHERE mac = #{mac}
           AND `time` <![CDATA[>=]]> #{start}

--
Gitblit v1.8.0