From e78cc56f04556a1d3d54f0db830ba9f16eb28a58 Mon Sep 17 00:00:00 2001 From: zss <zss@example.com> Date: 星期六, 03 八月 2024 21:40:53 +0800 Subject: [PATCH] 检验下单待检撤销+删除检验值结论还在 --- inspect-server/src/main/resources/mapper/InsOrderMapper.xml | 57 +++++++++++++++++++++++++++++++++++++++------------------ 1 files changed, 39 insertions(+), 18 deletions(-) diff --git a/inspect-server/src/main/resources/mapper/InsOrderMapper.xml b/inspect-server/src/main/resources/mapper/InsOrderMapper.xml index 9aa7a27..3e9e312 100644 --- a/inspect-server/src/main/resources/mapper/InsOrderMapper.xml +++ b/inspect-server/src/main/resources/mapper/InsOrderMapper.xml @@ -6,6 +6,7 @@ <resultMap id="BaseResultMap" type="com.yuanchu.mom.pojo.InsOrder"> <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"/> @@ -18,6 +19,8 @@ <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="isRevocation" column="is_revocation" /> </resultMap> <resultMap id="OrderThingDto" type="com.yuanchu.mom.dto.OrderThingDto"> @@ -61,32 +64,50 @@ from ( SELECT io.*, + isau.user_id assign, ir.id report_id, ir.url, ir.url_s, - (select count(*) from ins_sample isa2 - where isa2.ins_order_id = io.id and isa2.sample_code NOT REGEXP '/') sample_num, - concat(ROUND((select count(*) from ins_product ip - where state = 1 and ins_result is not null and ip.ins_sample_id in (select id from ins_sample where - ins_sample.ins_order_id= io.id )) / (select count(*) from ins_product ip2 - where state = 1 and ip2.ins_sample_id in (select id from ins_sample where ins_sample.ins_order_id= io.id )) * - 100, 2), '%') insProgress, - group_concat(distinct isa.sample_code,' ') sample_code, - group_concat(distinct isa.sample,' ') sample_name, - group_concat(distinct isa.model,' ') sample_model, + sample_counts.sample_num, + CONCAT(ROUND(approved_product_counts.approved_count / total_product_counts.total_count * 100, 2), '%') AS insProgress, + GROUP_CONCAT(DISTINCT isa.sample_code SEPARATOR ' ') AS sample_code, + GROUP_CONCAT(DISTINCT isa.sample SEPARATOR ' ') AS sample_name, + GROUP_CONCAT(DISTINCT isa.model SEPARATOR ' ') AS sample_model, u.name FROM ins_order io - LEFT JOIN ins_sample isa ON io.id = isa.ins_order_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 - where 1=1 + LEFT JOIN + 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 + (SELECT ins_order_id, COUNT(*) AS sample_num + FROM ins_sample + WHERE id in(select id1 from (select is2.id id1 ,ip.id from ins_sample is2 left join ins_product ip on is2.id = ip.ins_sample_id where ip.id is not null)s ) + GROUP BY ins_order_id) sample_counts ON io.id = sample_counts.ins_order_id + LEFT JOIN + (SELECT ins_sample.ins_order_id, COUNT(*) AS total_count + FROM ins_product + JOIN ins_sample ON ins_product.ins_sample_id = ins_sample.id + WHERE ins_product.state = 1 + GROUP BY ins_sample.ins_order_id) total_product_counts ON io.id = total_product_counts.ins_order_id + LEFT JOIN + (SELECT ins_sample.ins_order_id, COUNT(*) AS approved_count + FROM ins_product + JOIN ins_sample ON ins_product.ins_sample_id = ins_sample.id + WHERE ins_product.state = 1 AND ins_product.ins_result IS NOT NULL + GROUP BY ins_sample.ins_order_id) approved_product_counts ON io.id = approved_product_counts.ins_order_id + WHERE + 1=1 <if test="laboratory!=null and laboratory!=''"> - and io.laboratory=#{laboratory} + AND io.laboratory=#{laboratory} </if> - GROUP BY - io.id + GROUP BY io.id,type + order by type desc,io.id desc ) a <if test="ew.customSqlSegment != null and ew.customSqlSegment != ''"> ${ew.customSqlSegment} -- Gitblit v1.9.3