自动化立体仓库 - WMS系统
lty
2025-05-05 ce0fcdaf2629e5b6ebef0f206b16ecad103e5c1e
src/main/resources/mapper/LocDetlMapper.xml
@@ -46,6 +46,18 @@
        <result column="memo" property="memo" />
    </resultMap>
    <resultMap id="CheckResultMap" type="com.zy.asrs.entity.CheckDetl">
        <result column="anfme" property="anfme" />
        <result column="number" property="number"/>
        <result column="matnr" property="matnr" />
        <result column="maktx" property="maktx" />
        <result column="specs" property="specs" />
        <result column="batch" property="batch" />
        <result column="create_time" property="createTime"/>
        <result column="order_no" property="orderNo"/>
        <result column="detail_id"  property="detailId"/>
    </resultMap>
    <sql id="batchSeq">
        <choose>
            <when test="batch != null and batch != ''">
@@ -109,6 +121,12 @@
        <if test="specs!=null and specs!='' ">
            and a.specs like '%' + #{specs} + '%'
        </if>
        <if test="orderNo!=null and orderNo!='' ">
            and a.order_no like '%' + #{orderNo} + '%'
        </if>
        <if test="detail_id!=null and detail_id!='' ">
            and a.detail_id like '%' + #{detail_id} + '%'
        </if>
    </sql>
    <select id="getStockOutPage" resultMap="BaseResultMap">
@@ -150,6 +168,52 @@
         ) t where t.row between ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize})
    </select>
    <select id="getAnfmeByMatnr" resultType="com.zy.asrs.entity.LocDetl">
        select
        sum(a.anfme) as anfme
        from asr_loc_detl a
        <where>
            a.matnr = #{matnr}
            <if test="batch != null and batch != ''">
                and a.batch = #{batch}
            </if>
            <if test="specs != null and specs != ''">
                and a.specs = #{specs}
            </if>
        </where>
    </select>
    <select id="getStockCheck" resultMap="CheckResultMap">
        select * from (
        select
        ROW_NUMBER() over (order by a.create_time desc) as row,
        a.anfme,
        a.matnr,
        a.maktx,
        a.specs,
        a.batch,
        a.create_time,
        a.order_no,
        a.detail_id,
        a.number
        from asr_check_detl a
        where 1=1
        <include refid="stockOutCondition" />
        ) t
        where t.row between ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize})
    </select>
    <select id="getStockCheckCount" parameterType="java.util.Map" resultType="java.lang.Integer">
        select count(1)
        from asr_check_detl a
        where 1=1
        <include refid="stockOutCondition" />
    </select>
    <select id="getStockStatisCount" parameterType="java.util.Map" resultType="java.lang.Integer">
     select count(1) as count from
        (