From 22d3a8dc4185c5461bee9e42a9f4a2775ff448e6 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期二, 10 九月 2024 17:28:17 +0800
Subject: [PATCH] 报告更改+再次试验

---
 inspect-server/src/main/resources/mapper/InsProductMapper.xml |   81 ++++++++++++++++++++++++++++++++++++++--
 1 files changed, 77 insertions(+), 4 deletions(-)

diff --git a/inspect-server/src/main/resources/mapper/InsProductMapper.xml b/inspect-server/src/main/resources/mapper/InsProductMapper.xml
index 220c796..4394f11 100644
--- a/inspect-server/src/main/resources/mapper/InsProductMapper.xml
+++ b/inspect-server/src/main/resources/mapper/InsProductMapper.xml
@@ -3,7 +3,6 @@
         PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.yuanchu.mom.mapper.InsProductMapper">
-
     <resultMap id="BaseResultMap" type="com.yuanchu.mom.pojo.InsProduct">
         <id property="id" column="id" jdbcType="INTEGER"/>
         <result property="inspectionItem" column="inspection_item" jdbcType="VARCHAR"/>
@@ -39,10 +38,84 @@
         <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
         <result property="templateId" column="template_id" jdbcType="INTEGER"/>
     </resultMap>
+    <update id="updateInspected">
+        UPDATE ins_product p
+        SET p.state=0
+        WHERE EXISTS(
+                      SELECT 1
+                      FROM ins_sample s
+                      WHERE s.ins_order_id IN (
+                          SELECT o.id
+                          FROM ins_order o
+                          WHERE o.id = #{id}
+                      )
+                        AND p.ins_sample_id = s.id
+                        AND p.state = 1
+                        AND p.ins_result IS NULL
+                  );
+    </update>
 
     <select id="selectOrderManDay" resultType="java.lang.Integer">
-        select coalesce(max(ip.man_day), 0) from ins_sample i
-        left join ins_product ip on i.id = ip.ins_sample_id
-        where i.id = #{sampleId}
+        select coalesce(max(ip.man_day), 0)
+        from ins_order io
+                 left join ins_sample isa on io.id = isa.ins_order_id
+                 left join ins_product ip on isa.id = ip.ins_sample_id
+        where io.id = #{orderId}
+    </select>
+    <select id="selectUserById" resultType="java.util.Map">
+        select name, company, phone, address, name_en
+        from user
+        where id = #{userId}
+    </select>
+    <select id="getProductAndResult" resultType="com.yuanchu.mom.dto.ProductResultDto2">
+        select ip.id,
+               ip.inspection_item,
+               ip.inspection_item_subclass,
+               ip.son_laboratory,
+               ip.unit,
+               ipr.equip_name equipValue,
+               io.entrust_code,
+               ipr.update_time,
+               ip.`last_value`,
+               ip.ins_result,
+               u.name         updateUserName
+        from ins_product ip
+                 left join ins_product_result ipr on ip.id = ipr.ins_product_id
+                 left join ins_sample isa on isa.id = ip.ins_sample_id
+                 left join ins_order io on io.id = isa.ins_order_id
+                 left join user u on u.id = ipr.update_user
+        where ip.ins_sample_id = #{sampleId}
+
+          and template_id is not null
+    </select>
+    <select id="selectFiberInsProduct" resultType="com.yuanchu.mom.pojo.InsProduct">
+        select * from ins_product
+        where state = 1
+        and (ins_fibers_id is not null or ins_fiber_id is not null)
+        and ins_result is null
+        and son_laboratory = #{laboratory}
+        and ins_sample_id in
+        <foreach collection="ids" index="index" item="item" open="(" separator="," close=")">
+            #{item}
+        </foreach>
+    </select>
+    <select id="selectNoProducts" resultType="com.yuanchu.mom.pojo.InsProduct">
+        select *
+        from (select ip.*, sample_code
+              from ins_product ip
+                       left join ins_sample is2 on ip.ins_sample_id = is2.id
+              where ip.ins_result is null
+                and state = 1
+                and is2.ins_order_id = #{orderId}) A
+    </select>
+
+    <select id="selectInsProductCountByOrderId" resultType="int">
+        select COUNT(1)
+        from ins_product ip
+                 left join ins_sample isa on ip.ins_sample_id = isa.id
+                 left join ins_order io on isa.ins_order_id = io.id
+        where io.id = #{orderId}
+          and (ip.ins_result is null or ip.ins_result = 2)
+          and ip.state = 1
     </select>
 </mapper>

--
Gitblit v1.9.3