自动化立体仓库 - WMS系统
#
zjj
2024-12-16 45d41c932cce59215648306a4fc98fa3f1673eda
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
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
<?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.OrderMapper">
 
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.zy.asrs.entity.Order">
        <id column="id" property="id" />
        <result column="uuid" property="uuid" />
        <result column="order_no" property="orderNo" />
        <result column="order_time" property="orderTime" />
        <result column="doc_type" property="docType" />
        <result column="item_id" property="itemId" />
        <result column="item_name" property="itemName" />
        <result column="allot_item_id" property="allotItemId" />
        <result column="def_number" property="defNumber" />
        <result column="number" property="number" />
        <result column="cstmr" property="cstmr" />
        <result column="cstmr_name" property="cstmrName" />
        <result column="tel" property="tel" />
        <result column="oper_memb" property="operMemb" />
        <result column="total_fee" property="totalFee" />
        <result column="discount" property="discount" />
        <result column="discount_fee" property="discountFee" />
        <result column="other_fee" property="otherFee" />
        <result column="act_fee" property="actFee" />
        <result column="pay_type" property="payType" />
        <result column="salesman" property="salesman" />
        <result column="account_day" property="accountDay" />
        <result column="post_fee_type" property="postFeeType" />
        <result column="post_fee" property="postFee" />
        <result column="pay_time" property="payTime" />
        <result column="send_time" property="sendTime" />
        <result column="ship_name" property="shipName" />
        <result column="ship_code" property="shipCode" />
        <result column="settle" property="settle" />
        <result column="status" property="status" />
        <result column="create_by" property="createBy" />
        <result column="create_time" property="createTime" />
        <result column="update_by" property="updateBy" />
        <result column="update_time" property="updateTime" />
        <result column="memo" property="memo" />
 
    </resultMap>
 
    <update id="updateSettle">
        update man_order
        set settle = #{settle}
        ,update_time = getdate()
        <if test="userId != null">
            ,update_by = #{userId}
        </if>
        where 1=1
        and id = #{orderId}
    </update>
    <update id="updateSettleTo1">
        UPDATE man_order set settle = 1 WHERE order_no = #{orderNo}
    </update>
    <select id="checkDetlWorkQtyLess0" resultType="integer">
        select count(*) FROM man_order_detl WHERE order_no = #{orderNo} and (work_qty > 0 or qty > 0)
    </select>
 
    <select id="selectComplete" resultMap="BaseResultMap">
        select top 5 *
        from man_order
        where 1=1
        and settle = 4
        and status = 1
        order by update_time asc
    </select>
 
    <select id="selectComplete1" resultMap="BaseResultMap">
        select top 5 *
        from man_order
        where 1=1
        and settle = 5
        and status = 1
        order by update_time asc
    </select>
 
    <select id="selectComplete2" resultMap="BaseResultMap">
        select top 5 *
        from man_order
        where 1=1
        and settle = 6
        and status = 1
        order by update_time asc
    </select>
 
    <select id="selectInOrOutOrders" resultMap="BaseResultMap">
        SELECT * FROM man_order o left join man_doc_type d on o.doc_type = d.doc_id WHERE d.pakin = #{flag} and o.settle in (1,2)
    </select>
 
    <select id="selectToBeHistoryOrder" resultMap="BaseResultMap">
        select *
        from man_order
        where 1=1
          and settle = #{settle}
        order by create_time asc
    </select>
    <select id="selectAllorderNo" resultType="com.zy.asrs.entity.OrderListDTO">
        select order_no from man_order
    </select>
    <sql id="orderSql">
        <if test="orderNo != null and orderNo!='' ">
            and order_no like '%' + #{orderNo} + '%'
        </if>
    </sql>
    <select id="getOrderAll" resultMap="BaseResultMap">
        select t.row,order_all.* from
            (
            select
            ROW_NUMBER() over (order by order_time desc) as row,id
            FROM order_all
            WHERE 1=1
            <include refid="orderSql"></include>
            GROUP BY id,order_time
            ) t
            LEFT JOIN order_all ON t.id = order_all.id
            where t.row between ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize})
    </select>
    <select id="getOrderAllCount" resultType="java.lang.Long">
        select SUM(1) from
            (
                select
                    ROW_NUMBER() over (order by sum(1) desc) as row,
                        id
                FROM order_all
                WHERE 1=1
                <include refid="orderSql"></include>
                GROUP BY id
            ) t
                LEFT JOIN order_all ON t.id = order_all.id
    </select>
 
 
    <insert id="addToLogTable">
        INSERT INTO man_order_log SELECT * FROM man_order WHERE id = #{id}
    </insert>
 
</mapper>