Helius
2021-07-23 375237a59434d61567161131d85229d45c792366
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
<?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.xzx.gc.shop.mapper.JhyOrderMapper">
 
    <select id="queryOrderList" resultType="com.xzx.gc.shop.vo.QueryJhyOrderListVo">
        SELECT
        a.id id,
        a.order_no orderNo,
        a.area area,
        a.address address,
        date_format(reserve_date,'%Y-%m-%d') reserveDate,
        a.reserve_time reserveTime,
        a.status status,
        a.remark remark,
        a.username name,
        b.mobile_phone mobilePhone,
        d.mobile jhyMobilePhone,
               (select ifnull(sum(score),0) from xzx_jhy_order_items where order_id = a.id) totalPrice,
                (select ifnull(sum(weight),0) from xzx_jhy_order_items where order_id = a.id) totalWeight,
        d.username username
        FROM
        xzx_jhy_order a
        left join xzx_user_info b on b.user_id = a.user_id
        left join xzx_jhy_info d on d.user_id = a.jhy_id
        WHERE 1 = 1
        <if test="record.orderNo != null and record.orderNo != ''">
            and a.order_no like concat('%',#{record.orderNo},'%')
        </if>
        <if test="record.status != null and record.status != ''">
            and a.status = #{record.status}
        </if>
        <if test="record.jwyName != null and record.jwyName != ''">
            and d.username like concat('%',#{record.jwyName},'%')
        </if>
        <if test="record.account != null and record.account != ''">
            and ( a.username like concat('%',#{record.account},'%')
                      or b.mobile_phone like concat('%',#{record.accountPhone},'%') )
        </if>
        <if test="record.reserveTimeStart != null">
            and a.reserve_date >= #{record.reserveTimeStart}
        </if>
 
        <if test="record.reserveTimeEnd != null">
            and a.reserve_date &lt;= #{record.reserveTimeEnd}
        </if>
        order by a.CREATED_TIME desc
    </select>
 
 
 
    <select id="viewJhyOrder" resultType="com.xzx.gc.shop.vo.ViewJhyOrderVo">
        SELECT
        a.id id,
        a.order_no orderNo,
        b.nick_name nickName,
        b.mobile_phone mobilePhone,
        a.area area,
        a.address address,
        date_format(a.reserve_date,'%Y-%m-%d') reserveDate,
        a.reserve_time reserveTime,
        a.status status,
        d.username username,
        d.mobile mobile,
        date_format(a.receiving_time,'%Y-%m-%d %H:%i:%S') receivingTime,
        a.remark remark,
        a. COMMENT comments,
        a.score score,
        a.is_anonymous isAnonymous
        FROM
        xzx_jhy_order a
        left join xzx_user_info b on b.user_id = a.user_id
        left join xzx_jhy_info d on d.user_id = a.jhy_id
        WHERE a.id=#{id}
    </select>
 
    <select id="selectJhyOrderTitleStatistics" resultType="java.util.Map">
        select d.title title, sum(b.weight) weight
        from xzx_jhy_order a
           inner join xzx_jhy_order_items b on a.id=b.order_id
           inner join xzx_sys_environmental_info c on b.item_type=c.id
           inner join xzx_sys_environmental_info d on c.parent_id = d.id
        where a.status in (3, 4)
        <if test="userId != null and userId != ''">
            and a.user_id=#{userId}
        </if>
        group by d.title
    </select>
 
    <select id="selectJhyOrderCnt" resultType="java.lang.Integer">
        select IFNULL(count(1),0) from xzx_jhy_order
        where status in (3, 4)
        <if test="userId != null and userId != ''">
            and user_id=#{userId}
        </if>
    </select>
 
    <select id="selectTotalScoreHasGet" resultType="java.math.BigDecimal">
        select IFNULL(SUM(b.score), 0) from xzx_jhy_order a
        inner join xzx_jhy_order_items b on a.id=b.order_id
        where a.user_id=#{userId}
    </select>
 
    <select id="selectJhyInfoByUserId" resultType="com.xzx.gc.entity.JhyInfo">
        select * from xzx_jhy_info where id = #{jhyId}
    </select>
</mapper>