From fea22e82e7e49691f6e0c20a29b228d0ab3173e9 Mon Sep 17 00:00:00 2001
From: zxl <763096477@qq.com>
Date: 星期三, 29 十月 2025 17:08:38 +0800
Subject: [PATCH] 修改问题
---
ycl-server/src/main/resources/mapper/zgyw/CheckIndexFaceMapper.xml | 75 +++++++++++++++++++++++++++----------
1 files changed, 55 insertions(+), 20 deletions(-)
diff --git a/ycl-server/src/main/resources/mapper/zgyw/CheckIndexFaceMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/CheckIndexFaceMapper.xml
index 66f5c54..e3e9c64 100644
--- a/ycl-server/src/main/resources/mapper/zgyw/CheckIndexFaceMapper.xml
+++ b/ycl-server/src/main/resources/mapper/zgyw/CheckIndexFaceMapper.xml
@@ -26,16 +26,16 @@
</sql>
<select id="selectCheckIndexFaceList" resultMap="CheckIndexFaceResult">
- select tcif.*,sd.dept_name,tcs.score,count(m.serial_number) as num
+ select tcif.*,sd.dept_name,tcs.score,IFNULL(tcs.device_count,0) as num
from t_check_index_face tcif left join sys_dept sd on tcif.dept_id = sd.dept_id
left join t_check_score tcs on tcif.id = tcs.index_id
- left join t_yw_point p on p.dept_id = tcif.dept_id
- left join t_monitor m on p.serial_number = m.serial_number
<where>
- tcs.examine_category = 3 and m.camera_fun_type like concat('%',3,'%')
+ tcs.examine_category = 3
<if test="deptId != null "> and tcif.dept_id = #{deptId}</if>
<if test="examineTag != null "> and tcif.examine_tag = #{examineTag}</if>
- <if test="examineTagQuery != null "> and p.province_tag = #{examineTagQuery}</if>
+ <if test="quarter != null and quarter.size > 0">
+ and date_format(tcs.create_time, '%Y-%m') between #{quarter[0]} and #{quarter[1]}
+ </if>
<if test="date != null "> and date_format(tcif.create_time,'%Y-%m') = #{date}</if>
<if test="day != null "> and date(tcif.create_time) = #{day}</if>
<if test="params.publish != null and params.publish != ''">and tcif.publish = #{params.publish}</if>
@@ -45,7 +45,6 @@
</foreach>
</if>
</where>
- group by tcif.id
order by tcif.examine_tag desc,sd.area_code,tcif.create_time
</select>
@@ -54,7 +53,6 @@
from t_check_index_face tcif left join sys_dept sd on tcif.dept_id = sd.dept_id
<where>
<if test="examineTag != null "> and tcif.examine_tag = #{examineTag}</if>
- <if test="date != null "> and date_format(tcif.create_time,'%Y-%m') = #{date}</if>
<if test="day != null "> and date(tcif.create_time) = #{day}</if>
<if test="deptIds != null ">and tcif.dept_id in
<foreach collection="deptIds" separator="," open="(" close=")" item="deptId">
@@ -133,17 +131,43 @@
</select>
<select id="dashboard" resultType="com.ycl.platform.domain.entity.CheckIndexFace">
- SELECT
- IFNULL(ROUND(AVG(view_connect_stability * 100), 0), 0) AS view_connect_stability,
- IFNULL(ROUND(AVG(site_online * 100), 0), 0) AS site_online,
- IFNULL(ROUND(AVG(device_directory_consistent * 100), 0), 0) AS device_directory_consistent,
- IFNULL(ROUND(AVG(face_information_collection_accuracy * 100), 0), 0) AS face_information_collection_accuracy,
- IFNULL(ROUND(AVG(face_picture_qualification * 100), 0), 0) AS face_picture_qualification,
- IFNULL(ROUND(AVG(face_timing_accuracy * 100), 0), 0) AS face_timing_accuracy,
- IFNULL(ROUND(AVG(face_upload_timeliness * 100), 0), 0) AS face_upload_timeliness,
- IFNULL(ROUND(AVG(face_picture_availability * 100), 0), 0) AS face_picture_availability
- FROM
- t_check_index_face
+<!-- SELECT-->
+<!-- IFNULL(ROUND(AVG(view_connect_stability * 100), 0), 0) AS view_connect_stability,-->
+<!-- IFNULL(ROUND(AVG(site_online * 100), 0), 0) AS site_online,-->
+<!-- IFNULL(ROUND(AVG(device_directory_consistent * 100), 0), 0) AS device_directory_consistent,-->
+<!-- IFNULL(ROUND(AVG(face_information_collection_accuracy * 100), 0), 0) AS face_information_collection_accuracy,-->
+<!-- IFNULL(ROUND(AVG(face_picture_qualification * 100), 0), 0) AS face_picture_qualification,-->
+<!-- IFNULL(ROUND(AVG(face_timing_accuracy * 100), 0), 0) AS face_timing_accuracy,-->
+<!-- IFNULL(ROUND(AVG(face_upload_timeliness * 100), 0), 0) AS face_upload_timeliness,-->
+<!-- IFNULL(ROUND(AVG(face_picture_availability * 100), 0), 0) AS face_picture_availability-->
+<!-- FROM-->
+<!-- t_check_index_face-->
+<!-- <where>-->
+<!-- <if test="deptId != null">-->
+<!-- AND dept_id = #{deptId}-->
+<!-- </if>-->
+<!-- <if test="dataScope == 1">-->
+<!-- AND examine_tag = 0-->
+<!-- </if>-->
+<!-- <if test="dataScope == 2">-->
+<!-- AND examine_tag = 1-->
+<!-- </if>-->
+<!-- <if test="dataScope == 3">-->
+<!-- AND examine_tag = 2-->
+<!-- </if>-->
+<!-- </where>-->
+<!-- ORDER BY-->
+<!-- create_time DESC-->
+<!-- <if test="deptId == null">-->
+<!-- LIMIT 7-->
+<!-- </if>-->
+<!-- <if test="deptId != null">-->
+<!-- LIMIT 1-->
+<!-- </if>-->
+
+ WITH LatestRecords AS (
+ SELECT *
+ FROM t_check_index_face
<where>
<if test="deptId != null">
AND dept_id = #{deptId}
@@ -158,13 +182,24 @@
AND examine_tag = 2
</if>
</where>
- ORDER BY
- create_time DESC
+ ORDER BY create_time DESC
<if test="deptId == null">
LIMIT 7
</if>
<if test="deptId != null">
LIMIT 1
</if>
+ )
+ SELECT
+ IFNULL(ROUND(AVG(view_connect_stability * 100), 0), 0) AS view_connect_stability,
+ IFNULL(ROUND(AVG(site_online * 100), 0), 0) AS site_online,
+ IFNULL(ROUND(AVG(device_directory_consistent * 100), 0), 0) AS device_directory_consistent,
+ IFNULL(ROUND(AVG(face_information_collection_accuracy * 100), 0), 0) AS face_information_collection_accuracy,
+ IFNULL(ROUND(AVG(face_picture_qualification * 100), 0), 0) AS face_picture_qualification,
+ IFNULL(ROUND(AVG(face_timing_accuracy * 100), 0), 0) AS face_timing_accuracy,
+ IFNULL(ROUND(AVG(face_upload_timeliness * 100), 0), 0) AS face_upload_timeliness,
+ IFNULL(ROUND(AVG(face_picture_availability * 100), 0), 0) AS face_picture_availability
+ FROM
+ LatestRecords;
</select>
</mapper>
--
Gitblit v1.8.0