From f4cfca6f2c8a5cb4e8e0fdc00d76a710283d6b06 Mon Sep 17 00:00:00 2001 From: 李林 <z1292839451@163.com> Date: 星期五, 12 四月 2024 18:05:48 +0800 Subject: [PATCH] 报告生成功能 --- inspect-server/src/main/resources/mapper/InsOrderMapper.xml | 72 +++++++++++++++++++++++++++++++++--- 1 files changed, 66 insertions(+), 6 deletions(-) diff --git a/inspect-server/src/main/resources/mapper/InsOrderMapper.xml b/inspect-server/src/main/resources/mapper/InsOrderMapper.xml index 3a6a8cb..77a58f3 100644 --- a/inspect-server/src/main/resources/mapper/InsOrderMapper.xml +++ b/inspect-server/src/main/resources/mapper/InsOrderMapper.xml @@ -78,17 +78,77 @@ <select id="selectInsOrderPage" resultType="com.yuanchu.mom.dto.SampleOrderDto"> select * from ( - select io.*,isa.id sampleId,isa.sample_code,isa.sample,isa.ins_progress,ir.id report_id,isa.send_time - 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 - from ins_report - where is_ratify = 1) ir on io.id = ir.ins_order_id + SELECT + io.*, + ir.id report_id, + concat(ROUND((select count(*) from ins_sample isa2 + where ins_state = 5 and isa2.ins_order_id = io.id) / (select count(*) from ins_sample isa2 + where isa2.ins_order_id = io.id) * 100, 2), '%') insProgress + 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 FROM ins_report WHERE is_ratify = 1 ) ir ON io.id = + ir.ins_order_id + GROUP BY + io.id ) a <if test="ew.customSqlSegment != null and ew.customSqlSegment != ''"> ${ew.customSqlSegment} </if> </select> + <select id="getLaboratoryCode" resultType="java.lang.String"> + select laboratory_number + from laboratory + where laboratory_name = #{name} + </select> + <select id="selectSampleAndProductByOrderId" resultType="com.yuanchu.mom.dto.SampleProductDto2"> + select * + from ( + select i.id,isa.sample_code,isa.sample,isa.model,ip.state,ip.unit,ip.inspection_item,ip.inspection_item_subclass, + ip.son_laboratory,ip.inspection_item_type,ip.inspection_value_type,ip.ask,ip.`last_value`,ip.ins_result,ipr.equip_value + from ins_sample isa + left join ins_order i on isa.ins_order_id = i.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 + where ip.state = 1 + ) a + <if test="ew.customSqlSegment != null and ew.customSqlSegment != ''"> + ${ew.customSqlSegment} + </if> + </select> + <select id="selectCostStatistics" resultType="com.yuanchu.mom.dto.CostStatisticsDto"> + select * from ( + SELECT + i.id, + i.entrust_code, + i.create_time, + isa.sample, + isa.model, + c.price, + ip.inspection_item, + u.company, + u.`name`, + i.create_user, + c.ins_sample_id + FROM + ins_order i + LEFT JOIN ins_sample isa ON isa.ins_order_id = i.id + LEFT JOIN ins_product ip ON ip.ins_sample_id = isa.id + LEFT JOIN `user` u ON u.id = i.user_id + LEFT JOIN (select SUM(b.price) price,b.ins_sample_id from (select * from ins_product where state = 1 GROUP BY ins_sample_id,man_hour_group) b GROUP BY b.ins_sample_id) c ON c.ins_sample_id = isa.id + where ip.state = 1 + ) a + <if test="ew.customSqlSegment != null and ew.customSqlSegment != ''"> + ${ew.customSqlSegment} + </if> + </select> + <select id="selectDeviceList" resultType="java.util.Map" parameterType="java.util.Set"> + select device_name,specification_model,factory_no,latest_traceability from device + where device_name in + <foreach collection="array" open="(" separator="," close=")" item="val"> + ${val} + </foreach> + </select> <update id="upInsOrderParameter" parameterType="com.yuanchu.mom.pojo.InsOrder"> UPDATE ins_order -- Gitblit v1.9.3