2
zyy
2025-11-14 6e85d12eab8accba3dd6731d9273388bd7f8d68c
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
<?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.yami.trading.dao.user.UserMapper">
    <resultMap id="BaseResultMap" type="com.yami.trading.bean.model.User">
        <!--
          WARNING - @mbg.generated
        -->
        <id column="user_id" jdbcType="VARCHAR" property="userId"/>
        <result column="nick_name" jdbcType="VARCHAR" property="nickName"/>
        <result column="real_name" jdbcType="VARCHAR" property="realName"/>
        <result column="user_mail" jdbcType="VARCHAR" property="userMail"/>
        <result column="login_password" jdbcType="VARCHAR" property="loginPassword"/>
        <result column="pay_password" jdbcType="VARCHAR" property="payPassword"/>
        <result column="user_mobile" jdbcType="VARCHAR" property="userMobile"/>
        <result column="modify_time" jdbcType="TIMESTAMP" property="modifyTime"/>
        <result column="user_regtime" jdbcType="TIMESTAMP" property="userRegtime"/>
        <result column="user_regip" jdbcType="VARCHAR" property="userRegip"/>
        <result column="user_lasttime" jdbcType="TIMESTAMP" property="userLasttime"/>
        <result column="user_lastip" jdbcType="VARCHAR" property="userLastip"/>
        <result column="user_memo" jdbcType="VARCHAR" property="userMemo"/>
        <result column="sex" jdbcType="CHAR" property="sex"/>
        <result column="birth_date" jdbcType="CHAR" property="birthDate"/>
        <result column="pic" jdbcType="VARCHAR" property="pic"/>
        <result column="status" jdbcType="INTEGER" property="status"/>
    </resultMap>
 
    <select id="getUserByUserMail" resultType="com.yami.trading.bean.model.User">
        select *
        from tz_user u
        where u.user_mail = #{userMail}
    </select>
    <select id="selectOneByUserName" resultType="com.yami.trading.bean.model.User">
        select *
        from `tz_user`
        where binary nick_name = #{userName} limit 1
    </select>
 
 
    <select id="listUser" resultType="com.yami.trading.bean.user.dto.UserDto">
 
        SELECT * FROM tz_user u LEFT JOIN tz_wallet w ON u.user_id=w.user_id
 
        where 1=1 and u.role_name in
        <foreach collection="roleNames" separator="," index="index" open="(" close=")" item="r">
            #{r}
        </foreach>
 
        <if test="userCode!=null and userCode!=''">
            and u.user_code=#{userCode}
        </if>
 
        <if test="userName!=null and userName!=''">
            and u.user_name=#{userName} or u.user_code=#{userName}
        </if>
 
        <if test="userMail!=null and userMail!=''">
            and u.user_mail like  CONCAT('%', #{userMail}, '%')
        </if>
 
        <if test="userMobile!=null and userMobile!=''">
            and u.user_mobile  like  CONCAT('%', #{userMobile}, '%')
        </if>
 
        <if test="checkedList!=null">
            and u.user_id in
            <foreach collection="checkedList" separator="," index="index" open="(" close=")" item="r">
                #{r}
            </foreach>
 
        </if>
        order by u.create_time desc
    </select>
 
 
    <select id="getAgentAllStatistics" resultType="com.yami.trading.bean.user.dto.AgentUserDto">
        SELECT party.role_name, party.user_name, party.user_code, party.user_id
        FROM tz_user party
--                  LEFT JOIN tz_user_recom ur ON party.user_id = ur.user_id
        WHERE 1 = 1
          AND party.role_name IN ("AGENT", "AGENTLOW")
 
        <if test="userName!=null and userName!=''">
            and party.user_name=#{userName} or party.user_code=#{userName}
        </if>
          <if test="children!=null">
               and party.user_id in
              <foreach collection="children" index="index" item="item" open="(" separator="," close=")">
                  #{item}
              </foreach>
          </if>
 
 
        ORDER BY party.create_time desc
    </select>
 
    <select id="listUserAndRecom" resultType="com.yami.trading.bean.user.dto.UserDataDto">
 
        SELECT u.*,r.user_name AS 'recomUserName',w.money FROM tz_user u
        LEFT JOIN tz_user r ON u.user_recom=r.user_id
        LEFT JOIN tz_wallet w ON u.user_id=w.user_id
 
 
        where 1=1 and u.role_name in
        <foreach collection="roleNames" separator="," index="index" open="(" close=")" item="r">
            #{r}
        </foreach>
 
        <if test="checkedList!=null">
            and u.user_id in
            <foreach collection="checkedList" separator="," index="index" open="(" close=")" item="r">
                    #{r}
            </foreach>
 
        </if>
        <if test="userCode!=null and userCode!=''">
            and u.user_code=#{userCode}
        </if>
 
        <if test="userName!=null and userName!=''">
            and (u.user_name=#{userName} or u.user_code=#{userName})
        </if>
 
        <if test="userMail!=null and userMail!=''">
            and u.user_mail like  CONCAT('%', #{userMail}, '%')
        </if>
 
        <if test="userMobile!=null and userMobile!=''">
            and u.user_mobile  like  CONCAT('%', #{userMobile}, '%')
        </if>
        <if test="lastIp!=null and lastIp!=''">
            and u.user_lastip=#{lastIp}
        </if>
 
        <if test="recomUserName!=null and recomUserName!=''">
            and r.user_name like  CONCAT('%', #{recomUserName}, '%')
        </if>
        order by u.create_time desc
    </select>
</mapper>