From c9da1b0da1178911e383ddcaebecd1e088fa6004 Mon Sep 17 00:00:00 2001
From: Fixiaobai <fixiaobai@163.com>
Date: 星期二, 05 九月 2023 16:37:07 +0800
Subject: [PATCH] 修改bug

---
 inspection-server/src/main/resources/mapper/ReportMapper.xml |   75 +++++++++++++++++++++++--------------
 1 files changed, 46 insertions(+), 29 deletions(-)

diff --git a/inspection-server/src/main/resources/mapper/ReportMapper.xml b/inspection-server/src/main/resources/mapper/ReportMapper.xml
index 25227c5..3d08557 100644
--- a/inspection-server/src/main/resources/mapper/ReportMapper.xml
+++ b/inspection-server/src/main/resources/mapper/ReportMapper.xml
@@ -46,7 +46,9 @@
         <result property="checkTime" column="check_time"/>
         <result property="inspectionStatus" column="inspection_status"/>
         <result property="notes" column="notes"/>
+        <result property="iUserName" column="iUserName"/>
         <collection property="products" resultMap="products" javaType="java.util.List"/>
+        <collection property="equipment" resultMap="equipment" javaType="java.util.List"/>
     </resultMap>
 
     <resultMap id="products" type="map">
@@ -58,40 +60,55 @@
         <result property="testState" column="test_state"/>
         <result property="ipName" column="ipName"/>
     </resultMap>
+    <resultMap id="equipment" type="map">
+        <result property="eId" column="eId"/>
+        <result property="eName" column="eName"/>
+        <result property="eType" column="eType"/>
+        <result property="eCode" column="eCode"/>
+        <result property="validty" column="validty"/>
+    </resultMap>
 
     <select id="getReportContext" resultMap="report">
-        SELECT
-            r.`code` rcode,
-            date_format( r.create_time, '%Y-%m-%d' ) create_time,
-            date_format( r.check_time, '%Y-%m-%d' ) check_time,
-            i.inspection_status,
-            im.`name`,
-            im.num,
-            im.specifications,
-            im.supplier,
-            im.`code` im_code,
-            i.`code` ins_code,
-            i.type,
-            ip.id,
-            ip.`name` ip_name,
-            im.form_time formTime,
-            ip.unit,
-            ip.required,
-            ip.test_value,
-            ip.test_state,
-            u.`name` ipName,
-            im.notes
-        FROM
-            report r
-                LEFT JOIN inspection i ON r.inspection_id = i.id
-                LEFT JOIN inspection_material im ON im.inspection_id = i.id
-                LEFT JOIN inspection_product ip ON ip.inspection_material_id = im.id
-                LEFT JOIN `user` u on ip.user_id =u.id
-        WHERE
-            ip.state != 0
+        SELECT r.`code`                                                                         rcode,
+               date_format(r.create_time, '%Y-%m-%d')                                           create_time,
+               date_format(r.check_time, '%Y-%m-%d')                                            check_time,
+               i.inspection_status,
+               im.`name`,
+               im.num,
+               im.specifications,
+               im.supplier,
+               im.`code`                                                                        im_code,
+               i.`code`                                                                         ins_code,
+               i.type,
+               ip.id,
+               ip.`name`                                                                        ip_name,
+               im.form_time                                                                     formTime,
+               ip.unit,
+               ip.required,
+               ip.test_value,
+               ip.test_state,
+               (SELECT u.`name` FROM `user` u WHERE u.id = i.user_id)                           iUserName,
+               im.notes,
+               ins.id                                                                           eId,
+               ins.equipment_name                                                               eName,
+               ins.specifications_models                                                        eType,
+               ins.equipment_code                                                               eCode,
+               DATE_FORMAT(DATE_ADD(mi.end_date, INTERVAL ins.term_validity MONTH), '%Y-%m-%d') validty
+        FROM report r
+                 LEFT JOIN inspection i ON r.inspection_id = i.id
+                 LEFT JOIN inspection_material im ON im.inspection_id = i.id
+                 LEFT JOIN inspection_product ip ON ip.inspection_material_id = im.id
+                 LEFT JOIN `user` u ON ip.user_id = u.id
+                 LEFT JOIN instrument ins ON ip.instrument_id = ins.id
+                 LEFT JOIN metrical_information mi on ins.id = mi.instrument_id
+        WHERE ip.state != 0
 	AND im.state != 0
+	AND ins.state != 0
+	AND u.state != 0
 	AND i.state != 0
 	AND r.`code` = #{code}
+        ORDER BY mi.end_date DESC
+            LIMIT 1
     </select>
 
 </mapper>

--
Gitblit v1.9.3