From df1006a4b6066bb804f4ae1515e2edecbc64be74 Mon Sep 17 00:00:00 2001 From: maven <2163098428@qq.com> Date: 星期三, 16 七月 2025 11:30:45 +0800 Subject: [PATCH] yys 回退sql --- inspect-server/src/main/resources/mapper/InsSampleMapper.xml | 150 +++++++++++++++++-------------------------------- 1 files changed, 52 insertions(+), 98 deletions(-) diff --git a/inspect-server/src/main/resources/mapper/InsSampleMapper.xml b/inspect-server/src/main/resources/mapper/InsSampleMapper.xml index fc3d7da..cda7bff 100644 --- a/inspect-server/src/main/resources/mapper/InsSampleMapper.xml +++ b/inspect-server/src/main/resources/mapper/InsSampleMapper.xml @@ -164,14 +164,11 @@ <select id="findInsSampleAndOrder" resultType="com.ruoyi.inspect.vo.InsOrderPlanVO"> - SELECT * - FROM ( + select * from(select * from( SELECT - a.*, - ios.ins_state, - ios.verify_tell, - ios.verify_user - FROM ( + a.*,ios.ins_state,ios.verify_tell,verify_user + FROM + ( SELECT io.id, io.entrust_code, @@ -179,124 +176,81 @@ io.appointed, io.send_time, io.order_type, - CASE WHEN io.type_source = 0 THEN io.sample_view ELSE io.sample END AS sample, + case when + io.type_source = 0 + then io.sample_view + else io.sample end sample, GROUP_CONCAT(DISTINCT isa.model SEPARATOR ' ') AS sample_model, - MAX(isu.userName) AS userName, - MAX(isu2.checkName) AS checkName, - GROUP_CONCAT(DISTINCT ip.son_laboratory) AS son_laboratory, + userName, + checkName, + ip.son_laboratory, io.ins_time, io.laboratory, io.type_source, io.ifs_inventory_id, - MAX(ira.id) AS ins_report_id, - MAX(ira.url) AS url, - MAX(ira.url_s) AS url_s, - MAX(ira.temp_url_pdf) AS temp_url_pdf, - MAX(iiq.is_copper) AS is_copper - FROM ins_order io - INNER JOIN ins_sample isa ON isa.ins_order_id = io.id + ira.id ins_report_id, + ira.url, + ira.url_s, + ira.temp_url_pdf, + iiq.is_copper + FROM + ins_order io + LEFT JOIN ins_sample isa ON isa.ins_order_id = io.id LEFT JOIN ins_report ira ON ira.ins_order_id = io.id LEFT JOIN ifs_inventory_quantity iiq ON iiq.id = io.ifs_inventory_id LEFT JOIN ( - SELECT - ins_sample_id, - GROUP_CONCAT(DISTINCT uu.name SEPARATOR ',') AS userName - FROM ins_sample_user u - INNER JOIN user uu ON u.user_id = uu.id - WHERE u.state = 0 - <if test="sonLaboratory != null and sonLaboratory != ''"> - AND u.son_laboratory = #{sonLaboratory} + 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 u.state=0 + <if test="sonLaboratory!= null and sonLaboratory != ''"> + and son_laboratory=#{sonLaboratory} </if> GROUP BY ins_sample_id + ORDER BY ins_sample_id ) isu ON isu.ins_sample_id = io.id LEFT JOIN ( - SELECT - ins_sample_id, - MAX(uu.name) AS checkName - FROM ins_sample_user u - INNER JOIN user uu ON u.user_id = uu.id - WHERE u.state = 1 - <if test="sonLaboratory != null and sonLaboratory != ''"> - AND u.son_laboratory = #{sonLaboratory} + SELECT ins_sample_id,uu.name checkName + FROM ins_sample_user u LEFT JOIN user uu ON u.user_id = uu.id + WHERE u.state=1 + <if test="sonLaboratory!= null and sonLaboratory != ''"> + and son_laboratory=#{sonLaboratory} </if> GROUP BY ins_sample_id - ) isu2 ON isu2.ins_sample_id = io.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 io.send_time IS NOT NULL - + WHERE io.state = 1 and send_time is not null <if test="isCheck != null"> - <if test="userName != null and userName != ''"> - AND EXISTS ( - SELECT 1 - FROM ins_sample_user iu - JOIN user u ON iu.user_id = u.id - WHERE iu.ins_sample_id = io.id - AND iu.state = 1 - AND u.name LIKE CONCAT('%', #{userName}, '%') - <if test="sonLaboratory != null and sonLaboratory != ''"> - AND iu.son_laboratory = #{sonLaboratory} - </if> - ) + <if test="userName !=null and userName!=''"> + and checkName like CONCAT ('%', #{userName},'%') </if> </if> - <if test="isCheck == null"> - <if test="userName != null and userName != ''"> - AND EXISTS ( - SELECT 1 - FROM ins_sample_user iu - JOIN user u ON iu.user_id = u.id - WHERE iu.ins_sample_id = io.id - AND iu.state = 0 - AND u.name LIKE CONCAT('%', #{userName}, '%') - <if test="sonLaboratory != null and sonLaboratory != ''"> - AND iu.son_laboratory = #{sonLaboratory} - </if> - ) + <if test="userName !=null and userName!=''"> + and userName like CONCAT ('%', #{userName},'%') </if> </if> - - <if test="sonLaboratory != null and sonLaboratory != ''"> - AND EXISTS ( - SELECT 1 - FROM ins_product ip2 - WHERE ip2.ins_sample_id = isa.id - AND ip2.son_laboratory = #{sonLaboratory} - ) + <if test="sonLaboratory!= null and sonLaboratory != ''"> + and ip.son_laboratory = #{sonLaboratory} </if> - - GROUP BY io.id + GROUP BY + ip.son_laboratory, + io.id ) a - - LEFT JOIN ( - SELECT * - FROM ( - SELECT *, - ROW_NUMBER() OVER (PARTITION BY ins_order_id ORDER BY update_time DESC, id DESC) AS rn - FROM ins_order_state - ) ios - WHERE ios.rn = 1 - <if test="sonLaboratory != null and sonLaboratory != ''"> - AND ios.laboratory = #{sonLaboratory} + 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> - ) ios ON ios.ins_order_id = a.id - - WHERE ios.ins_state IS NOT NULL - - <if test="laboratory != null and laboratory != ''"> - AND a.laboratory = #{laboratory} - </if> - - ORDER BY a.type DESC, a.id - ) A - + )A <if test="ew.customSqlSegment != null and ew.customSqlSegment != ''"> ${ew.customSqlSegment} </if> - - ORDER BY send_time ASC + ORDER BY send_time asc </select> -- Gitblit v1.9.3