From 25e35a1e3c5203c8bbbbfedae690d552d136fef6 Mon Sep 17 00:00:00 2001
From: zhanghua <314079846@qq.com>
Date: 星期一, 03 四月 2023 10:23:57 +0800
Subject: [PATCH] 驾驶舱优化

---
 ycl-platform/src/main/resources/application-dev.yml                                                      |    2 +-
 ycl-platform/src/main/java/com/ycl/controller/cockpit/enforcementEvents/EnforcementEventsController.java |    6 +++---
 ycl-platform/src/main/java/com/ycl/service/apidata/impl/IApiDataServiceImpl.java                         |   22 +++++++++++++++++-----
 ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java                     |   10 +++++-----
 4 files changed, 26 insertions(+), 14 deletions(-)

diff --git a/ycl-platform/src/main/java/com/ycl/controller/cockpit/enforcementEvents/EnforcementEventsController.java b/ycl-platform/src/main/java/com/ycl/controller/cockpit/enforcementEvents/EnforcementEventsController.java
index 09e4880..1b63181 100644
--- a/ycl-platform/src/main/java/com/ycl/controller/cockpit/enforcementEvents/EnforcementEventsController.java
+++ b/ycl-platform/src/main/java/com/ycl/controller/cockpit/enforcementEvents/EnforcementEventsController.java
@@ -77,7 +77,7 @@
             VideoAndAreaVO videoAndAreaVO = new VideoAndAreaVO();
             videoAndAreaVO.setName(item.getName());
             videoAndAreaVO.setCount(item.getCount());
-            videoAndAreaVO.setRatio(new BigDecimal(item.getCount() * 1.0 / count).setScale(2, BigDecimal.ROUND_HALF_UP));
+            videoAndAreaVO.setRatio(new BigDecimal(item.getCount() * 1.0 / count).setScale(4, BigDecimal.ROUND_HALF_UP));
             return videoAndAreaVO;
         }).collect(Collectors.toList());
         return CommonResult.success(collect);
@@ -94,12 +94,12 @@
         EnforcementEventsVO.TypeAndSourceVO typeVO = new EnforcementEventsVO.TypeAndSourceVO();
         VideoAndAreaVO al = new VideoAndAreaVO();
         al.setName("瑙嗛宸℃煡");
-        al.setRatio(new BigDecimal(alCount * 1.0 / allCount).setScale(2, BigDecimal.ROUND_HALF_UP));
+        al.setRatio(new BigDecimal(alCount * 1.0 / allCount).setScale(4, BigDecimal.ROUND_HALF_UP));
         al.setCount(alCount);
         typeVO1s.add(al);
         VideoAndAreaVO hand = new VideoAndAreaVO();
         hand.setName("缃戞牸宸℃煡");
-        hand.setRatio(new BigDecimal(handCount * 1.0 / allCount).setScale(2, BigDecimal.ROUND_HALF_UP));
+        hand.setRatio(new BigDecimal(handCount * 1.0 / allCount).setScale(4, BigDecimal.ROUND_HALF_UP));
         hand.setCount(handCount);
         typeVO1s.add(hand);
         typeVO.setAll(allCount);
diff --git a/ycl-platform/src/main/java/com/ycl/service/apidata/impl/IApiDataServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/apidata/impl/IApiDataServiceImpl.java
index bce9182..97fc923 100644
--- a/ycl-platform/src/main/java/com/ycl/service/apidata/impl/IApiDataServiceImpl.java
+++ b/ycl-platform/src/main/java/com/ycl/service/apidata/impl/IApiDataServiceImpl.java
@@ -8,6 +8,7 @@
 
 import javax.annotation.Resource;
 import java.math.BigDecimal;
+import java.util.Arrays;
 import java.util.List;
 import java.util.stream.IntStream;
 
@@ -26,13 +27,24 @@
     @Override
     public List<StatisticsEventsVO.ArithmeticVO> arithmeticEvent(Integer streetId, String beginTime, String endTime) {
         List<StatisticsEventsVO.ArithmeticVO> list = apiDataMapper.arithmeticEvent(streetId, beginTime, endTime);
-        list.add(new StatisticsEventsVO.ArithmeticVO("搴楀缁忚惀", 0, 0.0));
-        list.add(new StatisticsEventsVO.ArithmeticVO("娌胯鏅炬檼", 0, 0.0));
-        list.add(new StatisticsEventsVO.ArithmeticVO("鏃犵収缁忚惀娓稿晢", 0, 0.0));
-        list.add(new StatisticsEventsVO.ArithmeticVO("杩濊鎾戜紴", 0, 0.0));
+        List<String> dic = Arrays.asList("鏃犵収缁忚惀娓稿晢", "鍗犻亾缁忚惀", "搴楀缁忚惀", "闈炴満鍔ㄨ溅涔卞仠鏀�", "杩濊鎾戜紴", "娌胯鏅炬寕", "鏈哄姩杞︿贡鍋滄斁", "缇ゅ彂鎬т簨浠�");
+        while (list.size() < 8) {
+            for (int i = 0; i < dic.size(); i++) {
+                int finalI = i;
+                long count = list.stream().filter(o -> o.getName().equals(dic.get(finalI))).count();
+                if (count == 0) {
+                    list.add(new StatisticsEventsVO.ArithmeticVO(dic.get(finalI), 0, 0.0));
+                    break;
+                }
+            }
+        }
+        // list.add(new StatisticsEventsVO.ArithmeticVO("搴楀缁忚惀", 0, 0.0));
+        // list.add(new StatisticsEventsVO.ArithmeticVO("娌胯鏅炬檼", 0, 0.0));
+        // list.add(new StatisticsEventsVO.ArithmeticVO("鏃犵収缁忚惀娓稿晢", 0, 0.0));
+        // list.add(new StatisticsEventsVO.ArithmeticVO("杩濊鎾戜紴", 0, 0.0));
         Integer all = list.stream().flatMapToInt(o -> IntStream.of(o.getCount())).sum();
         list.stream().forEach(o -> {
-            o.setRatio(new BigDecimal(((double) o.getCount() / (double) all)).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
+            o.setRatio(new BigDecimal(((double) o.getCount() / (double) all)).setScale(4, BigDecimal.ROUND_HALF_UP).doubleValue());
         });
         return list;
     }
diff --git a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java
index 99caed7..da82a25 100644
--- a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java
+++ b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java
@@ -494,7 +494,7 @@
     public List<VideoAndAreaVO> areaCount() {
         List<VideoAndAreaVO> areaCountList = baseCaseMapper.areaCount();
         Long allCount = baseCaseMapper.selectCount(new LambdaQueryWrapper<>());
-        areaCountList.stream().forEach(item -> item.setRatio(new BigDecimal(item.getCount() * 1.0 / allCount).setScale(2, BigDecimal.ROUND_HALF_UP)));
+        areaCountList.stream().forEach(item -> item.setRatio(new BigDecimal(item.getCount() * 1.0 / allCount).setScale(4, BigDecimal.ROUND_HALF_UP)));
         return areaCountList;
     }
 
@@ -534,7 +534,7 @@
         if (reportLastMonthCount == 0) {
             report.setRatio(null);
         } else {
-            report.setRatio(new BigDecimal(v).setScale(2, BigDecimal.ROUND_HALF_UP).abs());
+            report.setRatio(new BigDecimal(v).setScale(4, BigDecimal.ROUND_HALF_UP).abs());
         }
         if (v < 0) {
             report.setUp(false);
@@ -556,7 +556,7 @@
         if (disposeLastMonthCount == 0) {
             dispose.setRatio(null);
         } else {
-            dispose.setRatio(new BigDecimal(v1).setScale(2, BigDecimal.ROUND_HALF_UP).abs());
+            dispose.setRatio(new BigDecimal(v1).setScale(4, BigDecimal.ROUND_HALF_UP).abs());
         }
         if (v1 < 0) {
             dispose.setUp(false);
@@ -572,7 +572,7 @@
         if (onTimeCaseLastMonthCount == 0) {
             onTimeDispose.setRatio(null);
         } else {
-            onTimeDispose.setRatio(new BigDecimal(v2).setScale(2, BigDecimal.ROUND_HALF_UP).abs());
+            onTimeDispose.setRatio(new BigDecimal(v2).setScale(4, BigDecimal.ROUND_HALF_UP).abs());
         }
         if (v2 < 0) {
             onTimeDispose.setUp(false);
@@ -596,7 +596,7 @@
         if (disposeLastMonthCount == 0) {
             register.setRatio(null);
         } else {
-            register.setRatio(new BigDecimal(v3).setScale(2, BigDecimal.ROUND_HALF_UP).abs());
+            register.setRatio(new BigDecimal(v3).setScale(4, BigDecimal.ROUND_HALF_UP).abs());
         }
         if (v3 < 0) {
             register.setUp(false);
diff --git a/ycl-platform/src/main/resources/application-dev.yml b/ycl-platform/src/main/resources/application-dev.yml
index 7f25105..1a441d0 100644
--- a/ycl-platform/src/main/resources/application-dev.yml
+++ b/ycl-platform/src/main/resources/application-dev.yml
@@ -35,7 +35,7 @@
         timeout: 0
 
   datasource:
-    url: jdbc:mysql://42.193.1.25:3306/sccg?useUnicode=true&characterEncoding=utf8&autoReconnect=true&useSSL=false
+    url: jdbc:mysql://42.193.1.25:3306/sccg0318?useUnicode=true&characterEncoding=utf8&autoReconnect=true&useSSL=false
     username: root
     password: 321$YcYl@1970!
     type: com.alibaba.druid.pool.DruidDataSource

--
Gitblit v1.8.0