| | |
| | | <!-- 通用查询映射结果 --> |
| | | <resultMap id="BaseResultMap" type="com.zy.asrs.entity.LocDetl"> |
| | | <result column="loc_no" property="locNo" /> |
| | | <result column="zpallet" property="zpallet" /> |
| | | <result column="anfme" property="anfme" /> |
| | | <result column="matnr" property="matnr" /> |
| | | <result column="maktx" property="maktx" /> |
| | | <result column="batch" property="batch" /> |
| | | <result column="order_no" property="orderNo" /> |
| | | <result column="lgnum" property="lgnum" /> |
| | | <result column="type" property="type" /> |
| | | |
| | | <result column="specs" property="specs" /> |
| | | <result column="model" property="model" /> |
| | | <result column="color" property="color" /> |
| | | <result column="supplier" property="supplier" /> |
| | | <result column="warehouse" property="warehouse" /> |
| | | <result column="brand" property="brand" /> |
| | | <result column="anfme" property="anfme" /> |
| | | <result column="altme" property="altme" /> |
| | | <result column="zpallet" property="zpallet" /> |
| | | <result column="bname" property="bname" /> |
| | | <result column="memo" property="memo" /> |
| | | <result column="unit" property="unit" /> |
| | | <result column="price" property="price" /> |
| | | <result column="sku" property="sku" /> |
| | | <result column="units" property="units" /> |
| | | <result column="barcode" property="barcode" /> |
| | | <result column="origin" property="origin" /> |
| | | <result column="manu" property="manu" /> |
| | | <result column="manu_date" property="manuDate" /> |
| | | <result column="item_num" property="itemNum" /> |
| | | <result column="safe_qty" property="safeQty" /> |
| | | <result column="weight" property="weight" /> |
| | | <result column="length" property="length" /> |
| | | <result column="volume" property="volume" /> |
| | | <result column="three_code" property="threeCode" /> |
| | | <result column="supp" property="supp" /> |
| | | <result column="supp_code" property="suppCode" /> |
| | | <result column="be_batch" property="beBatch" /> |
| | | <result column="dead_time" property="deadTime" /> |
| | | <result column="dead_warn" property="deadWarn" /> |
| | | <result column="source" property="source" /> |
| | | <result column="inspect" property="inspect" /> |
| | | <result column="danger" property="danger" /> |
| | | |
| | | <result column="modi_user" property="modiUser" /> |
| | | <result column="modi_time" property="modiTime" /> |
| | | <result column="appe_user" property="appeUser" /> |
| | | <result column="appe_time" property="appeTime" /> |
| | | <result column="memo" property="memo" /> |
| | | <result column="stock_freeze" property="stockFreeze" /> |
| | | </resultMap> |
| | | |
| | | <sql id="batchSeq"> |
| | | <choose> |
| | | <when test="batch != null and batch != ''"> |
| | | and batch = #{batch} |
| | | </when> |
| | | <otherwise> |
| | | and (batch IS NULL OR batch = '') |
| | | </otherwise> |
| | | </choose> |
| | | </sql> |
| | | |
| | | <select id="selectItem" resultMap="BaseResultMap"> |
| | | select top 1 * |
| | | from asr_loc_detl |
| | | where 1=1 |
| | | and loc_no = #{locNo} |
| | | and matnr = #{matnr} |
| | | <choose> |
| | | <when test="suppCode != null and suppCode != ''"> |
| | | and supp_code = #{suppCode} |
| | | </when> |
| | | <!-- <otherwise>--> |
| | | <!-- and (supp_code IS NULL OR supp_code = '')--> |
| | | <!-- </otherwise>--> |
| | | </choose> |
| | | <include refid="batchSeq"></include> |
| | | </select> |
| | | |
| | | <delete id="deleteItem"> |
| | | delete from asr_loc_detl |
| | | where 1=1 |
| | | and loc_no = #{locNo} |
| | | and matnr = #{matnr} |
| | | <include refid="batchSeq"></include> |
| | | <include refid="locdetlCondition"></include> |
| | | </delete> |
| | | |
| | | <update id="updateAnfme"> |
| | | update asr_loc_detl |
| | | set anfme = #{anfme} |
| | | , modi_time = getdate() |
| | | where 1=1 |
| | | and loc_no = #{locNo} |
| | | and matnr = #{matnr} |
| | | <include refid="locdetlCondition"></include> |
| | | <include refid="batchSeq"></include> |
| | | </update> |
| | | |
| | | <sql id="locdetlCondition"> |
| | | <if test="threeCode!=null and threeCode!='' "> |
| | | and three_code = #{threeCode} |
| | | </if> |
| | | <if test="suppCode!=null and suppCode!='' "> |
| | | and supp_code = #{suppCode} |
| | | </if> |
| | | <if test="deadTime!=null and deadTime!='' "> |
| | | and dead_time = #{deadTime} |
| | | </if> |
| | | </sql> |
| | | |
| | | <sql id="stockOutCondition"> |
| | | <if test="loc_no!=null and loc_no!='' "> |
| | |
| | | </if> |
| | | <if test="anfme!=null and anfme!='' "> |
| | | and a.anfme like '%' + #{anfme} + '%' |
| | | </if> |
| | | <if test="altme!=null and altme!='' "> |
| | | and a.altme like '%' + #{altme} + '%' |
| | | </if> |
| | | <if test="startTime!=null and endTime!=null"> |
| | | and a.modi_time between #{startTime} and #{endTime} |
| | |
| | | ROW_NUMBER() over (order by sum(a.anfme) desc) as row |
| | | , a.matnr |
| | | , sum(a.anfme) as anfme |
| | | , a.maktx |
| | | , a.specs |
| | | , model |
| | | from asr_loc_detl a |
| | | where 1=1 |
| | | group by a.matnr |
| | | group by a.matnr,a.maktx,a.specs,model |
| | | </select> |
| | | |
| | | <select id="selectPakoutByRule" resultMap="BaseResultMap"> |
| | |
| | | select count(*) from asr_loc_detl where loc_no = #{loc_no} |
| | | </select> |
| | | |
| | | <select id="queryStockPre" resultType="com.zy.common.model.QueryStockPreDo"> |
| | | select |
| | | * |
| | | from |
| | | ( |
| | | select |
| | | no = 1, |
| | | orderBy = 'true', |
| | | b.bay1 as bay, |
| | | sum(anfme) as count |
| | | from asr_loc_detl a |
| | | left join asr_loc_mast b on a.loc_no = b.loc_no |
| | | where 1=1 |
| | | and b.loc_sts = 'F' |
| | | and a.matnr = #{matnr} |
| | | and b.row1 >= 31 |
| | | and b.row1 <= 32 |
| | | group by b.bay1 |
| | | union |
| | | select |
| | | no = 2, |
| | | orderBy = 'true', |
| | | b.bay1 as bay, |
| | | sum(anfme) as count |
| | | from asr_loc_detl a |
| | | left join asr_loc_mast b on a.loc_no = b.loc_no |
| | | where 1=1 |
| | | and b.loc_sts = 'F' |
| | | and a.matnr = #{matnr} |
| | | and b.row1 >= 2 |
| | | and b.row1 <= 17 |
| | | group by b.bay1 |
| | | union |
| | | select |
| | | no = 3, |
| | | orderBy = 'false', |
| | | b.bay1 as bay, |
| | | sum(anfme) as count |
| | | from asr_loc_detl a |
| | | left join asr_loc_mast b on a.loc_no = b.loc_no |
| | | where 1=1 |
| | | and b.loc_sts = 'F' |
| | | and a.matnr = #{matnr} |
| | | and b.row1 >= 18 |
| | | and b.row1 <= 30 |
| | | group by b.bay1 |
| | | ) a |
| | | order by no, count desc |
| | | </select> |
| | | |
| | | <select id="queryStock" resultMap="BaseResultMap"> |
| | | select a.* |
| | | select |
| | | a.* |
| | | from asr_loc_detl a |
| | | left join asr_loc_mast b on a.loc_no = b.loc_no |
| | | where 1=1 |
| | | and b.loc_sts = 'F' |
| | | and a.matnr = #{matnr} |
| | | <choose> |
| | | <when test="batch != null and batch != ''"> |
| | | and a.batch = #{batch} |
| | | </when> |
| | | <otherwise> |
| | | and (a.batch IS NULL OR a.batch = '') |
| | | </otherwise> |
| | | </choose> |
| | | <if test="orderNo != null and orderNo != ''"> |
| | | and a.orderNo = #{orderNo} |
| | | <if test="no!=null and no == 1"> |
| | | and b.row1 >= 31 |
| | | and b.row1 <= 32 |
| | | </if> |
| | | order by |
| | | DATEPART(yyyy,a.modi_time),DATEPART(mm,a.modi_time),DATEPART(dd,a.modi_time) |
| | | desc, |
| | | case |
| | | when (left(a.loc_no, 2) = '01') then 0 |
| | | when (left(a.loc_no, 2) = '02') then 1 |
| | | when (left(a.loc_no, 2) = '03') then 1 |
| | | when (left(a.loc_no, 2) = '04') then 0 |
| | | when (left(a.loc_no, 2) = '05') then 0 |
| | | when (left(a.loc_no, 2) = '06') then 1 |
| | | when (left(a.loc_no, 2) = '07') then 1 |
| | | when (left(a.loc_no, 2) = '08') then 0 |
| | | when (left(a.loc_no, 2) = '09') then 0 |
| | | when (left(a.loc_no, 2) = '10') then 1 |
| | | when (left(a.loc_no, 2) = '11') then 1 |
| | | when (left(a.loc_no, 2) = '12') then 0 |
| | | when (left(a.loc_no, 2) = '13') then 0 |
| | | when (left(a.loc_no, 2) = '14') then 1 |
| | | when (left(a.loc_no, 2) = '15') then 1 |
| | | when (left(a.loc_no, 2) = '16') then 0 |
| | | when (left(a.loc_no, 2) = '17') then 0 |
| | | when (left(a.loc_no, 2) = '18') then 1 |
| | | when (left(a.loc_no, 2) = '19') then 1 |
| | | when (left(a.loc_no, 2) = '20') then 0 |
| | | when (left(a.loc_no, 2) = '21') then 0 |
| | | when (left(a.loc_no, 2) = '22') then 1 |
| | | when (left(a.loc_no, 2) = '23') then 1 |
| | | when (left(a.loc_no, 2) = '24') then 0 |
| | | when (left(a.loc_no, 2) = '25') then 0 |
| | | when (left(a.loc_no, 2) = '26') then 1 |
| | | when (left(a.loc_no, 2) = '27') then 1 |
| | | when (left(a.loc_no, 2) = '28') then 0 |
| | | when (left(a.loc_no, 2) = '29') then 0 |
| | | when (left(a.loc_no, 2) = '30') then 1 |
| | | when (left(a.loc_no, 2) = '31') then 1 |
| | | when (left(a.loc_no, 2) = '32') then 0 |
| | | when (left(a.loc_no, 2) = '33') then 0 |
| | | when (left(a.loc_no, 2) = '34') then 1 |
| | | when (left(a.loc_no, 2) = '35') then 1 |
| | | when (left(a.loc_no, 2) = '36') then 0 |
| | | when (left(a.loc_no, 2) = '37') then 0 |
| | | when (left(a.loc_no, 2) = '38') then 1 |
| | | when (left(a.loc_no, 2) = '39') then 1 |
| | | when (left(a.loc_no, 2) = '40') then 0 |
| | | when (left(a.loc_no, 2) = '41') then 0 |
| | | when (left(a.loc_no, 2) = '42') then 1 |
| | | when (left(a.loc_no, 2) = '43') then 1 |
| | | when (left(a.loc_no, 2) = '44') then 0 |
| | | when (left(a.loc_no, 2) = '45') then 0 |
| | | when (left(a.loc_no, 2) = '46') then 1 |
| | | when (left(a.loc_no, 2) = '47') then 1 |
| | | when (left(a.loc_no, 2) = '48') then 0 |
| | | else 0 |
| | | end |
| | | desc |
| | | <if test="no!=null and no == 2"> |
| | | and b.row1 >= 2 |
| | | and b.row1 <= 17 |
| | | </if> |
| | | <if test="no!=null and no == 3"> |
| | | and b.row1 >= 18 |
| | | and b.row1 <= 30 |
| | | </if> |
| | | and a.matnr = #{matnr} |
| | | and b.bay1 = #{bay} |
| | | and b.loc_sts = 'F' |
| | | order by b.row1 |
| | | <if test="orderBy != null and orderBy != '' and orderBy == 'false'"> |
| | | desc |
| | | </if> |
| | | </select> |
| | | |
| | | <select id="queryStockAnfme" resultType="java.lang.Double"> |
| | |
| | | </if> |
| | | </select> |
| | | |
| | | <select id="queryStockTotal" resultType="com.zy.asrs.entity.result.StockVo"> |
| | | select |
| | | matnr, |
| | | batch, |
| | | count(anfme) as count |
| | | from asr_loc_detl |
| | | where 1=1 |
| | | group by matnr,batch |
| | | </select> |
| | | <select id="sum" resultType="java.lang.Integer"> |
| | | SELECT SUM(anfme) FROM asr_loc_detl |
| | | </select> |
| | | <select id="unreason" resultMap="BaseResultMap"> |
| | | SELECT |
| | | * |
| | | FROM |
| | | [dbo].[asr_loc_detl] |
| | | WHERE |
| | | DATALENGTH( batch ) != 11 or |
| | | batch LIKE '%[a-z]%' |
| | | </select> |
| | | |
| | | <select id="selectSameDetl" resultType="java.lang.String"> |
| | | SELECT |
| | | ld.loc_no |
| | | FROM asr_loc_detl ld |
| | | LEFT JOIN asr_loc_mast lm ON ld.loc_no = lm.loc_no |
| | | LEFT JOIN ( |
| | | select |
| | | loc_no, |
| | | count(1) as count |
| | | from asr_loc_detl |
| | | where 1=1 |
| | | group by loc_no |
| | | ) dual on dual.loc_no = lm.loc_no |
| | | WHERE 1 = 1 |
| | | AND ld.matnr = #{matnr} |
| | | AND (lm.loc_sts = 'F') |
| | | AND dual.count = 1 |
| | | ORDER BY lm.modi_time ASC |
| | | </select> |
| | | |
| | | <select id="selectSameLevDetl" resultType="java.lang.String"> |
| | | SELECT |
| | | ld.loc_no |
| | | FROM asr_loc_detl ld |
| | | LEFT JOIN asr_loc_mast lm ON ld.loc_no = lm.loc_no |
| | | LEFT JOIN ( |
| | | select |
| | | loc_no, |
| | | count(1) as count |
| | | from asr_loc_detl |
| | | where 1=1 |
| | | group by loc_no |
| | | ) dual on dual.loc_no = lm.loc_no |
| | | WHERE 1 = 1 |
| | | AND ld.matnr = #{matnr} |
| | | AND (lm.loc_sts = 'F') |
| | | AND dual.count = 1 |
| | | AND lm.lev1 = #{lev} |
| | | ORDER BY lm.modi_time ASC |
| | | </select> |
| | | |
| | | <select id="searchByLike" resultMap="BaseResultMap"> |
| | | select * |
| | | from asr_loc_detl |
| | | where |
| | | 1 = 1 |
| | | <if test="orderNo != null and orderNo != ''"> |
| | | and order_no like '%' + #{orderNo} + '%' |
| | | </if> |
| | | <if test="locNo != null and locNo != ''"> |
| | | and loc_no like '%' + #{locNo} + '%' |
| | | </if> |
| | | <if test="specs != null and specs != ''"> |
| | | and specs like '%' + #{specs} + '%' |
| | | </if> |
| | | <if test="matnr != null and matnr != ''"> |
| | | and matnr like '%' + #{matnr} + '%' |
| | | </if> |
| | | <if test="maktx != null and maktx != ''"> |
| | | and maktx like '%' + #{maktx} + '%'; |
| | | </if> |
| | | </select> |
| | | |
| | | <select id="selectByLocNo" resultMap="BaseResultMap"> |
| | | select * from asr_loc_detl |
| | | where 1=1 |
| | | and loc_no = #{locNo} |
| | | </select> |
| | | |
| | | <update id="updateStockFreeze"> |
| | | update asr_loc_detl |
| | | set stock_freeze = #{stockFreeze} |
| | | , modi_time = getdate() |
| | | where 1=1 |
| | | and loc_no = #{locNo} |
| | | and matnr = #{matnr} |
| | | </update> |
| | | </mapper> |