自动化立体仓库 - WMS系统
#
luxiaotao1123
2022-03-29 f94e75b6390118e170ce573dc1fc9780d0176a52
src/main/resources/mapper/LocDetlMapper.xml
@@ -26,6 +26,44 @@
        <result column="appe_time" property="appeTime" />
    </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}
        <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>
    </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="batchSeq"></include>
    </update>
    <sql id="stockOutCondition">
        <if test="loc_no!=null and loc_no!='' ">
            and a.loc_no like '%' + #{loc_no} + '%'
@@ -144,15 +182,21 @@
        where 1=1
        and b.loc_sts = 'F'
        and a.matnr = #{matnr}
        <if test="batch != null and batch != ''">
            and a.batch = #{batch}
        </if>
        <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>
        order by
        DATEPART(yyyy,a.modi_time),DATEPART(mm,a.modi_time),DATEPART(dd,a.modi_time)
        desc,
        NEWID(),
        case
        when (left(a.loc_no, 2) = '01') then 0
        when (left(a.loc_no, 2) = '02') then 1
@@ -207,4 +251,13 @@
        desc
    </select>
    <select id="queryStockAnfme" resultType="java.lang.Double">
        select sum(anfme) as count from man_loc_detl
         where 1=1
         and matnr = #{matnr}
        <if test="batch != null and batch != ''">
            and batch = #{batch}
        </if>
    </select>
</mapper>