From ca348b39515efab36aa5ec0f68144a9917e7b188 Mon Sep 17 00:00:00 2001 From: zss <zss@example.com> Date: 星期二, 22 十月 2024 16:44:33 +0800 Subject: [PATCH] 费用统计,报告修改 --- inspect-server/src/main/resources/mapper/InsOrderMapper.xml | 170 +++++++++++++++++++------------------------------------- 1 files changed, 58 insertions(+), 112 deletions(-) diff --git a/inspect-server/src/main/resources/mapper/InsOrderMapper.xml b/inspect-server/src/main/resources/mapper/InsOrderMapper.xml index bc76b6c..7decfe3 100644 --- a/inspect-server/src/main/resources/mapper/InsOrderMapper.xml +++ b/inspect-server/src/main/resources/mapper/InsOrderMapper.xml @@ -14,13 +14,14 @@ <result property="appointed" column="appointed" jdbcType="TIMESTAMP"/> <result property="state" column="state" jdbcType="INTEGER"/> <result property="remark" column="remark" jdbcType="VARCHAR"/> + <result property="rule" column="rule" jdbcType="VARCHAR"/> <result property="otcCode" column="otc_code" jdbcType="VARCHAR"/> <result property="createUser" column="create_user" jdbcType="INTEGER"/> <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" /> + <result property="revocationInsProductIds" column="revocation_ins_product_ids"/> + <result property="isRevocation" column="is_revocation"/> </resultMap> <resultMap id="OrderThingDto" type="com.yuanchu.mom.dto.OrderThingDto"> @@ -69,8 +70,10 @@ 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, - GROUP_CONCAT(DISTINCT isa.sample_code SEPARATOR ' ') AS sample_code, + 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.motor_number SEPARATOR '锛�') AS motor_number, GROUP_CONCAT(DISTINCT isa.sample SEPARATOR ' ') AS sample_name, GROUP_CONCAT(DISTINCT isa.model SEPARATOR ' ') AS sample_model, u.name @@ -81,13 +84,15 @@ 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 + (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 ) + 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 @@ -119,31 +124,6 @@ <result column="name" property="name"/> <result column="create_time" property="create_time"/> </resultMap> - <select id="selectInsOrderParameter" resultType="com.yuanchu.mom.pojo.InsOrder"> - select * - from ( - select - id, - appointed, - user_id, - create_user, - otc_code, - code, - custom, - update_user, - update_time, - type, - entrust_code, - company, - remark, - create_time, - state - from ins_order - ) 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 @@ -153,13 +133,15 @@ select * from ( select - i.id,isa.sample_code,isa.sample,isa.model,isa.ins_state,ip.id insProductId,ip.state,ip.unit,ip.inspection_item,ip.inspection_item_subclass, + i.id,isa.sample_code,isa.sample,isa.model,isa.ins_state,ip.id + insProductId,ip.state,ip.unit,ip.inspection_item,ip.inspection_item_subclass, ip.son_laboratory,ip.inspection_item_type,ip.inspection_value_type,ip.tell,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 + and i.id=#{id} ) a <if test="ew.customSqlSegment != null and ew.customSqlSegment != ''"> ${ew.customSqlSegment} @@ -167,31 +149,6 @@ </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, - c.cost, - c.inspection_item, - cus.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 `user` u ON u.id = i.user_id - left join custom cus on cus.id = u.company - LEFT JOIN (select SUM(b.price) price, sum(b.man_hour) cost,b.ins_sample_id,GROUP_CONCAT(b.inspection_item2 - SEPARATOR ',') - inspection_item from (select *,GROUP_CONCAT(inspection_item - SEPARATOR ',') inspection_item2 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 (i.state = 1 or i.state = 3 or i.state = 4) - ) a--> SELECT A.id, A.entrust_code, A.create_time, @@ -200,38 +157,48 @@ A.inspection_item, A.company, A.`name`, - COUNT(1) num, - SUM(A.price) price, - SUM(A.cost) cost - FROM - (SELECT - i.id, + COUNT(1) num, + SUM(A.price) price + FROM (SELECT i.id, i.entrust_code, i.create_time, isa.sample, - isa.sample_code, isa.model, - c.price, - c.cost, - c.inspection_item, + ins_sample_id, + sum(c.price * times) price, + GROUP_CONCAT(distinct c.inspection_item SEPARATOR ',') inspection_item, i.company, - u.`name`, - i.create_user, - c.ins_sample_id - FROM - ins_order i + u.`name` + FROM ins_order i LEFT JOIN ins_sample isa ON isa.ins_order_id = i.id LEFT JOIN `user` u ON u.id = i.user_id left join custom cus on cus.id = u.company - LEFT JOIN (select SUM(b.price) price, sum(b.man_hour) cost,b.ins_sample_id, - GROUP_CONCAT(b.inspection_item2 - SEPARATOR ',') - inspection_item from (select * , - GROUP_CONCAT(CONCAT(inspection_item,'@',inspection_item_subclass) SEPARATOR ',')inspection_item2 from ins_product where state = 1 and template_id IS NOT NULL GROUP BY ins_sample_id,man_hour_group) b GROUP - BY b.ins_sample_id) c ON c.ins_sample_id = isa.id - where (i.state = 1 or i.state = 3 or i.state = 4) and c.ins_sample_id IS not NULL)A - GROUP BY - A.id, + LEFT JOIN (select ip.ins_sample_id, + ip.inspection_item, + ip.inspection_item_subclass, + ip.price, + sum(aowh.output_work_time) times + from ins_product ip + left join auxiliary_output_working_hours aowh on ip.id = aowh.ins_product_id + where state = 1 + and ins_result is not null + and ins_result != 2 + and template_id IS NOT NULL + group by ip.ins_sample_id, + ip.inspection_item, + ip.inspection_item_subclass, + ip.price) c ON c.ins_sample_id = isa.id + where (i.state = 4) + and c.ins_sample_id IS not NULL + group by i.id, + i.entrust_code, + i.create_time, + isa.sample, + isa.model, + i.company, + ins_sample_id, + u.`name`) A + GROUP BY A.id, A.entrust_code, A.create_time, A.sample, @@ -357,11 +324,6 @@ from `center-lims`.enums where value = #{value} </select> - <select id="getStandardMethodCode" resultType="java.lang.String"> - select code - from `center-lims`.standard_method - where id = #{id} - </select> <select id="selLaboratoryCode" resultType="java.lang.String"> select laboratory_code from laboratory @@ -379,30 +341,6 @@ <select id="selectCostStatistics2" resultType="com.yuanchu.mom.dto.CostStatisticsDto"> select * from ( - <!--SELECT - i.id, - i.entrust_code, - i.create_time, - isa.sample, - isa.model, - c.price, - c.cost, - c.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 `user` u ON u.id = i.user_id - LEFT JOIN (select SUM(b.price) price, sum(b.man_hour) cost,b.ins_sample_id,GROUP_CONCAT(b.inspection_item2 - SEPARATOR ',') - inspection_item from (select *,GROUP_CONCAT(inspection_item - SEPARATOR ',') inspection_item2 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 (i.state = 1 or i.state = 3 or i.state = 4) - ) a--> SELECT A.id, A.entrust_code, A.create_time, @@ -442,9 +380,10 @@ GROUP_CONCAT(b.inspection_item2 SEPARATOR ',') inspection_item from (select * , - GROUP_CONCAT(CONCAT(inspection_item,'@',inspection_item_subclass) SEPARATOR ',')inspection_item2 from ins_product where state = 1 and template_id IS NOT NULL GROUP BY ins_sample_id,man_hour_group) b GROUP + GROUP_CONCAT(CONCAT(inspection_item,'@',inspection_item_subclass) SEPARATOR ',')inspection_item2 from + ins_product where state = 1 and ins_result is not null and ins_result!=2 and template_id IS NOT NULL GROUP BY ins_sample_id,man_hour_group) b GROUP BY b.ins_sample_id) c ON c.ins_sample_id = isa.id - where (i.state = 1 or i.state = 3 or i.state = 4) and c.ins_sample_id IS not NULL)A + where (<!--i.state = 1 or i.state = 3 or -->i.state = 4) and c.ins_sample_id IS not NULL)A GROUP BY A.id, A.entrust_code, @@ -477,4 +416,11 @@ from department_lims where id = #{depLimsId} </select> + + <select id="selectById2" resultType="com.yuanchu.mom.pojo.InsOrder"> + select ins_order.*, user.id prepareUserId + from ins_order + join user on prepare_user = name + where ins_order.id = #{id} + </select> </mapper> -- Gitblit v1.9.3