自动化立体仓库 - WMS系统
#
zjj
2024-11-09 c48e244fdc73ca83db1d8ea0c418b70125d4cab1
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">
@@ -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">
@@ -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}-->
@@ -454,7 +458,7 @@
        </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,7 +651,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}-->
@@ -665,7 +671,7 @@
        </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>