| | |
| | | ip.cable_tag |
| | | </sql> |
| | | |
| | | <sql id="selectInsOrderExport"> |
| | | SELECT |
| | | io.*, |
| | | isau.user_id assign, |
| | | ir.id report_id, |
| | | ir.url, |
| | | ir.url_s, |
| | | sample_counts.sample_num, |
| | | CONCAT(ROUND(approved_product_counts.approved_count / total_product_counts.total_count * 100, 2), '%') AS insProgress, |
| | | io.sample_view AS sample_name, |
| | | GROUP_CONCAT(DISTINCT isa.model SEPARATOR ' ') AS sample_model, |
| | | u.name, |
| | | testing_name, |
| | | case when io.type = 0 then '普通' |
| | | when io.type = 1 then '优先' |
| | | when io.type = 2 then '紧急' |
| | | end typeString, |
| | | case when io.ins_result = 1 then '合格' |
| | | when io.ins_result = 0 then '不合格' |
| | | else '待检验' end insResultString |
| | | FROM |
| | | ins_order io |
| | | 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 |
| | | LEFT JOIN (SELECT ins_sample_id, GROUP_CONCAT(DISTINCT uu.name SEPARATOR ',') AS testing_name |
| | | FROM ins_sample_user u |
| | | LEFT JOIN user uu ON u.user_id = uu.id |
| | | WHERE u.state = 0 |
| | | GROUP BY ins_sample_id |
| | | ORDER BY ins_sample_id) isu ON isu.ins_sample_id = io.id |
| | | </sql> |
| | | |
| | | <select id="selectInsOrderPage" resultType="com.ruoyi.inspect.dto.SampleOrderDto"> |
| | | select * |
| | | from ( |
| | |
| | | <!-- 查询检验单数据 --> |
| | | <select id="rawAllInsOrderExport" resultType="com.ruoyi.inspect.dto.SampleOrderDto"> |
| | | select * |
| | | from ( |
| | | SELECT |
| | | io.*, |
| | | isau.user_id assign, |
| | | ir.id report_id, |
| | | ir.url, |
| | | ir.url_s, |
| | | sample_counts.sample_num, |
| | | CONCAT(ROUND(approved_product_counts.approved_count / total_product_counts.total_count * 100, 2), '%') AS insProgress, |
| | | io.sample_view AS sample_name, |
| | | GROUP_CONCAT(DISTINCT isa.model SEPARATOR ' ') AS sample_model, |
| | | u.name, |
| | | testing_name, |
| | | case when io.type = 0 then '普通' |
| | | when io.type = 1 then '优先' |
| | | when io.type = 2 then '紧急' |
| | | end typeString, |
| | | case when io.ins_result = 1 then '合格' |
| | | when io.ins_result = 0 then '不合格' |
| | | else '待检验' end insResultString |
| | | FROM |
| | | ins_order io |
| | | 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 |
| | | LEFT JOIN (SELECT ins_sample_id, GROUP_CONCAT(DISTINCT uu.name SEPARATOR ',') AS testing_name |
| | | FROM ins_sample_user u |
| | | LEFT JOIN user uu ON u.user_id = uu.id |
| | | WHERE u.state = 0 |
| | | GROUP BY ins_sample_id |
| | | ORDER BY ins_sample_id) isu ON isu.ins_sample_id = io.id |
| | | from ( <include refid="selectInsOrderExport"/> |
| | | where (io.ifs_inventory_id IS NULL OR TRIM(io.ifs_inventory_id) = '') |
| | | <if test="isOrderAll != null and isOrderAll != ''"> |
| | | AND io.state in (1, 4) |
| | |
| | | left join ins_sample is2 on is2.ins_order_id = io.id |
| | | where is2.id = #{insSampleId} |
| | | </select> |
| | | |
| | | <!-- 根据订单id查询订单导出信息 --> |
| | | <select id="getInsOrderExportByIds" resultType="com.ruoyi.inspect.dto.SampleOrderDto"> |
| | | <include refid="selectInsOrderExport"/> |
| | | where (io.ifs_inventory_id IS NULL OR TRIM(io.ifs_inventory_id) = '') |
| | | and io.id in |
| | | <foreach item="id" collection="orderIds" open="(" separator="," close=")"> |
| | | #{id} |
| | | </foreach> |
| | | GROUP BY io.id,type |
| | | order by type desc,io.id desc |
| | | </select> |
| | | </mapper> |