From e57dc5878ff7170e2a8d8da145289ad1abcd70f8 Mon Sep 17 00:00:00 2001 From: gdg <764716047@qq.com> Date: 星期四, 28 一月 2021 16:47:52 +0800 Subject: [PATCH] 申领人实验室搜索逻辑修改 ->优先课题组下的实验室,如果没有则搜索部门下的实验室 --- src/main/java/com/nanometer/smartlab/dao/OpeWarehouseReserveDao.xml | 96 +++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 87 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/nanometer/smartlab/dao/OpeWarehouseReserveDao.xml b/src/main/java/com/nanometer/smartlab/dao/OpeWarehouseReserveDao.xml index 2af36fd..37123cb 100644 --- a/src/main/java/com/nanometer/smartlab/dao/OpeWarehouseReserveDao.xml +++ b/src/main/java/com/nanometer/smartlab/dao/OpeWarehouseReserveDao.xml @@ -7,6 +7,7 @@ <result property="reserve" column="reserve"></result> <result property="updateTime" column="update_time"></result> <result property="warehouseId" column="warehouseId"></result> + <result property="containerId" column="container_id"></result> <result property="warehouseName" column="warehouseName"></result> <result property="validFlag" column="valid_flag" typeHandler="com.nanometer.smartlab.entity.handler.ValidFlagHandler"></result> @@ -29,7 +30,8 @@ <result property="updateTime" column="update_time"></result> <result property="supplierName" column="supplierName"></result> <result property="productHome" column="product_home"></result> - <result property="productHomeName" column="productHomeName"></result> + <result property="productHomeName" column="productHomeName"></result> + <result property="productSn" column="product_sn"/> </association> </resultMap> @@ -49,9 +51,12 @@ <if test="reagentName != null and reagentName != ''"> and sr.name like concat('%',#{reagentName},'%') </if> - <if test="warehouseId != null and warehouseId != ''"> - and oa.warehouseId=#{warehouseId} - </if> + <if test="warehouseId != null and warehouseId != ''"> + and oa.warehouseId=#{warehouseId} + </if> + <if test="productSn != null and productSn != ''"> + and sr.product_sn like concat('%',#{productSn},'%') + </if> </sql> <sql id="queryColumns"> @@ -98,21 +103,89 @@ </select> <insert id="insertOpeWarehouseReserve" parameterType="com.nanometer.smartlab.entity.OpeWarehouseReserve"> - insert into ope_warehouse_reserve(id, reagent_id, article_number, reserve, valid_flag, update_time,warehouseId) - values (#{id}, #{reagentId}, #{articleNumber}, #{reserve}, 1, now(),#{warehouseId}) + insert into ope_warehouse_reserve(id, reagent_id, article_number, reserve, valid_flag, update_time,warehouseId,container_id) + values (#{id}, #{reagentId}, #{articleNumber}, #{reserve}, 1, now(),#{warehouseId},#{containerId}) </insert> <insert id="insertOpeWarehouseReserve2" parameterType="com.nanometer.smartlab.entity.OpeWarehouseReserve"> - insert into ope_warehouse_reserve(id, reagent_id, article_number, reserve, valid_flag, update_time,warehouseId,apply_code,order_code) - values (#{id}, #{reagentId}, #{articleNumber}, #{reserve}, 1, now(),#{warehouseId},#{applyCode},#{orderCode}) + insert into ope_warehouse_reserve(id, reagent_id, article_number, reserve, valid_flag, update_time,warehouseId,apply_code,order_code,container_id) + values (#{id}, #{reagentId}, #{articleNumber}, #{reserve}, 1, now(),#{warehouseId},#{applyCode},#{orderCode},#{containerId}) </insert> <update id="updateOpeWarehouseReserve" parameterType="com.nanometer.smartlab.entity.OpeWarehouseReserve"> - update ope_warehouse_reserve set reagent_id=#{reagentId},warehouseId=#{warehouseId}, article_number=#{articleNumber}, reserve=#{reserve}, update_time=now() + update ope_warehouse_reserve set reagent_id=#{reagentId},warehouseId=#{warehouseId}, article_number=#{articleNumber}, reserve=#{reserve}, update_time=now(), + container_id=#{containerId} + where id=#{id} + </update> + + <update id="updateOpeWarehouseReserve2" parameterType="com.nanometer.smartlab.entity.OpeWarehouseReserve"> + update ope_warehouse_reserve + set reserve=#{reserve} where id=#{id} </update> <select id="selectByReId" resultMap="OpeWarehouseReserve"> select * from ope_warehouse_reserve where reagent_id=#{id} + </select> + <select id="selectWarehouseByReagentIdAndArticleNumber" resultMap="OpeWarehouseReserve" parameterType="java.util.Map"> + SELECT + owr.id, + owr.reagent_id, + owr.warehouseId, + sw.NAME warehouseName, + sum( owr.reserve ) reserve + FROM + ope_warehouse_reserve owr + LEFT JOIN sys_warehouse sw ON sw.id = owr.warehouseId + WHERE + sw.valid_flag = 1 + AND owr.valid_flag = 1 + and owr.reserve > 0 + and owr.reagent_id = #{reagentId} + <if test="articleNumber != null and articleNumber != ''"> + and owr.article_number = #{articleNumber} + </if> + GROUP BY + reagent_id, + warehouseId + HAVING + reserve > 0 + </select> + + <select id="selectWarehouseByRidAndArtiNumberAndWid" resultMap="OpeWarehouseReserve" parameterType="java.util.Map"> + SELECT + owr.id, + owr.reagent_id, + owr.warehouseId, + sw.NAME warehouseName, + owr.reserve, + owr.article_number, + owr.container_id, + owr.update_time + FROM + ope_warehouse_reserve owr + LEFT JOIN sys_warehouse sw ON sw.id = owr.warehouseId + WHERE + sw.valid_flag = 1 + AND owr.valid_flag = 1 + and owr.reserve > 0 + and owr.reagent_id = #{reagentId} + <if test="articleNumber != null and articleNumber != ''"> + and owr.article_number = #{articleNumber} + </if> + <if test="warehouseId != null and warehouseId != ''"> + and owr.warehouseId = #{warehouseId} + </if> + </select> + + <select id="getOpeWarehouseReserveList2" resultMap="OpeWarehouseReserve" parameterType="java.util.Map"> + + <include refid="queryColumns"/> + from ope_warehouse_reserve as oa + <include refid="queryJoins"/> + where oa.valid_flag = 1 and oa.reserve > 0 + <include refid="queryWhereSql"/> + + order by oa.update_time,oa.reserve </select> <update id="updateByReId" parameterType="java.util.Map"> @@ -123,6 +196,11 @@ <update id="updateCount" parameterType="java.util.Map"> update ope_warehouse_reserve set reserve=reserve+1 where reagent_id=#{reagentId} and article_number=#{articleNumber} </update> + <update id="updateBtReserve"> + UPDATE ope_warehouse_reserve + set reserve = reserve - #{1} + where id = #{0} + </update> </mapper> -- Gitblit v1.9.2