From d2264d73349d8f0cea3d6bde472548dde227c168 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期一, 07 四月 2025 09:15:38 +0800
Subject: [PATCH] 查询货架条件加上状态

---
 inspect-server/src/main/resources/mapper/InsOrderMapper.xml |   93 +++++++++++++++++++++++++++++++++++-----------
 1 files changed, 71 insertions(+), 22 deletions(-)

diff --git a/inspect-server/src/main/resources/mapper/InsOrderMapper.xml b/inspect-server/src/main/resources/mapper/InsOrderMapper.xml
index 5db1f71..4ccad15 100644
--- a/inspect-server/src/main/resources/mapper/InsOrderMapper.xml
+++ b/inspect-server/src/main/resources/mapper/InsOrderMapper.xml
@@ -60,15 +60,51 @@
         <association property="children" resultMap="SampleDefectsChildrenMap" javaType="java.util.List"/>
     </resultMap>
 
-    <select id="selectInsOrderPage" resultType="com.yuanchu.mom.dto.SampleOrderDto">
-        select *
+    <resultMap id="SampleOrderDto" type="com.yuanchu.mom.dto.SampleOrderDto">
+        <id property="id" column="id" jdbcType="INTEGER"/>
+        <result property="entrustCode" column="entrust_code" jdbcType="VARCHAR"/>
+        <result property="outEntrustCode" column="out_entrust_code" jdbcType="VARCHAR"/>
+        <result property="custom" column="custom" jdbcType="VARCHAR"/>
+        <result property="company" column="company" jdbcType="VARCHAR"/>
+        <result property="code" column="code" jdbcType="VARCHAR"/>
+        <result property="type" column="type" jdbcType="INTEGER"/>
+        <result property="appointed" column="appointed" jdbcType="TIMESTAMP"/>
+        <result property="state" column="state" jdbcType="INTEGER"/>
+        <result property="remark" column="remark" jdbcType="VARCHAR"/>
+        <result property="rule" column="rule" jdbcType="VARCHAR"/>
+        <result property="otcCode" column="otc_code" jdbcType="VARCHAR"/>
+        <result property="createUser" column="create_user" jdbcType="INTEGER"/>
+        <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
+        <result property="updateUser" column="update_user" jdbcType="INTEGER"/>
+        <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
+        <result property="revocationInsProductIds" column="revocation_ins_product_ids"/>
+        <result property="assign" column="assign"/>
+        <result property="sampleNum" column="sample_num"/>
+        <result property="insProgress" column="insProgress"/>
+        <result property="sampleCode" column="sample_code"/>
+        <result property="motorNumber" column="motor_number"/>
+        <result property="sampleName" column="sample_name"/>
+        <result property="sampleModel" column="sample_model"/>
+        <result property="name" column="name"/>
+        <collection property="reportDtos" ofType="com.yuanchu.mom.dto.ReportDto" resultMap="reportDto"/>
+    </resultMap>
+    <resultMap id="reportDto" type="com.yuanchu.mom.dto.ReportDto">
+        <result property="reportId" column="report_id"/>
+        <result property="url" column="url"/>
+        <result property="urlS" column="urlS"/>
+        <result property="codeUrl" column="codeUrl"/>
+    </resultMap>
+
+    <select id="selectInsOrderPage" resultMap="SampleOrderDto">
+        select *from (select a.* ,
+        ir.id report_id,
+        ir.url,
+        ir.url_s,
+        ir.sample_code as codeUrl
         from (
         SELECT
         io.*,
         isau.user_id assign,
-        ir.id report_id,
-        ir.url,
-        ir.url_s,
         sample_counts.sample_num,
         CONCAT(ROUND(approved_product_counts.approved_count / total_product_counts.total_count * 100, 2), '%') AS
         insProgress,
@@ -83,9 +119,6 @@
         ins_sample isa ON io.id = isa.ins_order_id
         LEFT JOIN
         ins_sample_user isau ON isau.ins_sample_id = io.id
-        LEFT JOIN
-        (SELECT id, ins_order_id, is_ratify, url, url_s FROM ins_report WHERE is_ratify = 1) ir ON io.id =
-        ir.ins_order_id
         LEFT JOIN
         user u ON io.create_user = u.id
         LEFT JOIN
@@ -114,6 +147,10 @@
         GROUP BY io.id,type
         order by type desc,io.id desc
         ) a
+        LEFT JOIN
+        (SELECT r.id, r.ins_order_id, is_ratify, url, url_s,sample_code FROM ins_report r left join ins_sample isa on
+        r.ins_sample_id = isa.id WHERE is_ratify = 1) ir ON a.id =
+        ir.ins_order_id )b
         <if test="ew.customSqlSegment != null and ew.customSqlSegment != ''">
             ${ew.customSqlSegment}
         </if>
@@ -156,8 +193,9 @@
         A.model,
         A.inspection_item,
         A.company,
+        A.cost ,
         A.`name`,
-        COUNT(1)     num,
+        COUNT(1) num,
         ROUND(SUM(A.price),2) price
         FROM (SELECT i.id,
         i.entrust_code,
@@ -165,7 +203,8 @@
         isa.sample,
         isa.model,
         ins_sample_id,
-        sum(c.price * times)                                   price,
+        times cost,
+        sum(c.price * times) price,
         GROUP_CONCAT(distinct c.inspection_item SEPARATOR ',') inspection_item,
         i.company,
         u.`name`
@@ -211,16 +250,7 @@
             ${ew.customSqlSegment}
         </if>
     </select>
-    <select id="selectDeviceList" resultType="java.util.Map">
-        select device_name,specification_model,management_number,<!--DATE_ADD(date_format(last_calibration_date,
-        '%Y-%m-%d'),INTERVAL calibration_date month)-->  date_format(next_calibration_date,'%Y-%m-%d')
-        latest_traceability
-        from device
-        where device.management_number in
-        <foreach collection="names" index="index" open="(" separator="," close=")" item="val">
-            #{val}
-        </foreach>
-    </select>
+
 
     <update id="upInsOrderParameter" parameterType="com.yuanchu.mom.pojo.InsOrder">
         UPDATE ins_order
@@ -349,7 +379,7 @@
         A.inspection_item,
         A.company,
         A.`name`,
-        COUNT(1)     num,
+        COUNT(1) num,
         ROUND(SUM(A.price),2) price
         FROM (SELECT i.id,
         i.entrust_code,
@@ -357,7 +387,7 @@
         isa.sample,
         isa.model,
         ins_sample_id,
-        sum(c.price * times)                                   price,
+        sum(c.price * times) price,
         GROUP_CONCAT(distinct c.inspection_item SEPARATOR ',') inspection_item,
         i.company,
         u.`name`
@@ -416,4 +446,23 @@
                  join user on prepare_user = name
         where ins_order.id = #{id}
     </select>
+
+    <select id="selectDeviceList" resultType="com.yuanchu.mom.dto.DevListDto">
+        select ROW_NUMBER() OVER (ORDER BY d.management_number) AS indexs,
+        device_name AS name,
+        specification_model AS model,
+        management_number AS number,
+        version,
+        date_format(CASE
+        WHEN dmr.next_calibration_date is not null THEN dmr.next_calibration_date
+        WHEN d.next_calibration_date > CURDATE() THEN d.next_calibration_date
+        END,'%Y-%m-%d') AS date
+        from device d
+        left join
+        device_metric_record dmr on d.id = dmr.device_id
+        where d.management_number in
+        <foreach collection="names" index="index" open="(" separator="," close=")" item="val">
+            #{val}
+        </foreach>
+    </select>
 </mapper>

--
Gitblit v1.9.3