From 24aeee2fe7b76c7e9a8731f7bef93b48a47da17f Mon Sep 17 00:00:00 2001 From: lyfO_o <764716047@qq.com> Date: 星期二, 26 四月 2022 15:53:38 +0800 Subject: [PATCH] up --- src/main/java/com/nanometer/smartlab/dao/SysReagentDao.xml | 73 ++++++++++++++++++++++++++++++++---- 1 files changed, 65 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/nanometer/smartlab/dao/SysReagentDao.xml b/src/main/java/com/nanometer/smartlab/dao/SysReagentDao.xml index 8aa3d68..661eba9 100644 --- a/src/main/java/com/nanometer/smartlab/dao/SysReagentDao.xml +++ b/src/main/java/com/nanometer/smartlab/dao/SysReagentDao.xml @@ -108,7 +108,8 @@ bm.meta_value AS control_products_name, supplier. NAME AS supplierName, f.id favor, - f.create_time favortime + f.create_time favortime, + supplier.valid_flag as supplierFlag FROM sys_reagent AS sr LEFT JOIN base_meta AS ss ON sr.product_home = ss.id @@ -118,6 +119,7 @@ AND f.user_id= #{user} WHERE f.id IS NOT NULL and sr.valid_flag = 1 + and (supplier.valid_flag = 1 or sr.type = 0) and sr.type != 3 <if test="cas != null and cas != ''"> and sr.cas like concat("%", #{cas} ,"%") @@ -132,14 +134,15 @@ and sr.product_sn like concat("%", #{productSn} ,"%") </if> UNION ALL - SELECT + (SELECT sr.*, ss.meta_value AS product_home_name, ss.order_index, bm.meta_value AS control_products_name, supplier.NAME AS supplierName, f.id favor, - f.create_time favortime + f.create_time favortime, + supplier.valid_flag as supplierFlag FROM sys_reagent AS sr LEFT JOIN base_meta AS ss ON sr.product_home = ss.id @@ -149,6 +152,7 @@ AND f.user_id = #{user} AND f.id IS NULL where sr.valid_flag = 1 + and (supplier.valid_flag = 1 or sr.type = 0) and sr.type != 3 <if test="cas != null and cas != ''"> and sr.cas like concat("%", #{cas} ,"%") @@ -165,6 +169,7 @@ <if test="MaxSize != null"> limit #{MaxSize} </if> + ) ) as reagent ORDER BY reagent.favortime DESC,length(reagent.name),reagent.order_index,price asc <if test="first != null and pageSize != null"> @@ -174,13 +179,19 @@ <select id="favorList" parameterType="java.util.Map" resultMap="SysReagent"> - select sr.*, ss.meta_value as product_home_name, bm.meta_value as control_products_name,supplier.name as supplierName,f.id favor,f.create_time favortime + select sr.*, ss.meta_value as product_home_name, + bm.meta_value as control_products_name, + supplier.name as supplierName, + f.id favor, + f.create_time favortime, + supplier.valid_flag as supplierFlag from sys_reagent as sr left join base_meta as ss on sr.product_home = ss.id left join base_meta bm on bm.id = sr.control_products left join sys_supplier supplier on supplier.id = sr.supplier_id LEFT JOIN favor f on f.reagent_id = sr.id AND f.user_id = #{user} where sr.valid_flag = 1 + and (supplier.valid_flag = 1 or sr.type = 0) <choose> <when test="favorFlag != ''"> and f.id is not null @@ -222,6 +233,7 @@ left join sys_supplier supplier on supplier.id = sr.supplier_id LEFT JOIN favor f on f.reagent_id = sr.id AND f.user_id = #{user} where sr.valid_flag = 1 + and (supplier.valid_flag = 1 or sr.type = 0) <choose> <when test="favorFlag != ''"> and f.id is not null @@ -247,13 +259,12 @@ <select id="getSysReagentListNew" parameterType="java.util.Map" resultMap="SysReagent"> select sr.*, ss.meta_value as product_home_name, ifnull(w.reserve,0) as reserve, bm.meta_value as control_products_name,supplier.name as supplierName from sys_reagent as sr - left join base_meta as ss on sr.product_home = ss.id left join base_meta bm on bm.id = sr.control_products left join (select reagent_id, sum(reserve) reserve from ope_warehouse_reserve where valid_flag = 1 group by reagent_id) w on w.reagent_id = sr.id - left join sys_supplier supplier on supplier.id = sr.supplier_id where sr.valid_flag = 1 + and (supplier.valid_flag = 1 or sr.type = 0) <if test="cas != null and cas != ''"> and sr.cas = #{cas} </if> @@ -281,7 +292,6 @@ left join base_meta as ss on sr.product_home = ss.id left join base_meta bm on bm.id = sr.control_products left join (select reagent_id, sum(reserve) reserve from ope_warehouse_reserve where valid_flag = 1 group by reagent_id) w on w.reagent_id = sr.id - left join sys_supplier supplier on supplier.id = sr.supplier_id LEFT JOIN favor f on f.reagent_id = sr.id AND f.user_id = #{user} where sr.valid_flag = 1 @@ -299,6 +309,7 @@ left join sys_supplier supplier on supplier.id = sr.supplier_id LEFT JOIN favor f on f.reagent_id = sr.id AND f.user_id = #{user} where sr.valid_flag = 1 + and (supplier.valid_flag = 1 or sr.type = 0) <if test="cas != null and cas != ''"> and sr.cas like concat("%", #{cas} ,"%") </if> @@ -316,7 +327,9 @@ <select id="getSysReagentTotalCountNew" parameterType="java.util.Map" resultType="int"> select count(1) from sys_reagent as sr + LEFT JOIN sys_supplier ss on ss.id = sr.supplier_id where sr.valid_flag = 1 + and (ss.valid_flag = 1 or sr.type = 0) <if test="cas != null and cas != ''"> and sr.cas = #{cas} </if> @@ -528,7 +541,8 @@ c.meta_value formatName, d.meta_value product_home_name, e.meta_value control_products_name, - s.name AS supplierName + s.name AS supplierName, + s.valid_flag as supplierFlag from sys_reagent a left join base_meta b on b.id=a.reagent_unit left join base_meta c on c.id=a.reagent_format @@ -549,4 +563,47 @@ left join sys_supplier supplier on supplier.id = sr.supplier_id where sr.id = #{id} </select> + <select id="selectAll" resultType="java.util.Map"> + select + sr.name, + sr.product_sn as productSn, + sr.cas, + sr.price, + sr.per_box as perBox, + sr.safetynum, + + CASE WHEN type = 0 THEN '耗材' WHEN type = 1 THEN '试剂' ELSE '' END AS kind, + ss.meta_value as productHomeName, + bm.meta_value as control_products_name, + supplier.name as supplierName, + bm1.meta_value as reagentType, + bm2.meta_value as reagentCharacter, + bm3.meta_value as reagentFormat, + CONCAT(sr.main_metering,bm4.meta_value) as reagentUnit + from sys_reagent as sr + left join base_meta as ss on sr.product_home = ss.id + left join base_meta bm on bm.id = sr.control_products + left join base_meta bm1 on bm1.id = sr.reagent_type + left join base_meta bm2 on bm2.id = sr.reagent_character + left join base_meta bm3 on bm3.id = sr.reagent_format + left join base_meta bm4 on bm4.id = sr.reagent_unit + left join sys_supplier supplier on supplier.id = sr.supplier_id + where sr.valid_flag = 1 + <if test="cas != null and cas != ''"> + and sr.cas = #{cas} + </if> + <if test="supplierId != null and supplierId != ''"> + and sr.supplier_id = #{supplierId} + </if> + <if test="name != null and name != ''"> + and sr.name like concat("%", #{name} ,"%") + </if> + <if test="type != null"> + and sr.type = #{type} + </if> + <if test="productSn != null and productSn != ''"> + and sr.product_sn like concat("%", #{productSn} ,"%") + </if> + ORDER BY length(sr.name),sr.create_time desc + </select> </mapper> -- Gitblit v1.9.2