自动化立体仓库 - WMS系统
#
zjj
2025-01-28 0f2015d89accebb6c34fef2476b040e0ed478724
src/main/resources/mapper/LocDetlMapper.xml
@@ -109,6 +109,9 @@
        <if test="owner !=null and owner!='' ">
            and a.owner =  #{owner}
        </if>
        <if test="batch !=null and batch!='' ">
            and a.batch like  '%' + #{batch} + '%'
        </if>
    </sql>
    <select id="getStockOutPage" resultMap="BaseResultMap">
@@ -145,14 +148,14 @@
        left join asr_loc_mast_man_node_merge b on a.loc_no = b.loc_no
        where 1=1
        and b.loc_sts = 'F'
        <choose>
            <when test="owner != null and owner != 0">
                and owner = #{owner}
            </when>
            <otherwise>
                and 1!=1
            </otherwise>
        </choose>
<!--        <choose>-->
<!--            <when test="owner != null and owner != 0">-->
<!--                and owner = #{owner}-->
<!--            </when>-->
<!--            <otherwise>-->
<!--                and 1!=1-->
<!--            </otherwise>-->
<!--        </choose>-->
<!--        <choose>-->
<!--            <when test="payment != null and payment != 0">-->
<!--                and payment = #{payment}-->
@@ -172,14 +175,14 @@
        left join asr_loc_mast_man_node_merge b on a.loc_no = b.loc_no
        where 1=1
        and b.loc_sts = 'F'
        <choose>
            <when test="owner != null and owner != 0">
                and owner = #{owner}
            </when>
            <otherwise>
                and 1!=1
            </otherwise>
        </choose>
<!--        <choose>-->
<!--            <when test="owner != null and owner != 0">-->
<!--                and owner = #{owner}-->
<!--            </when>-->
<!--            <otherwise>-->
<!--                and 1!=1-->
<!--            </otherwise>-->
<!--        </choose>-->
<!--        <choose>-->
<!--            <when test="payment != null and payment != 0">-->
<!--                and payment = #{payment}-->
@@ -221,10 +224,11 @@
        select
        ROW_NUMBER() over (order by sum(a.anfme) desc) as row
        , a.matnr
        ,a.batch
        , sum(a.anfme) as anfme
        from asr_loc_detl_all a
        where 1=1
        group by a.matnr
        group by a.matnr,a.batch
    </select>
    <select id="selectPakoutByRule" resultMap="BaseResultMap">
@@ -274,14 +278,14 @@
<!--            </otherwise>-->
<!--        </choose>-->
        <choose>
            <when test="owner != null and owner !=0">
                and a.owner = #{owner}
            </when>
            <otherwise>
                and 1!=1
            </otherwise>
        </choose>
<!--        <choose>-->
<!--            <when test="owner != null and owner !=0">-->
<!--                and a.owner = #{owner}-->
<!--            </when>-->
<!--            <otherwise>-->
<!--                and 1!=1-->
<!--            </otherwise>-->
<!--        </choose>-->
        order by
        DATEPART(yyyy,a.modi_time),DATEPART(mm,a.modi_time),DATEPART(dd,a.modi_time), a.anfme
@@ -434,7 +438,7 @@
        where 1=1
        and b.loc_sts = 'F'
        and a.matnr = #{matnr}
        and a.payment = 1
        <!--        <choose>-->
        <!--            <when test="batch != null and batch != ''">-->
        <!--                and a.batch = #{batch}-->
@@ -444,17 +448,17 @@
        <!--            </otherwise>-->
        <!--        </choose>-->
        <choose>
            <when test="owner != null and owner !=0">
                and a.owner = #{owner}
            </when>
            <otherwise>
                and 1!=1
            </otherwise>
        </choose>
<!--        <choose>-->
<!--            <when test="owner != null and owner !=0">-->
<!--                and a.owner = #{owner}-->
<!--            </when>-->
<!--            <otherwise>-->
<!--                and 1!=1-->
<!--            </otherwise>-->
<!--        </choose>-->
        order by
        a.price asc,a.manu,DATEPART(yyyy,a.modi_time),DATEPART(mm,a.modi_time),DATEPART(dd,a.modi_time), a.anfme
        a.manu,DATEPART(yyyy,a.modi_time),DATEPART(mm,a.modi_time),DATEPART(dd,a.modi_time), a.anfme
        desc,
        NEWID(),
        case
@@ -570,20 +574,21 @@
    </select>
    <select id="getStockStatisAll" resultType="com.zy.asrs.entity.result.LocDetlAll">
        select t.*,m.specs from
        select t.* from
        (
        select
        ROW_NUMBER() over (order by sum(a.anfme) desc) as row
        , a.matnr
        , a.matnr,a.batch
        , sum(a.anfme) as anfme
        ,sum (a.weight) as weight
        ,owner
        ,payment
        from asr_loc_detl_all a
        where 1=1
        <include refid="stockOutCondition"></include>
        group by a.matnr,a.owner,a.payment
        group by a.matnr,a.batch,a.owner,a.payment
        ) t
        LEFT JOIN man_mat m on t.matnr = m.matnr
        where t.row between ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize})
    </select>
@@ -592,12 +597,13 @@
        (
        select
        a.matnr
        ,a.batch
        ,owner
        ,payment
        from asr_loc_detl_all a
        where 1=1
        <include refid="stockOutCondition"></include>
        group by a.matnr,a.owner,a.payment
        group by a.matnr,a.batch,a.owner,a.payment
        ) b
    </select>
@@ -645,27 +651,27 @@
        where 1=1
        and b.loc_sts = 'F'
        and a.matnr = #{matnr}
        and a.payment = 1
        <!--        <choose>-->
        <!--            <when test="batch != null and batch != ''">-->
        <!--                and a.batch = #{batch}-->
        <!--            </when>-->
        <!--            <otherwise>-->
        <!--                and (a.batch IS NULL OR a.batch = '')-->
        <!--            </otherwise>-->
        <!--        </choose>-->
        <choose>
            <when test="owner != null and owner !=0">
                and a.owner = #{owner}
            <when test="batch != null and batch != ''">
                and a.batch = #{batch}
            </when>
            <otherwise>
                and 1!=1
                and (a.batch IS NULL OR a.batch = '')
            </otherwise>
        </choose>
<!--        <choose>-->
<!--            <when test="owner != null and owner !=0">-->
<!--                and a.owner = #{owner}-->
<!--            </when>-->
<!--            <otherwise>-->
<!--                and 1!=1-->
<!--            </otherwise>-->
<!--        </choose>-->
        order by
        a.price desc,a.manu,DATEPART(yyyy,a.modi_time),DATEPART(mm,a.modi_time),DATEPART(dd,a.modi_time), a.anfme
        a.manu,DATEPART(yyyy,a.modi_time),DATEPART(mm,a.modi_time),DATEPART(dd,a.modi_time), a.anfme
        desc,
        NEWID(),
        case
@@ -808,5 +814,32 @@
        group by a.matnr,a.[year],a.[month],a.[day],a.kun,a.up_down
        ) t
    </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
        <if test="matnr != null and matnr != ''">
            AND ld.matnr = #{matnr}
        </if>
        <if test="batch != null and batch != ''">
            AND ld.batch = #{batch}
        </if>
        <if test="grade != null and grade != ''">
            AND ld.brand = #{grade}
        </if>
        AND (lm.loc_sts = 'F')
        AND dual.count = 1
        ORDER BY lm.modi_time ASC
    </select>
</mapper>