*
lsh
2025-04-02 455c3fc88f870fdb1f8ef48b4f9ff3c0cefac6ad
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
<?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.LocDetlMapper">
 
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.zy.asrs.entity.LocDetl">
        <result column="LOC_NO" property="locNo" />
        <result column="ZPALLET" property="zpallet" />
        <result column="ANFME" property="anfme" />
        <result column="MATNR" property="matnr" />
        <result column="MAKTX" property="maktx" />
        <result column="BATCH" property="batch" />
        <result column="ORDER_NO" property="orderNo" />
 
        <result column="SPECS" property="specs" />
        <result column="MODEL" property="model" />
        <result column="COLOR" property="color" />
        <result column="BRAND" property="brand" />
        <result column="UNIT" property="unit" />
        <result column="PRICE" property="price" />
        <result column="SKU" property="sku" />
        <result column="UNITS" property="units" />
        <result column="BARCODE" property="barcode" />
        <result column="ORIGIN" property="origin" />
        <result column="MANU" property="manu" />
        <result column="MANU_DATE" property="manuDate" />
        <result column="ITEM_NUM" property="itemNum" />
        <result column="SAFE_QTY" property="safeQty" />
        <result column="WEIGHT" property="weight" />
        <result column="LENGTH" property="length" />
        <result column="VOLUME" property="volume" />
        <result column="THREE_CODE" property="threeCode" />
        <result column="SUPP" property="supp" />
        <result column="SUPP_CODE" property="suppCode" />
        <result column="BE_BATCH" property="beBatch" />
        <result column="DEAD_TIME" property="deadTime" />
        <result column="DEAD_WARN" property="deadWarn" />
        <result column="SOURCE" property="source" />
        <result column="INSPECT" property="inspect" />
        <result column="DANGER" property="danger" />
 
        <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="MEMO" property="memo" />
    </resultMap>
 
    <sql id="stockOutCondition">
        <if test="loc_no!=null and loc_no!='' ">
            and a."LOC_NO" like '%' + #{loc_no} + '%'
        </if>
        <if test="matNo!=null and matNo!='' ">
            and a."MATNR" like '%' + #{matNo} + '%'
        </if>
        <if test="matName!=null and matName!='' ">
            and a."MAKTX" like '%' + #{matName} + '%'
        </if>
        <if test="anfme!=null and anfme!='' ">
            and a."ANFME" like '%' + #{anfme} + '%'
        </if>
        <if test="altme!=null and altme!='' ">
            and a."ALTME" like '%' + #{altme} + '%'
        </if>
        <if test="startTime!=null and endTime!=null">
            and a."MODI_TIME" between #{startTime} and #{endTime}
        </if>
    </sql>
 
    <select id="getStockOutPage" resultMap="BaseResultMap">
        select * from
        (
            select
            ROW_NUMBER() over (order by a."appe_time",a."MATNR",a."LOC_NO") as ROW,
            a.*
            from "SOURCE"."asr_loc_detl" a
            left join "SOURCE"."asr_loc_mast" b on a."LOC_NO" = b."LOC_NO"
            where 1=1
            and b."LOC_STS" = 'F'
            <include refid="stockOutCondition"></include>
        ) t where t.ROW between ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize})
    </select>
 
    <select id="getStockOutPageCount" parameterType="java.util.Map" resultType="java.lang.Integer">
        select
        count(1)
        from "SOURCE"."asr_loc_detl" a
        left join "SOURCE"."asr_loc_mast" b on a."LOC_NO" = b."LOC_NO"
        where 1=1
        and b."LOC_STS" = 'F'
        <include refid="stockOutCondition"></include>
    </select>
</mapper>