From 134ef8858210a09d34567b5ef0b8d29b6c8bf38d Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期一, 23 九月 2024 16:20:05 +0800
Subject: [PATCH] 大屏设备运行率bug

---
 ycl-server/src/main/java/com/ycl/platform/service/ICheckScoreService.java         |    2 +-
 ycl-pojo/src/main/java/com/ycl/platform/domain/query/DashboardQuery.java          |    4 ++++
 ycl-pojo/src/main/java/com/ycl/platform/domain/query/DataCenterQuery.java         |    4 ++--
 ycl-server/src/main/resources/mapper/zgyw/CheckScoreMapper.xml                    |    8 ++++----
 ycl-server/src/main/java/com/ycl/platform/service/impl/CheckScoreServiceImpl.java |   19 +++++++------------
 ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml                      |    8 ++++----
 6 files changed, 22 insertions(+), 23 deletions(-)

diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/query/DashboardQuery.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/query/DashboardQuery.java
index 17086a8..5cb5f6d 100644
--- a/ycl-pojo/src/main/java/com/ycl/platform/domain/query/DashboardQuery.java
+++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/query/DashboardQuery.java
@@ -2,6 +2,8 @@
 
 import lombok.Data;
 
+import java.util.Date;
+
 /**
  * @author gonghl
  * @since 2024/8/6 涓嬪崍 3:01
@@ -19,4 +21,6 @@
      */
     private Integer deptId;
 
+    private String startTime;
+    private String endTime;
 }
diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/query/DataCenterQuery.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/query/DataCenterQuery.java
index b3f2239..5019600 100644
--- a/ycl-pojo/src/main/java/com/ycl/platform/domain/query/DataCenterQuery.java
+++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/query/DataCenterQuery.java
@@ -19,11 +19,11 @@
 public class DataCenterQuery extends AbsQuery {
 
     /** 寮�濮嬫椂闂� */
-    @JsonFormat(pattern = "yyyy-MM-dd")
+    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
     private Date startTime;
 
     /** 缁撴潫鏃堕棿 */
-    @JsonFormat(pattern = "yyyy-MM-dd")
+    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
     private Date endTime;
 
     /** 鍏抽敭璇� */
diff --git a/ycl-server/src/main/java/com/ycl/platform/service/ICheckScoreService.java b/ycl-server/src/main/java/com/ycl/platform/service/ICheckScoreService.java
index 5c9b7e3..fae8134 100644
--- a/ycl-server/src/main/java/com/ycl/platform/service/ICheckScoreService.java
+++ b/ycl-server/src/main/java/com/ycl/platform/service/ICheckScoreService.java
@@ -65,7 +65,7 @@
      */
     List<Map<String, Object>> calculate(String category);
 
-    Map<String, List<Map<String, Object>>> dashboard(DashboardQuery dashboardQuery);
+    Map<String, Map<String, Object>> dashboard(DashboardQuery dashboardQuery);
 //    /**
 //     * 鏂板鑰冩牳绉垎鏄庣粏
 //     *
diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/CheckScoreServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/CheckScoreServiceImpl.java
index e05e86c..6df38ab 100644
--- a/ycl-server/src/main/java/com/ycl/platform/service/impl/CheckScoreServiceImpl.java
+++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/CheckScoreServiceImpl.java
@@ -527,22 +527,17 @@
 
     //澶у睆灞曠ず鑰冩牳寰楀垎
     @Override
-    //TODO:鑰冭檻limit bug
-    public Map<String, List<Map<String, Object>>> dashboard(DashboardQuery dashboardQuery) {
+    public Map<String, Map<String, Object>> dashboard(DashboardQuery dashboardQuery) {
+        Date now = new Date();
+        dashboardQuery.setStartTime(DateUtils.getMouthStart(now));
+        dashboardQuery.setEndTime(DateUtils.getMouthEnd(now));
         List<CheckScore> dashboard = scoreMapper.dashboard(dashboardQuery);
-        Map<String, List<Map<String, Object>>> resultMap = new HashMap<>();
+        Map<String, Map<String, Object>> resultMap = new HashMap<>();
 
         for (CheckScore checkScore : dashboard) {
-            List<Map<String, Object>> list = new ArrayList<>();
             Map<String, Object> map = new HashMap<>();
-            map.put("value", checkScore.getScore());
-            if (dashboardQuery.getDataScope() == 1) {
-                map.put("name", "鐪佸巺寰楀垎");
-            } else {
-                map.put("name", "鍖哄幙寰楀垎");
-            }
-            list.add(map);
-            resultMap.put(checkScore.getDeptName(), list);
+            map.put("score", checkScore.getScore().setScale(2,RoundingMode.HALF_UP));
+            resultMap.put(checkScore.getDeptName(), map);
         }
         return resultMap;
     }
diff --git a/ycl-server/src/main/resources/mapper/zgyw/CheckScoreMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/CheckScoreMapper.xml
index 45b4d2f..bd47211 100644
--- a/ycl-server/src/main/resources/mapper/zgyw/CheckScoreMapper.xml
+++ b/ycl-server/src/main/resources/mapper/zgyw/CheckScoreMapper.xml
@@ -207,15 +207,15 @@
     </select>
 
     <select id="dashboard" resultType="com.ycl.platform.domain.entity.CheckScore">
-        select s.*,d.area as deptName from t_check_score s
+        select avg(s.score) as score,d.area as deptName from t_check_score s
         left join sys_dept d on s.dept_id = d.dept_id
         <where>
+            s.create_time between #{startTime} and #{endTime}
             <if test="dataScope == 1">
                 AND s.examine_tag = 1
             </if>
         </where>
-        ORDER BY
-        s.create_time DESC
-        LIMIT 7
+        GROUP BY s.dept_id
+        ORDER BY s.create_time DESC
     </select>
 </mapper>
diff --git a/ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml
index 193ef44..b18b4d7 100644
--- a/ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml
+++ b/ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml
@@ -473,8 +473,8 @@
                     sys_dept d
                         LEFT JOIN t_yw_point p ON p.dept_id = d.dept_id AND p.deleted = 0 <if test="dataScope == 1"> AND p.province_tag = 1 </if><if test="dataScope == 3"> AND p.important_tag = 1 </if>
                         LEFT JOIN t_yw_point p2 ON p2.dept_id = d.dept_id AND p2.deleted = 0 AND p2.recovery = 1 AND p.id = p2.id <if test="dataScope == 1"> AND p2.province_tag = 1 </if><if test="dataScope == 3"> AND p2.important_tag = 1 </if>
-                        LEFT JOIN t_monitor m ON m.serial_number = p.serial_number AND INSTR(m.camera_fun_type, 1)
-                        LEFT JOIN t_monitor m2 ON m2.serial_number = p2.serial_number AND INSTR(m2.camera_fun_type, 1)
+                        LEFT JOIN t_monitor m ON m.serial_number = p.serial_number AND INSTR(m.camera_fun_type, 3)
+                        LEFT JOIN t_monitor m2 ON m2.serial_number = p2.serial_number AND INSTR(m2.camera_fun_type, 3)
                 WHERE d.del_flag = 0 AND d.area IS NOT NULL
                 GROUP BY d.area, d.dept_id
                 ORDER BY d.area_code
@@ -509,8 +509,8 @@
                     sys_dept d
                         LEFT JOIN t_yw_point p ON p.dept_id = d.dept_id AND p.deleted = 0 <if test="dataScope == 1"> AND p.province_tag = 1 </if><if test="dataScope == 3"> AND p.important_tag = 1 </if>
                         LEFT JOIN t_yw_point p2 ON p2.dept_id = d.dept_id AND p2.deleted = 0 AND p2.recovery = 1 AND p.id = p2.id <if test="dataScope == 1"> AND p2.province_tag = 1 </if><if test="dataScope == 3"> AND p2.important_tag = 1 </if>
-                        LEFT JOIN t_monitor m ON m.serial_number = p.serial_number AND INSTR(m.camera_fun_type, 3)
-                        LEFT JOIN t_monitor m2 ON m2.serial_number = p2.serial_number AND INSTR(m2.camera_fun_type, 3)
+                        LEFT JOIN t_monitor m ON m.serial_number = p.serial_number AND INSTR(m.camera_fun_type, 1)
+                        LEFT JOIN t_monitor m2 ON m2.serial_number = p2.serial_number AND INSTR(m2.camera_fun_type, 1)
                 WHERE d.del_flag = 0 AND d.area IS NOT NULL
                 GROUP BY d.area, d.area_code, d.dept_id
                 ORDER BY d.area_code

--
Gitblit v1.8.0