From 9f19d3a24f8474bf6f9eb9401888c44b34b381e6 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期四, 21 十一月 2024 14:29:50 +0800
Subject: [PATCH] 第一次改动(检验任务与样品关联,附件与样品关联,报告与样品关联)

---
 inspect-server/src/main/resources/mapper/InsSampleMapper.xml |   80 ++++++++++++++++++++-------------------
 1 files changed, 41 insertions(+), 39 deletions(-)

diff --git a/inspect-server/src/main/resources/mapper/InsSampleMapper.xml b/inspect-server/src/main/resources/mapper/InsSampleMapper.xml
index 046862e..a69516e 100644
--- a/inspect-server/src/main/resources/mapper/InsSampleMapper.xml
+++ b/inspect-server/src/main/resources/mapper/InsSampleMapper.xml
@@ -34,13 +34,16 @@
         verify_user,
         ios.id orderStateId,
         ios.create_time,
-        (SELECT ins_time FROM ins_order_state WHERE ins_order_id = a.id AND laboratory = a.son_laboratory ORDER BY ins_time DESC LIMIT 1) AS ins_time ,
+        (SELECT ins_time FROM ins_order_state WHERE ins_order_id = a.id AND laboratory = a.son_laboratory and
+        ins_order_state.ins_sample_id=a.sampleId ORDER BY ins_time DESC LIMIT 1) AS ins_time ,
         iou.submit_time ,
         ios.sort,
         sort_time,
         version,
         ios.num-1 num1
         FROM
+        ins_order_state ios
+        LEFT JOIN
         (
         SELECT
         io.id,
@@ -48,8 +51,9 @@
         io.type,
         io.appointed,
         io.send_time,
-        group_concat(distinct isa.sample,' ') sample,
-        group_concat(distinct isa.sample_code,' ') sampleCode,
+        isa.id sampleId,
+        isa.sample sample,
+        isa.sample_code sampleCode,
         userName,
         checkName,
         ip.son_laboratory,
@@ -64,7 +68,7 @@
         and u.state=0
         GROUP BY ins_sample_id
         ORDER BY ins_sample_id
-        ) isu ON isu.ins_sample_id = io.id
+        ) isu ON isu.ins_sample_id = isa.id
         LEFT JOIN (
         SELECT ins_sample_id,uu.name checkName
         FROM ins_sample_user u LEFT JOIN user uu ON u.user_id = uu.id
@@ -72,7 +76,7 @@
         and u.state=1
         GROUP BY ins_sample_id
         ORDER BY ins_sample_id
-        )isu2 ON isu2.ins_sample_id = io.id
+        )isu2 ON isu2.ins_sample_id = isa.id
         LEFT JOIN ins_product ip ON ip.ins_sample_id = isa.id
         WHERE io.state = 1 and send_time is not null
         <if test="userName !=null and userName!=''">
@@ -84,7 +88,7 @@
         ip.son_laboratory,
         io.id
         ) a
-        LEFT JOIN ins_order_state ios ON ios.ins_order_id = a.id AND ios.laboratory = a.son_laboratory
+        ON ios.ins_order_id = a.id AND ios.laboratory = a.son_laboratory and ios.ins_sample_id=a.sampleId
         LEFT JOIN ins_order_user iou ON ios.id = iou.ins_order_state_id and ios.num=iou.num
         ORDER BY
         ios.sort,
@@ -106,8 +110,10 @@
     <select id="inspectionOrderDetailsTaskSwitching" resultType="com.yuanchu.mom.vo.InsOrderPlanTaskSwitchVo">
         select * from(
         SELECT
-        a.*,ios.ins_state,ios.verify_tell,isu2.order_user_id,<!--(ios.verify_user = #{userId})--> verify_user
+        a.*,ios.ins_state,ios.verify_tell,isu2.order_user_id,verify_user
         FROM
+        ins_order_state ios
+        LEFT JOIN
         (
         SELECT
         io.id,
@@ -115,8 +121,9 @@
         io.type,
         io.appointed,
         io.send_time,
-        group_concat(distinct isa.sample,' ') sampleType,
-        group_concat(distinct isa.sample_code,' ') sampleCode,
+        isa.id sampleId,
+        isa.sample sampleType,
+        isa.sample_code sampleCode,
         isu.user_id,
         user.name userName,
         ip.son_laboratory,
@@ -125,7 +132,7 @@
         FROM
         ins_order io
         LEFT JOIN ins_sample isa ON isa.ins_order_id = io.id
-        LEFT JOIN ( <!--SELECT * FROM ins_sample_user GROUP BY ins_sample_id, user_id -->
+        LEFT JOIN (
         SELECT *
         FROM ins_sample_user u
         WHERE son_laboratory=#{sonLaboratory} and (ins_sample_id, id) IN (
@@ -135,12 +142,11 @@
         GROUP BY ins_sample_id
         )
         ORDER BY ins_sample_id, id
-        ) isu ON isu.ins_sample_id = io.id
+        ) isu ON isu.ins_sample_id = isa.id
         LEFT JOIN ins_product ip ON ip.ins_sample_id = isa.id
         LEFT JOIN user ON isu.user_id = user.id
         WHERE
         io.state = 1
-        -- # AND io.ins_state != 5
         and send_time is not null
         <if test="userId !=null and userId!=''">
             and (isu.user_id = #{userId} OR isu.user_id is NULL )
@@ -150,21 +156,21 @@
         ip.son_laboratory,
         io.id
         ) a
-        LEFT JOIN ins_order_state ios ON ios.ins_order_id = a.id AND ios.laboratory = a.son_laboratory
-        left join (SELECT td.user_id order_user_id, td.ins_sample_id FROM ins_sample_user td,(SELECT max(id) id FROM
+          ON ios.ins_order_id = a.id AND ios.laboratory = a.son_laboratory and a.sampleId=ios.ins_sample_id
+        left join
+        (SELECT td.user_id order_user_id, td.ins_sample_id FROM ins_sample_user td,(SELECT max(id) id FROM
         ins_sample_user where son_laboratory=#{sonLaboratory} GROUP BY ins_sample_id) md where td.id = md.id
         <if test="userId !=null and userId!=''">
             and user_id = #{userId} OR user_id is NULL
         </if>
         OR user_id is NULL
         ) isu2 on
-        isu2.ins_sample_id = a.id
+        isu2.ins_sample_id = a.sampleId
         where ins_state is not null
         <if test="laboratory != null and laboratory != ''">
             and a.laboratory=#{laboratory}
         </if>
         ORDER BY
-        <!--a.user_id DESC,-->
         a.type DESC,
         a.id
         ) b
@@ -215,7 +221,7 @@
                ip.method_s
         from ins_sample isa
                  left join ins_product ip on isa.id = ip.ins_sample_id
-        where isa.ins_order_id = #{id}
+        where isa.id = #{id}
           and state = 1
           and isa.id in (select id1
                          from (select is2.id id1, ip.id
@@ -266,7 +272,7 @@
                `last_value`,
                ip.ins_result    ip_ins_result,
                state,
-               ins_sample_id,
+               ios.ins_sample_id,
                ip.create_user   ip_create_user,
                ip.update_user   ip_update_user,
                ip.create_time   ip_create_time,
@@ -292,11 +298,11 @@
                ip.temperature,
                ip.humidity
         from ins_sample isa
-                 left join ins_order_state ios on isa.ins_order_id = ios.ins_order_id
+                 left join ins_order_state ios on isa.id = ios.ins_sample_id
                  left join ins_product ip on isa.id = ip.ins_sample_id
                  left join ins_product_result ipr on ip.id = ipr.ins_product_id
                  left join ins_product_result_2 ipr2 on ip.id = ipr2.ins_product_id
-        where isa.ins_order_id = #{id}
+        where isa.id = #{sampleId}
           and state = 1
           and ip.son_laboratory = #{laboratory}
           and ios.laboratory = #{laboratory}
@@ -336,7 +342,7 @@
                `last_value`,
                ip.ins_result    ip_ins_result,
                state,
-               ins_sample_id,
+               ios.ins_sample_id,
                ip.create_user   ip_create_user,
                ip.update_user   ip_update_user,
                ip.create_time   ip_create_time,
@@ -362,11 +368,11 @@
                ip.temperature,
                ip.humidity
         from ins_sample isa
-                 left join ins_order_state ios on isa.ins_order_id = ios.ins_order_id
+                 left join ins_order_state ios on isa.id = ios.ins_sample_id
                  left join ins_product ip on isa.id = ip.ins_sample_id
                  left join ins_product_result ipr on ip.id = ipr.ins_product_id
                  left join ins_product_result_2 ipr2 on ip.id = ipr2.ins_product_id
-        where isa.ins_order_id = #{id}
+        where isa.id = #{sampleId}
           and state = 1
           and ip.son_laboratory = #{laboratory}
           and ios.laboratory = #{laboratory}
@@ -591,7 +597,7 @@
                `last_value`,
                ip.ins_result    ip_ins_result,
                state,
-               ins_sample_id,
+               ios.ins_sample_id,
                ip.create_user   ip_create_user,
                ip.update_user   ip_update_user,
                ip.create_time   ip_create_time,
@@ -616,10 +622,10 @@
                ip.dic
         from ins_product ip
                  left join ins_sample isa on ip.ins_sample_id = isa.id
-                 left join ins_order_state ios on ios.ins_order_id = isa.ins_order_id
+                 left join ins_order_state ios on ios.ins_sample_id = isa.id
                  left join ins_product_result ipr on ip.id = ipr.ins_product_id
                  left join ins_product_result_2 ipr2 on ip.id = ipr2.ins_product_id
-        where ins_sample_id = #{id}
+        where ios.ins_sample_id = #{id}
           and state = 1
           and ip.son_laboratory = #{laboratory}
           and ip.standard_method_list_id is not null
@@ -659,7 +665,7 @@
                `last_value`,
                ip.ins_result    ip_ins_result,
                state,
-               ins_sample_id,
+               ios.ins_sample_id,
                ip.create_user   ip_create_user,
                ip.update_user   ip_update_user,
                ip.create_time   ip_create_time,
@@ -684,10 +690,10 @@
                ip.dic
         from ins_product ip
                  left join ins_sample isa on ip.ins_sample_id = isa.id
-                 left join ins_order_state ios on ios.ins_order_id = isa.ins_order_id
+                 left join ins_order_state ios on ios.ins_sample_id = isa.id
                  left join ins_product_result ipr on ip.id = ipr.ins_product_id
                  left join ins_product_result_2 ipr2 on ip.id = ipr2.ins_product_id
-        where ins_sample_id = #{id}
+        where ios.ins_sample_id = #{id}
           and state = 1
           and ip.son_laboratory = #{laboratory}
           and ip.standard_method_list_id is not null
@@ -725,7 +731,7 @@
                `last_value`,
                ip.ins_result    ip_ins_result,
                state,
-               ins_sample_id,
+               ios.ins_sample_id,
                ip.create_user   ip_create_user,
                ip.update_user   ip_update_user,
                ip.create_time   ip_create_time,
@@ -750,10 +756,10 @@
                ip.dic
         from ins_product ip
                  left join ins_sample isa on ip.ins_sample_id = isa.id
-                 left join ins_order_state ios on ios.ins_order_id = isa.ins_order_id
+                 left join ins_order_state ios on ios.ins_sample_id = isa.id
                  left join ins_product_result ipr on ip.id = ipr.ins_product_id
                  left join ins_product_result_2 ipr2 on ip.id = ipr2.ins_product_id
-        where ins_sample_id = #{id}
+        where ios.ins_sample_id = #{id}
           and state = 1
           and ip.son_laboratory = #{laboratory}
           and ip.standard_method_list_id is not null
@@ -858,8 +864,8 @@
         <result property="insState" column="ins_state" jdbcType="INTEGER"/>
         <result property="joinNum" column="join_num" jdbcType="INTEGER"/>
         <result property="remark" column="remark" jdbcType="VARCHAR"/>
-        <result property="issueTime" column="issue_time" />
-        <result property="issueName" column="issueName" />
+        <result property="issueTime" column="issue_time"/>
+        <result property="issueName" column="issueName"/>
         <result property="createUser" column="create_user" jdbcType="INTEGER"/>
         <result property="updateUser" column="update_user" jdbcType="INTEGER"/>
         <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
@@ -941,7 +947,7 @@
     </select>
     <select id="selectInsSample" resultType="com.yuanchu.mom.pojo.InsSample">
         select isa.*,
-        case when entrust_code is null then out_entrust_code else entrust_code end as  entrust_code
+        case when entrust_code is null then out_entrust_code else entrust_code end as entrust_code
         from ins_sample isa
         left join ins_order io on isa.ins_order_id = io.id
         where ins_order_id in
@@ -956,9 +962,5 @@
         where son_laboratory = '鐢佃矾璇曢獙'
           and state = 1
           and ins_order_id = #{insOrderId}
-    </select>
-    <select id="selectList1" resultType="com.yuanchu.mom.dto.SampleProductDto">
-        select * from ins_sample where ins_order_id=#{id
-}
     </select>
 </mapper>

--
Gitblit v1.9.3