自动化立体仓库 - WMS系统
whycq
2024-12-26 cb7fe9b2619ea3848489fce5004c87bbd9f71e63
src/main/resources/mapper/LocMastMapper.xml
@@ -33,7 +33,6 @@
        <result column="inv_wh" property="invWh" />
        <result column="mk" property="mk" />
        <result column="barcode" property="barcode" />
        <result column="Pdc_type" property="PdcType" />
        <result column="ctn_no" property="ctnNo" />
    </resultMap>
@@ -48,4 +47,85 @@
        </if>
        order by loc_sts desc ,lev1 asc,bay1 asc
    </select>
    <select id="queryShallowLocFMast" resultMap="BaseResultMap">
        select * from asr_loc_mast
        where 1=1
        and loc_no in (
         select
         concat(
         (
         case
         when left(loc_no, 2) = '01' then '02'
         when left(loc_no, 2) = '04' then '03'
         when left(loc_no, 2) = '05' then '06'
         when left(loc_no, 2) = '08' then '07'
         when left(loc_no, 2) = '09' then '10'
         when left(loc_no, 2) = '12' then '11'
         when left(loc_no, 2) = '13' then '14'
         when left(loc_no, 2) = '16' then '15'
         when left(loc_no, 2) = '17' then '18'
         when left(loc_no, 2) = '20' then '19'
         end)
         , right(loc_no, 5)) as shallowLocNo
         from asr_loc_mast
         where 1=1
         and loc_sts = 'O'
         and row1 in (1,4,5,8,9,12,13,16,17,20)
        )
        and (loc_sts = 'F' or loc_sts = 'D') and crn_no = #{crnNo}
    </select>
    <select id="selectLocByLev" resultMap="BaseResultMap">
        SELECT * FROM asr_loc_mast_man_node_merge WHERE lev1 = #{lev}
    </select>
    <select id="selectByLocNo" resultMap="BaseResultMap">
        SELECT * FROM asr_loc_mast WHERE loc_no in
        <foreach collection="locNo" item="loc" index="index" open="(" close=")" separator=",">
            #{loc}
        </foreach>
    </select>
    <select id="selectNodeDByLev" resultMap="BaseResultMap">
        SELECT * FROM asr_node_loc_DT_D_view WHERE lev1 = #{lev}
    </select>
    <select id="selectNodeCByLev" resultMap="BaseResultMap">
        SELECT * FROM asr_node_loc_DT_C_view WHERE lev1 = #{lev}
    </select>
    <select id="selectNodeBByLev"  resultMap="BaseResultMap">
        SELECT * FROM asr_node_loc_DT_B_view WHERE lev1 = #{lev}
    </select>
    <select id="selectNodeEByLev" resultMap="BaseResultMap">
        SELECT * FROM asr_node_loc_DT_E_view WHERE lev1 = #{lev}
    </select>
    <select id="selectByLoc" resultMap="BaseResultMap">
        select * from asr_loc_mast
        where loc_no = #{locNo}
    </select>
    <select id="selectAreaEmpty" resultMap="BaseResultMap">
        select * from asr_loc_mast
        where loc_sts in ('O')
          and loc_type1 = #{locType1}
          and crn_no = #{crnNo}
        ORDER BY lev1,bay1,row1
    </select>
    <select id="selectAllLocNotEmpty" resultMap="BaseResultMap">
        SELECT * FROM asr_loc_mast WHERE loc_sts != 'O' AND loc_no in
        <foreach collection="groupLoc" item="loc" index="index" open="(" close=")" separator=",">
            #{loc}
        </foreach>
    </select>
    <select id="getLocFByMatnr" resultMap="BaseResultMap">
        SELECT TOP 1 mast.*
        FROM asr_loc_mast mast
        JOIN asr_loc_detl detl
        ON mast.loc_no = detl.loc_no
        AND mast.loc_sts = 'F'
        AND detl.matnr = #{matnr}
        ORDER BY mast.modi_time
    </select>
</mapper>