From 87794ed4e7b7cf7b13f7deef5da3e3ff03255d81 Mon Sep 17 00:00:00 2001 From: zss <zss@example.com> Date: 星期日, 04 八月 2024 23:01:09 +0800 Subject: [PATCH] 检验任务负责人展示修改 --- inspect-server/src/main/resources/mapper/InsSampleMapper.xml | 145 ++++++++++++++++++++++++++++++----------------- 1 files changed, 92 insertions(+), 53 deletions(-) diff --git a/inspect-server/src/main/resources/mapper/InsSampleMapper.xml b/inspect-server/src/main/resources/mapper/InsSampleMapper.xml index 6686c39..f1b69e5 100644 --- a/inspect-server/src/main/resources/mapper/InsSampleMapper.xml +++ b/inspect-server/src/main/resources/mapper/InsSampleMapper.xml @@ -25,9 +25,9 @@ </resultMap> <select id="findInsSampleAndOrder" resultType="com.yuanchu.mom.vo.InsOrderPlanVO"> - select * from(select * from( + <!--select * from(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 ( SELECT @@ -40,11 +40,12 @@ isu.user_id, user.name userName, ip.son_laboratory, - io.ins_time + io.ins_time, + io.laboratory 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 ( @@ -56,10 +57,9 @@ ORDER BY ins_sample_id, id ) isu ON isu.ins_sample_id = io.id LEFT JOIN ins_product ip ON ip.ins_sample_id = isa.id - LEFT JOIN user ON isu.user_id = user.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 ) @@ -80,11 +80,74 @@ ) isu2 on isu2.ins_sample_id = a.id ORDER BY - <!--a.user_id DESC,--> a.type DESC, a.id ) b - where ins_state is not null)A + where ins_state is not null--> + + select * from(select * from( + SELECT + a.*,ios.ins_state,ios.verify_tell,verify_user + FROM + ( + SELECT + io.id, + io.entrust_code, + io.type, + io.appointed, + io.send_time, + group_concat(distinct isa.sample,' ') sample, + userName, + checkName, + ip.son_laboratory, + io.ins_time, + io.laboratory + FROM + ins_order io + LEFT JOIN ins_sample isa ON isa.ins_order_id = io.id + + LEFT JOIN ( + SELECT ins_sample_id,GROUP_CONCAT( DISTINCT uu.name SEPARATOR ',') AS userName + FROM ins_sample_user u LEFT JOIN user uu ON u.user_id = uu.id + WHERE son_laboratory=#{sonLaboratory} + and u.state=0 + GROUP BY ins_sample_id + ORDER BY ins_sample_id + ) isu ON isu.ins_sample_id = io.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 + WHERE son_laboratory=#{sonLaboratory} + and u.state=1 + GROUP BY ins_sample_id + ORDER BY ins_sample_id + )isu2 ON isu2.ins_sample_id = io.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!=''"> + and ( (userName like CONCAT ('%', #{userName},'%') ) + or (checkName like CONCAT ('%', #{userName},'%') ) ) + </if> + and ip.son_laboratory=#{sonLaboratory} + GROUP BY + 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 + + ORDER BY + a.type DESC, + a.id + ) b + where ins_state is not null + <if test="laboratory!=null and laboratory!=''"> + and laboratory=#{laboratory} + </if> + )A <if test="ew.customSqlSegment != null and ew.customSqlSegment != ''"> ${ew.customSqlSegment} </if> @@ -94,41 +157,6 @@ select * from( SELECT a.*,ios.ins_state,ios.verify_tell,isu2.order_user_id,<!--(ios.verify_user = #{userId})--> verify_user - <!--FROM - ( - SELECT - io.id, - io.entrust_code, - io.type, - io.appointed, - io.send_time, - io.sample_type, - isu.user_id, - ip.son_laboratory, - io.ins_time - 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 ) isu ON isu.ins_sample_id = io.id - LEFT JOIN ins_product ip ON ip.ins_sample_id = isa.id - WHERE - io.state = 1 - # AND io.ins_state != 5 - and send_time is not null - and (isu.user_id = #{userId} OR isu.user_id is NULL) - GROUP BY - 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 - ins_sample_user GROUP BY ins_sample_id) md where td.id = md.id and user_id = #{userId}) isu2 on - isu2.ins_sample_id = a.id - ORDER BY - a.user_id DESC, - a.type DESC, - a.id - ) b--> FROM ( SELECT @@ -137,11 +165,12 @@ io.type, io.appointed, io.send_time, - group_concat(distinct isa.sample,' ') sample, + group_concat(distinct isa.sample,' ') sampleType, isu.user_id, user.name userName, ip.son_laboratory, - io.ins_time + io.ins_time, + io.laboratory FROM ins_order io LEFT JOIN ins_sample isa ON isa.ins_order_id = io.id @@ -157,7 +186,7 @@ ORDER BY ins_sample_id, id ) isu ON isu.ins_sample_id = io.id LEFT JOIN ins_product ip ON ip.ins_sample_id = isa.id - LEFT JOIN user ON isu.user_id = user.id + LEFT JOIN user ON isu.user_id = user.id WHERE io.state = 1 # AND io.ins_state != 5 @@ -166,7 +195,6 @@ and (isu.user_id = #{userId} OR isu.user_id is NULL ) </if> OR isu.user_id is NULL - GROUP BY ip.son_laboratory, io.id @@ -180,12 +208,15 @@ OR user_id is NULL ) isu2 on isu2.ins_sample_id = a.id + where ins_state is not null + <if test="laboratory != null and laboratory!=''"> + and laboratory=#{laboratory} + </if> ORDER BY <!--a.user_id DESC,--> a.type DESC, a.id ) b - where ins_state is not null)A <if test="ew.customSqlSegment != null and ew.customSqlSegment != ''"> ${ew.customSqlSegment} </if> @@ -241,7 +272,7 @@ and state = 1 and ins_fiber_id is null and ins_fibers_id is null - and isa.sample_code NOT REGEXP '/' + and isa.sample_code NOT REGEXP '/' </select> <select id="getInsOrderAndSample" resultMap="sampleDto"> select isa.*, @@ -303,6 +334,7 @@ select name_en from `center-lims`.product where name = #{sample} + limit 1 </select> <select id="selectSampleProductListByOrderId2" resultMap="sampleDto"> select isa.*, @@ -332,7 +364,8 @@ method, man_day, bsm, - tell as ask, + ask, + tell, `last_value`, ip.ins_result ip_ins_result, state, @@ -350,7 +383,7 @@ 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 where ins_order_id = #{id} - and ip.standard_method_list_id is not null + and ip.standard_method_list_id is not null and state = 1 </select> @@ -431,7 +464,7 @@ and ip.son_laboratory = #{laboratory} and ins_fiber_id is null and ins_fibers_id is null - and standard_method_list_id is not null + and standard_method_list_id is not null </select> <select id="getInsProduct2" resultMap="product"> select ip.id ip_id, @@ -671,6 +704,12 @@ code methodName from ins_sample is2 inner join standard_method sm on standard_method_list_id = sm.id - where is2.id=#{sampleId} + where is2.id = #{sampleId} + </select> + + <select id="selMethodById" resultType="java.lang.String"> + select code + from standard_method + where id = (select standard_method_list_id from ins_sample where id = #{sampleId}) </select> </mapper> -- Gitblit v1.9.3