From 7be0d5b901b999d2347774df3cc1a64927838bb3 Mon Sep 17 00:00:00 2001
From: heheng <475597332@qq.com>
Date: 星期二, 15 四月 2025 10:10:35 +0800
Subject: [PATCH] 优化每年专项数据获取

---
 src/main/resources/mybatis/doublePrevention/TrHiddenDangerCheckPointMapper.xml |   18 ++++++++++++++----
 1 files changed, 14 insertions(+), 4 deletions(-)

diff --git a/src/main/resources/mybatis/doublePrevention/TrHiddenDangerCheckPointMapper.xml b/src/main/resources/mybatis/doublePrevention/TrHiddenDangerCheckPointMapper.xml
index 2050f7a..54716db 100644
--- a/src/main/resources/mybatis/doublePrevention/TrHiddenDangerCheckPointMapper.xml
+++ b/src/main/resources/mybatis/doublePrevention/TrHiddenDangerCheckPointMapper.xml
@@ -112,9 +112,14 @@
 <!--    List<TroubleDataRespDTO> getSPIData(SPIDataReqBO spiDataReqBO);-->
     <select id="getSPIData" resultType="com.ruoyi.doublePrevention.entity.SPI.TroubleData">
         SELECT
-            DATE_FORMAT(register_create_time, '%Y-%m') time, sum(1) count
+            DATE_FORMAT(register_create_time, '%Y-%m') time, sum(1) count,
+            sum(case when rectify_status = '1' then 1 else 0 end) rectifyFinish,
+            sum(case when rectify_status = '0' then 1 else 0 end) rectifyNotFinish,
+            sum(case when accept_result = '1' then 1 else 0 end) accept,
+            sum(case when danger_level = '0' then 1 else 0 end) generalDanger,
+            sum(case when danger_level = '1' then 1 else 0 end) majorDanger
         FROM tr_hidden_danger_check_point
-        WHERE register_create_time >= #{spiDataReqBO.startTime} and #{spiDataReqBO.endTime} >= register_create_time and whether_danger = 1
+        WHERE whether_danger =1 and examine_status =1 and  register_create_time >= #{spiDataReqBO.startTime} and #{spiDataReqBO.endTime} >= register_create_time and whether_danger = 1
         GROUP BY time
         ORDER BY time ASC
     </select>
@@ -124,8 +129,13 @@
         select
             sum(case when trouble_type_name = 'A级隐患' then 1 else 0 end) A,
             sum(case when trouble_type_name = 'B级隐患' then 1 else 0 end) B,
-            sum(case when trouble_type_name = 'C级隐患' then 1 else 0 end) C
+            sum(case when trouble_type_name = 'C级隐患' then 1 else 0 end) C,
+            sum(case when rectify_status = '1' then 1 else 0 end) rectifyFinish,
+            sum(case when rectify_status = '0' then 1 else 0 end) rectifyNotFinish
         from tr_hidden_danger_check_point
-        WHERE register_create_time >= #{spiDataReqBO.startTime} and #{spiDataReqBO.endTime} >= register_create_time  and whether_danger = 1
+        WHERE  whether_danger =1 and examine_status =1 and YEAR(register_create_time) = #{spiDataReqBO.year}
+        <if test="spiDataReqBO.month != null and spiDataReqBO.month != ''">
+            AND MONTH(register_create_time) = #{spiDataReqBO.month}
+        </if>
     </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.2