From 3a1b824203d9e6a4c2a55e2d0d8adc0bae4f03d0 Mon Sep 17 00:00:00 2001 From: zf <1603559716@qq.com> Date: 星期一, 25 三月 2024 13:11:32 +0800 Subject: [PATCH] 安全物资和设备管理调整v2 --- equipment/equipment-service/src/main/resources/config/mapper/equipment/SafeMaterialDetailInfoMapper.xml | 232 ++++++++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 201 insertions(+), 31 deletions(-) diff --git a/equipment/equipment-service/src/main/resources/config/mapper/equipment/SafeMaterialDetailInfoMapper.xml b/equipment/equipment-service/src/main/resources/config/mapper/equipment/SafeMaterialDetailInfoMapper.xml index b79af4a..0c1ecba 100644 --- a/equipment/equipment-service/src/main/resources/config/mapper/equipment/SafeMaterialDetailInfoMapper.xml +++ b/equipment/equipment-service/src/main/resources/config/mapper/equipment/SafeMaterialDetailInfoMapper.xml @@ -8,18 +8,21 @@ <id column="id" property="id" jdbcType="BIGINT"/> <result column="name" property="name" jdbcType="VARCHAR"/> <result column="material_no" property="materialNo" jdbcType="VARCHAR"/> - <result column="material_classify_id" property="materialClassifyId" jdbcType="BIGINT"/> + <result column="big_classify_id" property="bigClassifyId" jdbcType="BIGINT"/> + <result column="small_classify_id" property="smallClassifyId" jdbcType="BIGINT"/> <result column="rfid" property="rfid" jdbcType="VARCHAR"/> <result column="consumable" property="consumable" jdbcType="TINYINT"/> <result column="valid_type" property="validType" jdbcType="TINYINT"/> <result column="valid_time" property="validTime" jdbcType="TIMESTAMP"/> <result column="valid_status" property="validStatus" jdbcType="TINYINT"/> + <result column="status" property="status" jdbcType="TINYINT"/> <result column="ir_status" property="irStatus" jdbcType="TINYINT"/> <result column="ware_housing_time" property="wareHousingTime" jdbcType="TIMESTAMP"/> <result column="delivery_time" property="deliveryTime" jdbcType="TIMESTAMP"/> <result column="sm_id" property="smId" jdbcType="BIGINT"/> - <result column="claimant_id" property="claimantId" jdbcType="BIGINT"/> - <result column="claimant_name" property="claimantName" jdbcType="VARCHAR"/> + <result column="receive_uid" property="receiveUid" jdbcType="BIGINT"/> + <result column="receive_uname" property="receiveUname" jdbcType="VARCHAR"/> + <result column="remark" property="remark" jdbcType="VARCHAR"/> <result column="del_flag" property="delFlag" jdbcType="INTEGER"/> <result column="create_time" property="createTime" jdbcType="TIMESTAMP"/> <result column="create_uid" property="createUid" jdbcType="BIGINT"/> @@ -36,31 +39,33 @@ select id, name, material_no, - material_classify_id, + big_classify_id, rfid, consumable, valid_type, valid_time, valid_status, + status, ir_status, - ware_housing_time, ware_housing_time, delivery_time, sm_id, - claimant_id, - claimant_name + receive_uid, + receive_uname from safe_material_detail where del_flag = 0 and id = #{id} </select> <update id="updateReceiptStatus" > update safe_material_detail set ir_status = #{status}, ware_housing_time = #{wareHousingTime}, - claimant_id = null, - claimant_name = null + receive_uid = null, + receive_uname = null, + delivery_time = null where id = #{id} </update> <select id="getListByIds" resultMap="materialDetailResult"> - select id,name,material_no,material_classify_id,rfid,consumable,valid_type,valid_time,valid_status,ir_status,ware_housing_time,ware_housing_time,delivery_time,sm_id,claimant_id,claimant_name + select id,name,material_no,big_classify_id,rfid,consumable,valid_type,valid_time,valid_status,status,ir_status,ware_housing_time,ware_housing_time,delivery_time,sm_id,receive_uid, + receive_uname,remark from safe_material_detail where del_flag = 0 and id in @@ -72,8 +77,10 @@ update safe_material_detail set ir_status = #{irStatus}, ware_housing_time = #{wareHousingTime}, - claimant_id = null, - claimant_name = null where id in + receive_uid = null, + receive_uname = null, + delivery_time = null + where id in <foreach collection="ids" item="id" separator="," open="(" close=")"> #{id} </foreach> @@ -114,24 +121,13 @@ <update id="updateDeliveryStatusByIds" > update safe_material_detail set ir_status = #{detailBO.irStatus}, - claimant_id = #{detailBO.claimantId}, - claimant_name = #{detailBO.claimantName}, + receive_uid = #{detailBO.receiveUid}, + receive_uname = #{detailBO.receiveUname}, delivery_time = #{detailBO.deliveryTime} where id in <foreach collection="detailBO.ids" item="id" separator="," open="(" close=")"> #{id} </foreach> - </update> - <!--批量出库-随机--> - <update id="deliveryBatchRandom" > - update safe_material_detail - set ir_status = #{detailBO.irStatus}, - claimant_id = #{detailBO.claimantId}, - claimant_name = #{detailBO.claimantName}, - delivery_time = #{detailBO.deliveryTime} - where id in - (select t.id from (select id from safe_material_detail where ir_status = 0 and valid_status = 0 and del_flag = 0 ORDER BY ware_housing_time asc LIMIT #{detailBO.count}) t - ) </update> <select id="getValidStockCount" resultType="java.lang.Integer"> @@ -144,30 +140,39 @@ </select> <select id="listByCondition" resultType="com.gkhy.safePlatform.equipment.entity.SafeMaterialDetailInfoDO"> select sd.id, - sd.name, + CONCAT(sd.name,'(',sm.serial_num,')') as name, sd.material_no, - sd.material_classify_id, + sd.big_classify_id, sd.rfid, sd.consumable, sd.valid_type, sd.valid_time, sd.valid_status, + sd.status, + sd.remark, sd.ir_status, sd.ware_housing_time, - sd.claimant_name, + sd.receive_uname, sd.delivery_time, sm.dep_id, sm.dep_name, - sc.material_classify_name + sd.sm_id, + sc.material_classify_name as bigClassifyName from safe_material_detail sd - INNER JOIN safe_material_classify sc on sd.material_classify_id = sc.id + INNER JOIN safe_material_classify sc on sd.big_classify_id = sc.id INNER JOIN safe_material sm on sd.sm_id = sm.id where sd.del_flag = 0 <if test="query.rfid != null and query.rfid != '' "> and sd.rfid = #{query.rfid} </if> - <if test="query.irStatus != null and query.irStatus != '' or query.irStatus == 0"> + <if test="query.irStatus != null"> and sd.ir_status = #{query.irStatus} + </if> + <if test="query.smId != null"> + and sd.sm_id = #{query.smId} + </if> + <if test="query.depId != null"> + and sm.dep_id = #{query.depId} </if> ORDER BY sd.create_time desc </select> @@ -187,4 +192,169 @@ <update id="updateValidStatus" > update safe_material_detail set valid_status = #{validStatus} where id = #{id} </update> + <select id="getRfidNotNullList" resultType="java.lang.Long"> + select id from safe_material_detail where sm_id = #{smId} and ir_status = 0 and valid_status = 0 and del_flag = 0 and rfid is not null ORDER BY ware_housing_time asc LIMIT #{count} + </select> + + <select id="getRfidNullList" resultType="java.lang.Long"> + select id from safe_material_detail where sm_id = #{smId} and ir_status = 0 and valid_status = 0 and del_flag = 0 and rfid is null ORDER BY ware_housing_time asc LIMIT #{count} + </select> + <select id="getListBySmIdAndRfid" resultType="com.gkhy.safePlatform.equipment.entity.SafeMaterialDetailInfo"> + select id, + name, + material_no, + big_classify_id, + rfid, + consumable, + valid_type, + valid_time, + valid_status, + status, + ir_status, + ware_housing_time, + delivery_time, + sm_id, + receive_uid, + receive_uname + from safe_material_detail where del_flag = 0 and sm_id = #{query.smId} and ir_status = #{query.irStatus} and valid_status = #{query.validStatus} and rfid = #{query.rfid} ORDER BY create_time asc LIMIT #{query.count} + </select> + <select id="getListBySmId" resultType="com.gkhy.safePlatform.equipment.entity.SafeMaterialDetailInfo"> + select id, + name, + material_no, + big_classify_id, + rfid, + consumable, + valid_type, + valid_time, + valid_status, + status, + ir_status, + ware_housing_time, + delivery_time, + sm_id, + receive_uid, + receive_uname + from safe_material_detail where del_flag = 0 and sm_id = #{query.smId} and ir_status = #{query.irStatus} and valid_status = #{query.validStatus} ORDER BY create_time asc LIMIT #{query.count} + </select> + <select id="getSmallClassifyStockByIds" resultType="com.gkhy.safePlatform.equipment.entity.SafeMaterialClassifyStockDO"> + select d.small_classify_id, + m.dep_id, + m.dep_name, + count(1) as stockCount + from safe_material_detail d + INNER JOIN safe_material m + ON d.sm_id = m.id + where d.del_flag = 0 + and d.ir_status = 0 + and d.valid_status = 0 + and d.small_classify_id in + <foreach collection="smallClassifyIds" item="smallClassifyId" separator="," open="(" close=")"> + #{smallClassifyId} + </foreach> + group By d.small_classify_id,m.dep_id,m.dep_name + </select> + <select id="getListBySmallClassifyIds" resultType="com.gkhy.safePlatform.equipment.entity.SafeMaterialDetailDO"> + SELECT + sd.id, + sd.rfid, + sm.dep_id, + sd.small_classify_id, + sd.big_classify_id + FROM + safe_material_detail sd + INNER JOIN safe_material sm ON sd.sm_id = sm.id + WHERE + sd.del_flag = 0 + AND sd.ir_status = 0 + AND sd.valid_status = 0 + AND sd.small_classify_id IN + <foreach collection="smallClassifyIds" item="smallClassifyId" open="(" close=")" separator=","> + #{smallClassifyId} + </foreach> + AND sm.dep_id IN + <foreach collection="depIds" item="depId" open="(" close=")" separator=","> + #{depId} + </foreach> + ORDER BY + sd.create_time ASC + </select> + <select id="getListByRfids" resultType="com.gkhy.safePlatform.equipment.entity.SafeMaterialDetailInfoDO"> + SELECT + sd.id, + CONCAT( sd.NAME, '(NO', sd.material_no, ')' ) as name, + sd.big_classify_id, + sd.small_classify_id, + sm.dep_id + FROM + safe_material_detail sd + inner join safe_material sm on sd.sm_id = sm.id + WHERE + sd.del_flag = 0 + AND sd.ir_status = 1 + AND sd.rfid in + <foreach collection="rfids" item="rfid" open="(" close=")" separator=","> + #{rfid} + </foreach> + </select> + <select id="updateValidStatusByIds" > + update safe_material_detail set valid_status = #{validStatus} where id in + <foreach collection="ids" item="id" separator="," open="(" close=")"> + #{id} + </foreach> + </select> + <select id="getUnValidList" resultType="com.gkhy.safePlatform.equipment.entity.SafeMaterialDetailInfo"> + select + id, + name, + material_no, + big_classify_id, + rfid, + consumable, + valid_type, + valid_time, + valid_status, + ir_status, + ware_housing_time, + ware_housing_time, + delivery_time, + sm_id, + receive_uid, + receive_uname, + status + from safe_material_detail + where del_flag = 0 + and valid_status = #{validStatus} + and DATE_FORMAT(valid_time,'%Y%m%d') < DATE_FORMAT(CURDATE( ),'%Y%m%d') + </select> + <update id="updateBatch" parameterType="java.util.List"> + <foreach collection="list" item="item" index="index" open="" close="" separator=";"> + update safe_material_detail + <trim prefix="SET" suffixOverrides=","> + <if test="null != item.receiveUid"> + receive_uid = #{item.receiveUid}, + </if> + <if test="null != item.receiveUname and '' != item.receiveUname"> + receive_uname = #{item.receiveUname}, + </if> + <if test="null != item.irStatus"> + ir_status = #{item.irStatus}, + </if> + <if test="null != item.deliveryTime"> + delivery_time = #{item.deliveryTime} + </if> + <if test="null != item.validStatus"> + valid_status = #{item.validStatus} + </if> + <if test="null != item.remark and '' != item.remark"> + remark = #{item.remark} + </if> + <if test="null != item.status"> + status = #{item.status} + </if> + + </trim> + where id = #{item.id} + </foreach> + </update> </mapper> -- Gitblit v1.9.2