huliguo
昨天 d15bb55822001421572bfee603b3d503cd63e07d
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
<?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.ruoyi.errand.mapper.AppUserMapper">
 
 
    <select id="getOrderPage" resultType="com.ruoyi.errand.object.vo.app.OrderPageVO">
        SELECT
            tc.id AS communityId,
            tc.name AS communityName,
            tc.fee_amount AS feeAmount,
            tab.id AS addressBookId,
            tab.recipient_name AS recipientName,
            tab.recipient_phone AS recipientPhone,
            tab.address_detail AS addressDetail,
            tau.phone as phone,
            tau.vip_id AS vipId,
            tau.first_order as isFirstOrder,
            tau.end_time as endTime
        FROM
            t_app_user tau
                LEFT JOIN
            t_community tc ON
                tc.id=tau.community_id
                    AND tc.del_flag = 0
                    AND tc.status = 0
                LEFT JOIN
            t_address_book tab
            ON tau.id = tab.app_user_id
                and tc.id = tab.community_id
                AND tc.del_flag = 0
                AND tc.status = 0
        WHERE
            tau.id = #{userId}
        ORDER BY tab.is_default DESC , tab.create_time DESC
 
 
 
    </select>
    <select id="getMyInfo" resultType="com.ruoyi.errand.object.vo.app.AppUserInfoVO">
        select
            tau.avatar,
            tau.name,
            tau.phone,
            tau.sex,
            tau.birthday,
            tau.vip_id,
            tvs.vip_name as vipName,
            tau.end_time
        from
            t_app_user tau
        left join
            t_vip_setting tvs on tau.vip_id = tvs.id
        where
            tau.del_flag=0
       and tau.id = #{id}
    </select>
 
    <select id="countByCreateTimeBefore" resultType="java.lang.Integer">
        SELECT COUNT(*) FROM t_app_user WHERE create_time &lt;= #{end} and del_flag=0 and status !=3
    </select>
 
    <select id="countByCreateTimeBetween" resultType="java.lang.Integer">
        SELECT COUNT(*) FROM t_app_user WHERE create_time BETWEEN #{start} AND #{end}  and del_flag=0 and status !=3
    </select>
 
    <select id="countGroupByDate" resultType="java.util.Map">
        SELECT
            CASE #{datePattern}
                WHEN 'HH时' THEN DATE_FORMAT(create_time, '%H时')
                WHEN 'EEEE' THEN ELT(DAYOFWEEK(create_time), '星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六')
                WHEN 'dd日' THEN DATE_FORMAT(create_time, '%d日')
                WHEN 'MM月' THEN DATE_FORMAT(create_time, '%m月')
                WHEN 'yyyy-MM-dd' THEN DATE_FORMAT(create_time, '%Y-%m-%d')
                ELSE DATE_FORMAT(create_time, '%Y-%m-%d')
                END AS `date`,
            COUNT(*) AS `count`
        FROM t_app_user
        WHERE create_time BETWEEN #{start} AND #{end}
          and del_flag=0 and status !=3
        GROUP BY
            CASE #{datePattern}
            WHEN 'HH时' THEN DATE_FORMAT(create_time, '%H时')
            WHEN 'EEEE' THEN ELT(DAYOFWEEK(create_time), '星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六')
            WHEN 'dd日' THEN DATE_FORMAT(create_time, '%d日')
            WHEN 'MM月' THEN DATE_FORMAT(create_time, '%m月')
            WHEN 'yyyy-MM-dd' THEN DATE_FORMAT(create_time, '%Y-%m-%d')
            ELSE DATE_FORMAT(create_time, '%Y-%m-%d')
        END
        ORDER BY create_time
    </select>
    <select id="getCourierByCommunityId" resultType="java.util.Map">
        select
            tau.id as `id`,
            tau.wx_openid as `openid`,
            tc.phone as `phone`
        from
            t_community_courier tcc
        left join t_app_user tau on tcc.courier_id = tau.courier_id
        left join t_courier tc on tcc.courier_id = tc.id
        where
            tcc.community_id=#{communityId}
 
    </select>
    <select id="getAppUserPageList" resultType="com.ruoyi.errand.object.vo.sys.AppUserPageListVO">
        SELECT
            id,
            name,
            phone,
            CASE WHEN end_time IS NOT NULL AND end_time > CURRENT_TIMESTAMP THEN 1 ELSE 0 END AS isVip,
            create_time,
            status
        FROM
            t_app_user
        where
            del_flag=0
        <if test="dto.name!=null and '' != dto.name  ">
            and name like concat('%',#{dto.name},'%')
        </if>
        <if test="dto.phone!=null and '' != dto.phone">
            and phone like concat('%',#{dto.phone},'%')
        </if>
        <if test="dto.isVip!=null and dto.isVip == 1">
            and end_time > CURRENT_TIMESTAMP
        </if>
        <if test="dto.isVip!=null and dto.isVip == 0">
            and end_time &lt;  CURRENT_TIMESTAMP or end_time is null
        </if>
        <if test="dto.status!=null  ">
            and status =#{status}
        </if>
    </select>
 
</mapper>