自动化立体仓库 - WMS系统
pang.jiabao
2025-09-16 c902e238626f737a224325ac503706c45f2f247f
src/main/resources/mapper/WrkMastMapper.xml
@@ -56,24 +56,124 @@
        <result column="log_err_time" property="logErrTime" />
        <result column="log_err_memo" property="logErrMemo" />
        <result column="barcode" property="barcode" />
        <result column="Pdc_type" property="PdcType" />
        <result column="ctn_no" property="ctnNo" />
        <result column="full_plt" property="fullPlt" />
        <result column="pre_have" property="preHave" />
        <result column="take_none" property="takeNone" />
        <result column="rgv_no" property="rgvNo" />
        <result column="rgv_ssta_no" property="rgvSstaNo" />
        <result column="rgv_dsta_no" property="rgvDstaNo" />
        <result column="rgv_create_time" property="rgvCreateTime" />
        <result column="rgv_finish_time" property="rgvFinishTime" />
        <result column="work_no_other" property="workNoOther" />
        <result column="Pdc_type" property="pdcType" />
    </resultMap>
    <select id="selectToBeCompleteData" resultMap="BaseResultMap">
        select * from asr_wrk_mast where ((wrk_sts = 4 Or wrk_sts = 14 ) and io_type != 103 and io_type != 104 and io_type != 107 ) or (wrk_sts = 2 and io_type=6) order by upd_mk,io_time,wrk_no
        select * from asr_wrk_mast where ((wrk_sts = 4 Or wrk_sts = 14 ) and io_type != 103 and io_type != 104 and io_type != 107 ) or (wrk_sts = 2 and io_type=6) order by upd_mk,error_time,io_time,wrk_no
    </select>
    <select id="selectToBeHistoryData" resultMap="BaseResultMap">
        select * from asr_wrk_mast
        where wrk_sts=5
        or (wrk_sts=15 and ove_mk='Y' and wrk_no not in (select wrk_no from asr_bas_devp))
        or (wrk_sts=15 and dateadd(mi,15,crn_end_time) &lt;= getdate() and wrk_no not in (select wrk_no from asr_bas_devp))
        or (wrk_sts=15 and crn_end_time is null and wrk_no not in (select wrk_no from asr_bas_devp))
        order by io_time,wrk_no asc
        SELECT a.*
        FROM asr_wrk_mast a
        LEFT JOIN asr_bas_devp b ON a.wrk_no = b.wrk_no
        WHERE b.wrk_no IS NULL
        AND (
        (a.wrk_sts = 5 AND a.modi_time &lt; DATEADD(s, -10, GETDATE()))
        OR
        (a.wrk_sts = 15 AND (
        a.ove_mk = 'Y' OR
        a.modi_time &lt;= DATEADD(s, -10, GETDATE()) OR
        a.crn_end_time IS NULL
        ))
        OR
        (a.wrk_sts = 54 AND a.io_type = 120 AND a.modi_time &lt; DATEADD(s, -10, GETDATE()))
        ) OPTION (RECOMPILE)
    </select>
    <select id="selectWrkMastWrkDetl" resultMap="BaseResultMap">
        select m.* from asr_wrk_mast m,asr_wrk_detl d
        where 1=1
        and m.wrk_no = d.wrk_no
        and m.io_type = #{ioType}
        and m.crn_no = #{crnNo}
        and d.matnr = #{matnr}
        <choose>
            <when test="batch != null and batch != ''">
                and d.batch = #{batch}
            </when>
            <otherwise>
                and (d.batch IS NULL OR d.batch = '')
            </otherwise>
        </choose>
        <choose>
            <when test="brand != null and brand != ''">
                and d.brand = #{brand}
            </when>
            <otherwise>
                and (d.brand IS NULL OR d.brand = '')
            </otherwise>
        </choose>
        <choose>
            <when test="standby1 != null and standby1 != ''">
                and d.standby1 = #{standby1}
            </when>
            <otherwise>
                and (d.standby1 IS NULL OR d.standby1 = '')
            </otherwise>
        </choose>
        <choose>
            <when test="standby2 != null and standby2 != ''">
                and d.standby2 = #{standby2}
            </when>
            <otherwise>
                and (d.standby2 IS NULL OR d.standby2 = '')
            </otherwise>
        </choose>
        <choose>
            <when test="standby3 != null and standby3 != ''">
                and d.standby3 = #{standby3}
            </when>
            <otherwise>
                and (d.standby3 IS NULL OR d.standby3 = '')
            </otherwise>
        </choose>
        <choose>
            <when test="boxType1 != null and boxType1 != ''">
                and d.box_type1 = #{boxType1}
            </when>
            <otherwise>
                and (d.box_type1 IS NULL OR d.box_type1 = '')
            </otherwise>
        </choose>
        <choose>
            <when test="boxType2 != null and boxType2 != ''">
                and d.box_type2 = #{boxType2}
            </when>
            <otherwise>
                and (d.box_type2 IS NULL OR d.box_type2 = '')
            </otherwise>
        </choose>
        <choose>
            <when test="boxType3 != null and boxType3 != ''">
                and d.box_type3 = #{boxType3}
            </when>
            <otherwise>
                and (d.box_type3 IS NULL OR d.box_type3 = '')
            </otherwise>
        </choose>
    </select>
    <select id="selectLastInEmptyLoc" resultType="com.zy.asrs.entity.WrkMast">
        select wrk_no wrkNo,ctn_type ctnType,Pdc_type pdcType,loc_no locNo from asr_wrk_mast where sta_no = 1050 and wrk_sts in(2,9,10) order by io_time desc
    </select>
    <select id="selectInGzxCount" resultType="java.lang.Integer">
       select
        count(*)
       from
        asr_wrk_mast m
       where
        m.sta_no = #{site}
      and (m.whs_type is null or EXISTS (select 1 from asr_bas_devp d where d.wrk_no = m.wrk_no))
    </select>
</mapper>