<?xml version="1.0" encoding="UTF-8"?> 
 | 
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> 
 | 
<mapper namespace="com.zy.asrs.mapper.LocMastMapper"> 
 | 
  
 | 
    <!-- 通用查询映射结果 --> 
 | 
    <resultMap id="BaseResultMap" type="com.zy.asrs.entity.LocMast"> 
 | 
        <id column="loc_no" property="locNo" /> 
 | 
        <result column="whs_type" property="whsType" /> 
 | 
        <result column="plt_type" property="pltType" /> 
 | 
        <result column="ctn_type" property="ctnType" /> 
 | 
        <result column="loc_sts" property="locSts" /> 
 | 
        <result column="sheet_no" property="sheetNo" /> 
 | 
        <result column="crn_no" property="crnNo" /> 
 | 
        <result column="row1" property="row1" /> 
 | 
        <result column="bay1" property="bay1" /> 
 | 
        <result column="lev1" property="lev1" /> 
 | 
        <result column="full_plt" property="fullPlt" /> 
 | 
        <result column="loc_type" property="locType" /> 
 | 
        <result column="loc_type1" property="locType1" /> 
 | 
        <result column="loc_type2" property="locType2" /> 
 | 
        <result column="loc_type3" property="locType3" /> 
 | 
        <result column="out_enable" property="outEnable" /> 
 | 
        <result column="io_time" property="ioTime" /> 
 | 
        <result column="first_time" property="firstTime" /> 
 | 
        <result column="modi_user" property="modiUser" /> 
 | 
        <result column="modi_time" property="modiTime" /> 
 | 
        <result column="appe_user" property="appeUser" /> 
 | 
        <result column="appe_time" property="appeTime" /> 
 | 
        <result column="error_time" property="errorTime" /> 
 | 
        <result column="error_memo" property="errorMemo" /> 
 | 
        <result column="ctn_kind" property="ctnKind" /> 
 | 
        <result column="sc_weight" property="scWeight" /> 
 | 
        <result column="inv_wh" property="invWh" /> 
 | 
        <result column="mk" property="mk" /> 
 | 
        <result column="barcode" property="barcode" /> 
 | 
        <result column="ctn_no" property="ctnNo" /> 
 | 
  
 | 
    </resultMap> 
 | 
    <select id="selectAreaEmpty" resultMap="BaseResultMap"> 
 | 
        select * from asr_loc_mast 
 | 
        where loc_sts in ('O') 
 | 
          and loc_type1 = #{locType1} 
 | 
        ORDER BY lev1,bay1,row1 
 | 
    </select> 
 | 
    <select id="queryFreeLocMast" resultMap="BaseResultMap"> 
 | 
        select top 1 * 
 | 
        from asr_loc_mast 
 | 
        where row1=#{row} 
 | 
        and loc_sts='O' 
 | 
        <if test="locType1 != null"> 
 | 
            and loc_type1 = #{locType1} 
 | 
        </if> 
 | 
        order by loc_sts desc ,lev1 asc,bay1 asc 
 | 
    </select> 
 | 
    <select id="selectByLoc" resultMap="BaseResultMap"> 
 | 
        select * from asr_loc_mast 
 | 
        where loc_no = #{locNo} 
 | 
    </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> 
 | 
</mapper> 
 |