瀏覽代碼

解决好些BUG

wukai 7 月之前
父節點
當前提交
e6c4ee6687

+ 3 - 37
jjt-biz/src/main/java/com/jjt/biz/controller/BizModelController.java

@@ -3,6 +3,7 @@ package com.jjt.biz.controller;
 import com.jjt.biz.domain.BizModel;
 import com.jjt.biz.domain.BizObj;
 import com.jjt.biz.service.IBizModelService;
+import com.jjt.biz.util.DataUtil;
 import com.jjt.biz.vo.CheckVO;
 import com.jjt.biz.vo.ScoreVO;
 import com.jjt.common.annotation.Log;
@@ -109,45 +110,10 @@ public class BizModelController extends BaseController {
             vo.setXData(xData);
             result.add(vo);
         }
-        standTime(standTime, result);
+        DataUtil.standTimeVO(standTime, result);
         return result;
     }
 
-    /**
-     * 补数据
-     *
-     * @param standTime
-     * @param result
-     */
-    private void standTime(List<String> standTime, List<ScoreVO> result) {
-        for (ScoreVO vo : result) {
-            // 创建一个新的 times 和 scores 列表,以确保它们与标准时间序列对齐
-            List<String> alignedTimes = new ArrayList<>();
-            List<Float> alignedScores = new ArrayList<>();
-            // 使用一个Map来存储原始数据,以便快速查找
-            Map<String, Float> timeScoreMap = new HashMap<>();
-            List<String> times = vo.getXData();
-            List<Float> scores = vo.getScores();
-            for (int i = 0; i < times.size(); i++) {
-                timeScoreMap.put(times.get(i), scores.get(i));
-            }
-            // 遍历标准时间序列,并根据需要添加空值或实际值
-            for (String time : standTime) {
-                alignedTimes.add(time);
-                // 添加时间
-                Float score = timeScoreMap.getOrDefault(time, 100F);
-                // 如果没有对应的分数,则添加0.0f
-                alignedScores.add(score);
-            }
-
-            // 更新原有的 times 和 scores 列表
-            times.clear();
-            times.addAll(alignedTimes);
-            scores.clear();
-            scores.addAll(alignedScores);
-        }
-    }
-
 
     @ApiOperation("日健康度得分情况")
     @GetMapping("/day/history")
@@ -189,7 +155,7 @@ public class BizModelController extends BaseController {
             result.add(vo);
         }
 
-        standTime(standTime, result);
+        DataUtil.standTimeVO(standTime, result);
         return result;
     }
 //

+ 4 - 37
jjt-biz/src/main/java/com/jjt/biz/controller/IndexController.java

@@ -2,6 +2,7 @@ package com.jjt.biz.controller;
 
 import com.jjt.biz.domain.*;
 import com.jjt.biz.service.*;
+import com.jjt.biz.util.DataUtil;
 import com.jjt.biz.vo.BizAccessVO;
 import com.jjt.biz.vo.BizTypeVO;
 import com.jjt.biz.vo.HlScoreVO;
@@ -126,7 +127,7 @@ public class IndexController extends BaseController {
             map.put("score", scores);
             result.add(map);
         }
-        standTime(standTime, result);
+        DataUtil.standTimeMap(standTime, result);
         return success(result);
     }
 
@@ -161,44 +162,10 @@ public class IndexController extends BaseController {
             map.put("score", scores);
             result.add(map);
         }
-        standTime(standTime, result);
+        DataUtil.standTimeMap(standTime, result);
         return success(result);
     }
 
-    /**
-     * 补数据
-     *
-     * @param standTime
-     * @param result
-     */
-    private void standTime(List<String> standTime, List<Map<String, Object>> result) {
-        for (Map<String, Object> map : result) {
-            // 创建一个新的 times 和 scores 列表,以确保它们与标准时间序列对齐
-            List<String> alignedTimes = new ArrayList<>();
-            List<Float> alignedScores = new ArrayList<>();
-            // 使用一个Map来存储原始数据,以便快速查找
-            Map<String, Float> timeScoreMap = new HashMap<>();
-            List<String> times = (List<String>) map.get("time");
-            List<Float> scores = (List<Float>) map.get("score");
-            for (int i = 0; i < times.size(); i++) {
-                timeScoreMap.put(times.get(i), scores.get(i));
-            }
-            // 遍历标准时间序列,并根据需要添加空值或实际值
-            for (String time : standTime) {
-                alignedTimes.add(time);
-                // 添加时间
-                Float score = timeScoreMap.getOrDefault(time, 100F);
-                // 如果没有对应的分数,则添加0.0f
-                alignedScores.add(score);
-            }
-
-            // 更新原有的 times 和 scores 列表
-            times.clear();
-            times.addAll(alignedTimes);
-            scores.clear();
-            scores.addAll(alignedScores);
-        }
-    }
 
     @ApiOperation("应用健康趋势-按天")
     @GetMapping("/hl/day/{date}")
@@ -242,7 +209,7 @@ public class IndexController extends BaseController {
             result.add(map);
         }
 
-        standTime(standTime, result);
+        DataUtil.standTimeMap(standTime, result);
         return success(result);
     }
 

+ 87 - 0
jjt-biz/src/main/java/com/jjt/biz/util/DataUtil.java

@@ -0,0 +1,87 @@
+package com.jjt.biz.util;
+
+import com.jjt.biz.vo.ScoreVO;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * DataUtil$
+ *
+ * @author wukai
+ * @date 2024/10/16 01:52
+ */
+public class DataUtil {
+    /**
+     * 补数据
+     *
+     * @param standTime
+     * @param result
+     */
+    public static void standTimeVO(List<String> standTime, List<ScoreVO> result) {
+        for (ScoreVO vo : result) {
+            // 创建一个新的 times 和 scores 列表,以确保它们与标准时间序列对齐
+            List<String> alignedTimes = new ArrayList<>();
+            List<Float> alignedScores = new ArrayList<>();
+            // 使用一个Map来存储原始数据,以便快速查找
+            Map<String, Float> timeScoreMap = new HashMap<>();
+            List<String> times = vo.getXData();
+            List<Float> scores = vo.getScores();
+            for (int i = 0; i < times.size(); i++) {
+                timeScoreMap.put(times.get(i), scores.get(i));
+            }
+            // 遍历标准时间序列,并根据需要添加空值或实际值
+            for (String time : standTime) {
+                alignedTimes.add(time);
+                // 添加时间
+                Float score = timeScoreMap.getOrDefault(time, 100F);
+                // 如果没有对应的分数,则添加0.0f
+                alignedScores.add(score);
+            }
+
+            // 更新原有的 times 和 scores 列表
+            times.clear();
+            times.addAll(alignedTimes);
+            scores.clear();
+            scores.addAll(alignedScores);
+        }
+    }
+
+    /**
+     * 补数据
+     *
+     * @param standTime
+     * @param result
+     */
+    public static void standTimeMap(List<String> standTime, List<Map<String, Object>> result) {
+        for (Map<String, Object> map : result) {
+            // 创建一个新的 times 和 scores 列表,以确保它们与标准时间序列对齐
+            List<String> alignedTimes = new ArrayList<>();
+            List<Float> alignedScores = new ArrayList<>();
+            // 使用一个Map来存储原始数据,以便快速查找
+            Map<String, Float> timeScoreMap = new HashMap<>();
+            List<String> times = (List<String>) map.get("time");
+            List<Float> scores = (List<Float>) map.get("score");
+            for (int i = 0; i < times.size(); i++) {
+                timeScoreMap.put(times.get(i), scores.get(i));
+            }
+            // 遍历标准时间序列,并根据需要添加空值或实际值
+            for (String time : standTime) {
+                alignedTimes.add(time);
+                // 添加时间
+                Float score = timeScoreMap.getOrDefault(time, 100F);
+                // 如果没有对应的分数,则添加0.0f
+                alignedScores.add(score);
+            }
+
+            // 更新原有的 times 和 scores 列表
+            times.clear();
+            times.addAll(alignedTimes);
+            scores.clear();
+            scores.addAll(alignedScores);
+        }
+    }
+
+}

+ 2 - 35
jjt-biz/src/main/java/com/jjt/risk/controller/RiskOtherController.java

@@ -8,6 +8,7 @@ import com.jjt.biz.service.IBizModelDetailService;
 import com.jjt.biz.service.IBizModelService;
 import com.jjt.biz.service.IBizObjMetricsDataService;
 import com.jjt.biz.service.IBizObjMetricsService;
+import com.jjt.biz.util.DataUtil;
 import com.jjt.biz.vo.HlScoreVO;
 import com.jjt.biz.vo.ScoreVO;
 import com.jjt.common.core.controller.BaseController;
@@ -265,44 +266,10 @@ public class RiskOtherController extends BaseController {
             topList.add(map);
         }
 
-        standTime(standTime, scoreVOList);
+        DataUtil.standTimeVO(standTime, scoreVOList);
         result.put("trend", scoreVOList);
         result.put("top", topList);
         return success(result);
     }
 
-    /**
-     * 补数据
-     *
-     * @param standTime
-     * @param result
-     */
-    private void standTime(List<String> standTime, List<ScoreVO> result) {
-        for (ScoreVO vo : result) {
-            // 创建一个新的 times 和 scores 列表,以确保它们与标准时间序列对齐
-            List<String> alignedTimes = new ArrayList<>();
-            List<Float> alignedScores = new ArrayList<>();
-            // 使用一个Map来存储原始数据,以便快速查找
-            Map<String, Float> timeScoreMap = new HashMap<>();
-            List<String> times = vo.getXData();
-            List<Float> scores = vo.getScores();
-            for (int i = 0; i < times.size(); i++) {
-                timeScoreMap.put(times.get(i), scores.get(i));
-            }
-            // 遍历标准时间序列,并根据需要添加空值或实际值
-            for (String time : standTime) {
-                alignedTimes.add(time);
-                // 添加时间
-                Float score = timeScoreMap.getOrDefault(time, 100F);
-                // 如果没有对应的分数,则添加0.0f
-                alignedScores.add(score);
-            }
-
-            // 更新原有的 times 和 scores 列表
-            times.clear();
-            times.addAll(alignedTimes);
-            scores.clear();
-            scores.addAll(alignedScores);
-        }
-    }
 }