From 95f0a8b4d82a859f2018c9d77e1a8a3a38b2d523 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期二, 23 七月 2024 17:06:50 +0800
Subject: [PATCH] 报备记录、编号工具方法

---
 ycl-server/src/main/resources/mapper/zgyw/ReportMapper.xml |   29 +++++++++++++++++++++++++----
 1 files changed, 25 insertions(+), 4 deletions(-)

diff --git a/ycl-server/src/main/resources/mapper/zgyw/ReportMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/ReportMapper.xml
index a6bac16..382f7b4 100644
--- a/ycl-server/src/main/resources/mapper/zgyw/ReportMapper.xml
+++ b/ycl-server/src/main/resources/mapper/zgyw/ReportMapper.xml
@@ -24,13 +24,19 @@
         LEFT JOIN t_yw_unit u ON r.unit_id = u.id and u.deleted = 0
         LEFT JOIN t_yw_people p ON r.people_id = p.id and p.deleted = 0
         LEFT JOIN t_yw_point pt ON r.point_id = pt.id and pt.deleted = 0
-        where
+        INNER JOIN (
+            SELECT identify,MAX(create_time) AS create_time
+            FROM t_report
+            WHERE deleted = 0
+            GROUP BY identify
+        ) as rr ON r.create_time = rr.create_time
+        WHERE
         r.deleted = 0
         <if test="query.reportType != null and query.reportType != ''">
             AND r.report_type = #{query.reportType}
         </if>
-        <if test="query.beginCreateTime != null">
-            AND r.create_time between #{query.beginCreateTime} and #{query.endCreateTime}
+        <if test="query.status != null">
+            AND r.status = #{query.status}
         </if>
         <if test="query.pointId != null and query.pointId != ''">
             AND pt.point_name like concat('%', #{query.pointId}, '%')
@@ -38,7 +44,22 @@
         <if test="query.peopleId != null and query.peopleId != ''">
             AND p.yw_person_name like concat('%', #{query.peopleId}, '%')
         </if>
-        ORDER BY r.create_time DESC
+        ORDER BY r.update_time DESC
+    </select>
+
+    <select id="examineRecord" resultMap="BaseResultMap">
+        SELECT
+            r.*, u.unit_name, p.yw_person_name as peopleName, pt.point_name
+        FROM
+            t_report r
+                LEFT JOIN t_yw_unit u ON r.unit_id = u.id and u.deleted = 0
+                LEFT JOIN t_yw_people p ON r.people_id = p.id and p.deleted = 0
+                LEFT JOIN t_yw_point pt ON r.point_id = pt.id and pt.deleted = 0
+                INNER JOIN (
+                    SELECT identify, create_time
+                    FROM t_report
+                    WHERE id = #{id} AND deleted = 0
+            ) as rr ON r.identify = rr.identify AND r.create_time &lt;= rr.create_time
     </select>
 
 </mapper>

--
Gitblit v1.8.0