From dd5b15229cb15459fa7c31ccea77dac28cbfafbd Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期一, 13 四月 2020 10:04:20 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/div' into div --- fanli/src/main/java/com/yeshi/fanli/mapping/UserInfoMapper.xml | 1183 ++++++++++++++++++++++++++++++++++++++-------------------- 1 files changed, 766 insertions(+), 417 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/mapping/UserInfoMapper.xml b/fanli/src/main/java/com/yeshi/fanli/mapping/UserInfoMapper.xml index a1a849b..7def428 100644 --- a/fanli/src/main/java/com/yeshi/fanli/mapping/UserInfoMapper.xml +++ b/fanli/src/main/java/com/yeshi/fanli/mapping/UserInfoMapper.xml @@ -1,417 +1,766 @@ -<?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.yeshi.fanli.dao.mybatis.UserInfoMapper"> - <resultMap id="BaseResultMap" type="com.yeshi.fanli.entity.bus.user.UserInfo"> - <id column="id" property="id" jdbcType="BIGINT" /> - <result column="identifycode" property="openid" jdbcType="VARCHAR" /> - <result column="login_type" property="loginType" jdbcType="INTEGER" /> - <result column="wx_open_id" property="wxOpenId" jdbcType="VARCHAR" /> - <result column="wx_union_id" property="wxUnionId" jdbcType="VARCHAR" /> - <result column="nick_name" property="nickName" jdbcType="VARCHAR" /> - <result column="tbName" property="tbName" jdbcType="VARCHAR" /> - <result column="tbPic" property="tbPic" jdbcType="VARCHAR" /> - <result column="wxName" property="wxName" jdbcType="VARCHAR" /> - <result column="wxPic" property="wxPic" jdbcType="VARCHAR" /> - <result column="portrait" property="portrait" jdbcType="VARCHAR" /> - <result column="createtime" property="createtime" jdbcType="BIGINT" /> - <result column="last_logintime" property="lastLoginTime" - jdbcType="BIGINT" /> - <result column="loginip" property="lastLoginIp" jdbcType="VARCHAR" /> - <result column="tuiguang_code" property="tuiGuangCode" - jdbcType="VARCHAR" /> - <result column="appid" property="appId" jdbcType="VARCHAR" /> - <result column="my_hongBao" property="myHongBao" jdbcType="DECIMAL" /> - <result column="pay_password" property="payPassword" jdbcType="VARCHAR" /> - <result column="rank" property="rank" jdbcType="INTEGER" /> - <result column="phone" property="phone" jdbcType="VARCHAR" /> - <result column="state" property="state" jdbcType="INTEGER" /> - <result column="state_desc" property="stateDesc" jdbcType="VARCHAR" /> - <!-- <association property="system" column="sid" resultMap="com.yeshi.fanli.dao.mybatis.SystemMapper.BaseResultMap" - /> --> - - - </resultMap> - <sql id="Base_Column_List">id,identifycode,login_type,wx_open_id,wx_union_id,nick_name,tbName,tbPic,wxName,wxPic,portrait,createtime,last_logintime,loginip,tuiguang_code,appid,my_hongBao,pay_password,sid,rank,phone,state,state_desc - </sql> - <select id="selectByPrimaryKey" resultMap="BaseResultMap" - parameterType="java.lang.Long"> - select - <include refid="Base_Column_List" /> - from yeshi_ec_user where id = #{id,jdbcType=BIGINT} and `state`=0 - </select> - - <select id="selectByPKey" resultMap="BaseResultMap" - parameterType="java.lang.Long"> - select - <include refid="Base_Column_List" /> - from yeshi_ec_user where id = #{id,jdbcType=BIGINT} - </select> - - <select id="selectByPrimaryKeyForUpdate" resultMap="BaseResultMap" - parameterType="java.lang.Long"> - select - <include refid="Base_Column_List" /> - from yeshi_ec_user where id = #{id,jdbcType=BIGINT} for update - </select> - <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">delete from - yeshi_ec_user where id = #{id,jdbcType=BIGINT} - </delete> - <insert id="insert" parameterType="com.yeshi.fanli.entity.bus.user.UserInfo" - useGeneratedKeys="true" keyProperty="id">insert into yeshi_ec_user - (id,identifycode,login_type,wx_open_id,wx_union_id,nick_name,tbName,tbPic,wxName,wxPic,portrait,createtime,last_logintime,loginip,tuiguang_code,appid,my_hongBao,pay_password,sid,rank,phone,state,state_desc) - values - (#{id,jdbcType=BIGINT},#{openid,jdbcType=VARCHAR},#{loginType,jdbcType=INTEGER},#{wxOpenId,jdbcType=VARCHAR},#{wxUnionId,jdbcType=VARCHAR},#{nickName,jdbcType=VARCHAR},#{tbName,jdbcType=VARCHAR},#{tbPic,jdbcType=VARCHAR},#{wxName,jdbcType=VARCHAR},#{wxPic,jdbcType=VARCHAR},#{portrait,jdbcType=VARCHAR},#{createtime,jdbcType=BIGINT},#{lastLoginTime,jdbcType=BIGINT},#{lastLoginIp,jdbcType=VARCHAR},#{tuiGuangCode,jdbcType=VARCHAR},#{appId,jdbcType=VARCHAR},#{myHongBao,jdbcType=DECIMAL},#{payPassword,jdbcType=VARCHAR},#{system.id,jdbcType=BIGINT},#{rank,jdbcType=INTEGER},#{phone,jdbcType=VARCHAR},#{state,jdbcType=INTEGER},#{stateDesc,jdbcType=VARCHAR}) - </insert> - <insert id="insertSelective" parameterType="com.yeshi.fanli.entity.bus.user.UserInfo" - useGeneratedKeys="true" keyProperty="id"> - insert into yeshi_ec_user - <trim prefix="(" suffix=")" suffixOverrides=","> - <if test="id != null">id,</if> - <if test="openid != null">identifycode,</if> - <if test="loginType != null">login_type,</if> - <if test="wxOpenId != null">wx_open_id,</if> - <if test="wxUnionId != null">wx_union_id,</if> - <if test="nickName != null">nick_name,</if> - <if test="tbName != null">tbName,</if> - <if test="tbPic != null">tbPic,</if> - <if test="wxName != null">wxName,</if> - <if test="wxPic != null">wxPic,</if> - <if test="portrait != null">portrait,</if> - <if test="createtime != null">createtime,</if> - <if test="lastLoginTime != null">last_logintime,</if> - <if test="lastLoginIp != null">loginip,</if> - <if test="tuiGuangCode != null">tuiguang_code,</if> - <if test="appId != null">appid,</if> - <if test="myHongBao != null">my_hongBao,</if> - <if test="payPassword != null">pay_password,</if> - <if test="system != null">sid,</if> - <if test="rank != null">rank,</if> - <if test="phone != null">phone,</if> - <if test="state != null">state,</if> - <if test="stateDesc != null">state_desc,</if> - </trim> - values - <trim prefix="(" suffix=")" suffixOverrides=","> - <if test="id != null">#{id,jdbcType=BIGINT},</if> - <if test="openid != null">#{openid,jdbcType=VARCHAR},</if> - <if test="loginType != null">#{loginType,jdbcType=INTEGER},</if> - <if test="wxOpenId != null">#{wxOpenId,jdbcType=VARCHAR},</if> - <if test="wxUnionId != null">#{wxUnionId,jdbcType=VARCHAR},</if> - <if test="nickName != null">#{nickName,jdbcType=VARCHAR},</if> - <if test="tbName != null">#{tbName,jdbcType=VARCHAR},</if> - <if test="tbPic != null">#{tbPic,jdbcType=VARCHAR},</if> - <if test="wxName != null">#{wxName,jdbcType=VARCHAR},</if> - <if test="wxPic != null">#{wxPic,jdbcType=VARCHAR},</if> - <if test="portrait != null">#{portrait,jdbcType=VARCHAR},</if> - <if test="createtime != null">#{createtime,jdbcType=BIGINT},</if> - <if test="lastLoginTime != null">#{lastLoginTime,jdbcType=BIGINT},</if> - <if test="lastLoginIp != null">#{lastLoginIp,jdbcType=VARCHAR},</if> - <if test="tuiGuangCode != null">#{tuiGuangCode,jdbcType=VARCHAR},</if> - <if test="appId != null">#{appId,jdbcType=VARCHAR},</if> - <if test="myHongBao != null">#{myHongBao,jdbcType=DECIMAL},</if> - <if test="payPassword != null">#{payPassword,jdbcType=VARCHAR},</if> - <if test="system != null">#{system.id,jdbcType=BIGINT},</if> - <if test="rank != null">#{rank,jdbcType=INTEGER},</if> - <if test="phone != null">#{phone,jdbcType=VARCHAR},</if> - <if test="state != null">#{state,jdbcType=INTEGER},</if> - <if test="stateDesc != null">#{stateDesc,jdbcType=VARCHAR}</if> - </trim> - </insert> - <update id="updateByPrimaryKey" parameterType="com.yeshi.fanli.entity.bus.user.UserInfo">update - yeshi_ec_user set identifycode = #{openid,jdbcType=VARCHAR},login_type - = #{loginType,jdbcType=INTEGER},wx_open_id = - #{wxOpenId,jdbcType=VARCHAR},wx_union_id = - #{wxUnionId,jdbcType=VARCHAR},nick_name = - #{nickName,jdbcType=VARCHAR},tbName = #{tbName,jdbcType=VARCHAR},tbPic - = #{tbPic,jdbcType=VARCHAR},wxName = #{wxName,jdbcType=VARCHAR},wxPic - = #{wxPic,jdbcType=VARCHAR},portrait = - #{portrait,jdbcType=VARCHAR},createtime = - #{createtime,jdbcType=BIGINT},last_logintime = - #{lastLoginTime,jdbcType=BIGINT},loginip = - #{lastLoginIp,jdbcType=VARCHAR},tuiguang_code = - #{tuiGuangCode,jdbcType=VARCHAR},appid = - #{appId,jdbcType=VARCHAR},my_hongBao = - #{myHongBao,jdbcType=DECIMAL},pay_password = - #{payPassword,jdbcType=VARCHAR},sid = - #{system.id,jdbcType=BIGINT},rank = #{rank,jdbcType=INTEGER} ,phone - =#{phone,jdbcType=VARCHAR} ,state =#{state,jdbcType=INTEGER} - ,state_desc =#{stateDesc,jdbcType=VARCHAR} where id = - #{id,jdbcType=BIGINT} - </update> - <update id="updateByPrimaryKeySelective" parameterType="com.yeshi.fanli.entity.bus.user.UserInfo"> - update yeshi_ec_user - <set> - <if test="openid != null">identifycode=#{openid,jdbcType=VARCHAR},</if> - <if test="loginType != null">login_type=#{loginType,jdbcType=INTEGER},</if> - <if test="wxOpenId != null">wx_open_id=#{wxOpenId,jdbcType=VARCHAR},</if> - <if test="wxUnionId != null">wx_union_id=#{wxUnionId,jdbcType=VARCHAR},</if> - <if test="nickName != null">nick_name=#{nickName,jdbcType=VARCHAR},</if> - <if test="tbName != null">tbName=#{tbName,jdbcType=VARCHAR},</if> - <if test="tbPic != null">tbPic=#{tbPic,jdbcType=VARCHAR},</if> - <if test="wxName != null">wxName=#{wxName,jdbcType=VARCHAR},</if> - <if test="wxPic != null">wxPic=#{wxPic,jdbcType=VARCHAR},</if> - <if test="portrait != null">portrait=#{portrait,jdbcType=VARCHAR},</if> - <if test="createtime != null">createtime=#{createtime,jdbcType=BIGINT},</if> - <if test="lastLoginTime != null">last_logintime=#{lastLoginTime,jdbcType=BIGINT},</if> - <if test="lastLoginIp != null">loginip=#{lastLoginIp,jdbcType=VARCHAR},</if> - <if test="tuiGuangCode != null">tuiguang_code=#{tuiGuangCode,jdbcType=VARCHAR},</if> - <if test="appId != null">appid=#{appId,jdbcType=VARCHAR},</if> - <if test="myHongBao != null">my_hongBao=#{myHongBao,jdbcType=DECIMAL},</if> - <if test="payPassword != null">pay_password=#{payPassword,jdbcType=VARCHAR},</if> - <if test="system != null">sid=#{system.id,jdbcType=BIGINT},</if> - <if test="rank != null">rank=#{rank,jdbcType=INTEGER},</if> - <if test="phone !=null">phone =#{phone,jdbcType=VARCHAR},</if> - <if test="state !=null">state =#{state,jdbcType=INTEGER},</if> - <if test="stateDesc !=null">state_desc =#{stateDesc,jdbcType=VARCHAR},</if> - </set> - where id = #{id,jdbcType=BIGINT} - </update> - <update id="subHongBaoByUid">update yeshi_ec_user set my_hongBao= - my_hongBao-#{money,jdbcType=DECIMAL} where id = #{uid,jdbcType=BIGINT} - </update> - <update id="addHongBaoByUid">update yeshi_ec_user set my_hongBao= - my_hongBao+#{money,jdbcType=DECIMAL} where id = #{uid,jdbcType=BIGINT} - </update> - <!-- 娓呴櫎鎵嬪娍瀵嗙爜 --> - <delete id="cleanPassword">DELETE FROM `yeshi_ec_extract_record` WHERE uid = - #{id}; - </delete> - <!-- 鏌ヨ鏂颁汉绾㈠寘 --> - <select id="getNewPeopleHB" resultType="BigDecimal">SELECT sum(hb.`money`) - FROM `yeshi_ec_hongbao` hb WHERE hb.`uid` = #{id} AND hb.`type` = '4'; - </select> - <!-- 鏌ヨ鎴戠殑绾㈠寘 --> - <select id="getMyHB" resultType="BigDecimal">SELECT SUM(hb.`money`) FROM - `yeshi_ec_hongbao` hb WHERE hb.`uid` = #{id}; - </select> - <!-- 鏍规嵁AppId涓庡井淇nionID鑾峰彇鐢ㄦ埛 --> - <select id="getUserInfoByAppIdAndWXUnionId" resultMap="BaseResultMap"> - select - <include refid="Base_Column_List" /> - from yeshi_ec_user where appid=#{appId} and wx_union_id=#{unionId} - limit 1 - </select> - <!-- 鏍规嵁AppId涓庢窐瀹漁penId鑾峰彇鐢ㄦ埛 --> - <select id="getUserInfoByAppIdAndTaoBaoOpenId" resultMap="BaseResultMap"> - select - <include refid="Base_Column_List" /> - from yeshi_ec_user where appid=#{appId} and identifycode=#{openId} - limit 1 - </select> - <!-- 鏍规嵁AppId涓庣數璇濆彿鐮佽幏鍙栫敤鎴� --> - <select id="getUserInfoByAppIdAndPhone" resultMap="BaseResultMap"> - select - <include refid="Base_Column_List" /> - from yeshi_ec_user where appid=#{appId} and phone=#{phone} limit 1 - </select> - <select id="getMaxUid" resultType="java.lang.Long">select max(id) from - yeshi_ec_user - </select> - <!-- 涓や釜璐﹀彿鐨勪笟鍔¤瀺鍚� --> - <select id="connectUser" > - call procedure_connect_user(#{mainUid},#{lessUid}) - </select> - - <select id="query" resultMap="BaseResultMap"> - SELECT u.* - <if test="orderField != null and orderField != 5 and orderField != 6"> - ,(SELECT COUNT(hb.hb_id) FROM `yeshi_ec_hongbao_v2` hb - WHERE hb.hb_uid = u.id AND (hb.hb_type = 1 or hb.hb_type = 2) - <if test="orderMode == 2"> - AND DATE_FORMAT(hb.`hb_create_time`,'%Y%m') = DATE_FORMAT(CURDATE(),'%Y%m') - </if> - )AS total - </if> - <if test="orderMode == 3"> - ,(SELECT COUNT(tr.`id`) FROM `yeshi_ec_threesale` tr - WHERE tr.`boss_id`=u.id AND tr.state = 1) AS totalThree - </if> - - FROM yeshi_ec_user u - LEFT JOIN yeshi_ec_binding_account b ON u.`id` = b.`uid` - where 1=1 - <if test="key != null and key !='' "> - AND (u.id LIKE '%${key}%' OR u.`phone` LIKE '%${key}%' OR u.`wxName` LIKE '%${key}%' - OR u.`nick_name` LIKE '%${key}%' OR u.`tbName` LIKE '%${key}%' OR b.`account` LIKE '%${key}%') - </if> - <if test="startTime != null and startTime !='' "> - <![CDATA[ AND FROM_UNIXTIME(createtime/1000) >= '${startTime}' ]]> - </if> - <if test="endTime != null and endTime !=''"> - <![CDATA[ AND FROM_UNIXTIME(createtime/1000) < '${endTime}' ]]> - </if> - <if test="userType != null"> - AND u.rank = #{userType} - </if> - <if test="days != null"> - <!-- 鏃堕棿 --> - AND <![CDATA[DATE_SUB(CURDATE(), INTERVAL ${days} DAY) <= FROM_UNIXTIME(createtime/1000)]]> - </if> - - ORDER BY - <if test="orderField == 1"> - total, - </if> - <if test="orderField == 2"> - total DESC, - </if> - <if test="orderField == 3"> - total, - </if> - <if test="orderField == 4"> - total DESC, - </if> - <if test="orderField == 5"> - totalThree, - </if> - <if test="orderField == 6"> - totalThree DESC, - </if> - - createtime DESC LIMIT ${start},${count} - - </select> - - <select id="queryCount" resultType="java.lang.Long"> - SELECT count(u.id) FROM yeshi_ec_user u - LEFT JOIN yeshi_ec_binding_account b ON u.`id` = b.`uid` - where <![CDATA[ 1>0 ]]> - <if test="key != null and key !='' "> - AND (u.id LIKE '%${key}%' OR u.`phone` LIKE '%${key}%' OR u.`wxName` LIKE '%${key}%' - OR u.`nick_name` LIKE '%${key}%' OR u.`tbName` LIKE '%${key}%' OR b.`account` LIKE '%${key}%') - </if> - <if test="startTime != null and startTime !='' "> - <![CDATA[ AND FROM_UNIXTIME(createtime/1000) >= '${startTime}' ]]> - </if> - <if test="endTime != null and endTime !=''"> - <![CDATA[ AND FROM_UNIXTIME(createtime/1000) < '${endTime}' ]]> - </if> - <if test="userType != null"> - AND u.rank = #{userType} - </if> - <if test="days != null"> - <!-- 鏃堕棿 --> - AND <![CDATA[DATE_SUB(CURDATE(), INTERVAL ${days} DAY) <= FROM_UNIXTIME(createtime/1000)]]> - </if> - - </select> - - <select id="querySumMoney" resultType="java.lang.Double"> - SELECT COALESCE(sum(u.my_hongBao),0) FROM yeshi_ec_user u - LEFT JOIN yeshi_ec_binding_account b ON u.`id` = b.`uid` - where <![CDATA[ 1>0 ]]> - <if test="key != null and key !='' "> - AND (u.id LIKE '%${key}%' OR u.`phone` LIKE '%${key}%' OR u.`wxName` LIKE '%${key}%' - OR u.`nick_name` LIKE '%${key}%' OR u.`tbName` LIKE '%${key}%' OR b.`account` LIKE '%${key}%') - </if> - <if test="startTime != null and startTime !='' "> - <![CDATA[ AND FROM_UNIXTIME(createtime/1000) >= '${startTime}' ]]> - </if> - <if test="endTime != null and endTime !=''"> - <![CDATA[ AND FROM_UNIXTIME(createtime/1000) < '${endTime}' ]]> - </if> - <if test="userType != null"> - AND u.rank = #{userType} - </if> - <if test="days != null"> - <!-- 鏃堕棿 --> - AND <![CDATA[DATE_SUB(CURDATE(), INTERVAL ${days} DAY) <= FROM_UNIXTIME(createtime/1000)]]> - </if> - </select> - - - <select id="countNewUser" resultType="java.lang.Long"> - <!-- 鑷喘璁㈠崟 --> - SELECT COALESCE(count(id),0) FROM `yeshi_ec_user` - WHERE 1 > 0 - <if test="isToday != null and isToday == 1"> - AND TO_DAYS(FROM_UNIXTIME(createtime/1000)) = TO_DAYS(NOW()) - </if> - <if test="isMonth != null and isMonth == 1"> - AND DATE_FORMAT( FROM_UNIXTIME(createtime/1000), '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' ) - </if> - </select> - - <select id="countRank" resultType="java.lang.Long"> - <!-- 绛夌骇缁熻 --> - SELECT COALESCE(count(id),0) FROM `yeshi_ec_user` WHERE rank = #{rank} - </select> - - <select id="countAllMoney" resultType="java.math.BigDecimal"> - <!-- 閲戦缁熻 --> - SELECT CAST(SUM(my_hongBao)AS DECIMAL(19,2)) FROM `yeshi_ec_user` - WHERE 1=1 - <if test="minMoney != null"> - AND <![CDATA[ my_hongBao >= #{minMoney}]]> - </if> - </select> - - <select id="countShareAndInviteMoney" resultMap="BaseResultMap"> - SELECT IFNULL(SUM(h.`money`),0),h.`uid` FROM `yeshi_ec_hongbao` h - WHERE DATE_FORMAT(FROM_UNIXTIME(h.`createtime`/1000), '%Y-%m-%d' )= '2018-08-02' - <![CDATA[AND h.state <>4]]> - AND ( h.`type` =5 OR h.`type` =6 OR h.`type` =7 OR h.`type` =20 OR h.`type` =21 OR h.`type` =22 ) - GROUP BY h.`uid` - ORDER BY SUM(h.`money`) DESC - LIMIT ${start},${count} - </select> - - <select id="longTimeNoLogin" resultType="java.lang.Long"> - - SELECT u.`id` FROM `yeshi_ec_user` u - WHERE u.`id` IN <foreach item="item" collection="list" open="(" separator="," - close=")">#{item}</foreach> - AND <![CDATA[ (DATE_SUB(CURDATE(), INTERVAL ${daysNum} DAY) > DATE(FROM_UNIXTIME(u.`last_logintime`/1000)) - OR (u.`last_logintime` IS NULL - AND DATE_SUB(CURDATE(), INTERVAL ${daysNum} DAY) > DATE(FROM_UNIXTIME(u.`createTime`/1000)))) ]]> - </select> - - - <select id="countLoseUser" resultType="java.lang.Long"> - SELECT COUNT(DISTINCT t.`id` ) FROM `yeshi_ec_user` t - LEFT JOIN `yeshi_ec_user_money_detail` d ON d.`umd_uid` = t.`id` - WHERE DATE_SUB(CURDATE(), INTERVAL ${num} DAY) > DATE(FROM_UNIXTIME( t.`last_logintime`/1000)) - AND DATE_SUB(CURDATE(), INTERVAL ${num} DAY) > DATE(d.`umd_createtime`) - </select> - - <select id="countHasOrderUser" resultType="java.lang.Long"> - SELECT COUNT(DISTINCT h.`uid`) FROM yeshi_ec_hongbao_v2 h - WHERE h.`hb_type`=1 or h.`hb_type`=2 - </select> - - - <select id="countNewUserByDate" resultType="java.util.HashMap"> - SELECT COUNT(h.`id`) AS total, - <if test="type == 1"> - FROM_UNIXTIME(h.`createtime`/1000,'%Y-%m-%d') AS 'createDate' - </if> - <if test="type == 2"> - FROM_UNIXTIME(h.`createtime`/1000,'%m') AS 'createDate' - </if> - <if test="type == 3"> - FROM_UNIXTIME(h.`createtime`/1000,'%Y') AS 'createDate' - </if> - FROM yeshi_ec_user h - WHERE 1=1 - <if test="startTime != null and startTime != '' "> - AND FROM_UNIXTIME(h.`createtime`/1000,'%Y-%m-%d')<![CDATA[ >= ]]>'${startTime}' - </if> - <if test="endTime != null and endTime != '' "> - AND FROM_UNIXTIME(h.`createtime`/1000,'%Y-%m-%d') <![CDATA[ <= ]]> '${endTime}' - </if> - <if test="years != null and years != '' "> - AND FROM_UNIXTIME(h.`createtime`/1000,'%Y') = '${years}' - </if> - <if test="type == 1"> - GROUP BY FROM_UNIXTIME(h.`createtime`/1000,'%Y-%m-%d') - </if> - <if test="type == 2"> - GROUP BY FROM_UNIXTIME(h.`createtime`/1000,'%Y-%m') - </if> - <if test="type == 3"> - GROUP BY FROM_UNIXTIME(h.`createtime`/1000,'%Y') - </if> - ORDER BY h.`createtime` - </select> -</mapper> +<?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.yeshi.fanli.dao.mybatis.UserInfoMapper"> + <resultMap id="BaseResultMap" type="com.yeshi.fanli.entity.bus.user.UserInfo"> + <id column="id" property="id" jdbcType="BIGINT" /> + <result column="identifycode" property="openid" jdbcType="VARCHAR" /> + <result column="login_type" property="loginType" jdbcType="INTEGER" /> + <result column="wx_open_id" property="wxOpenId" jdbcType="VARCHAR" /> + <result column="wx_union_id" property="wxUnionId" jdbcType="VARCHAR" /> + <result column="nick_name" property="nickName" jdbcType="VARCHAR" /> + <result column="tbName" property="tbName" jdbcType="VARCHAR" /> + <result column="tbPic" property="tbPic" jdbcType="VARCHAR" /> + <result column="wxName" property="wxName" jdbcType="VARCHAR" /> + <result column="wxPic" property="wxPic" jdbcType="VARCHAR" /> + <result column="portrait" property="portrait" jdbcType="VARCHAR" /> + <result column="createtime" property="createtime" jdbcType="BIGINT" /> + <result column="last_logintime" property="lastLoginTime" + jdbcType="BIGINT" /> + <result column="loginip" property="lastLoginIp" jdbcType="VARCHAR" /> + <result column="type" property="type" jdbcType="INTEGER" /> + <result column="appid" property="appId" jdbcType="VARCHAR" /> + <result column="my_hongBao" property="myHongBao" jdbcType="DECIMAL" /> + <result column="pay_password" property="payPassword" jdbcType="VARCHAR" /> + <result column="rank" property="rank" jdbcType="INTEGER" /> + <result column="phone" property="phone" jdbcType="VARCHAR" /> + <result column="state" property="state" jdbcType="INTEGER" /> + <result column="state_desc" property="stateDesc" jdbcType="VARCHAR" /> + <!-- <association property="system" column="sid" resultMap="com.yeshi.fanli.dao.mybatis.SystemMapper.BaseResultMap" + /> --> + </resultMap> + + <resultMap id="BaseResultMapVO" type="com.yeshi.fanli.vo.user.UserInfoVO"> + <id column="id" property="id" jdbcType="BIGINT" /> + <result column="identifycode" property="openid" jdbcType="VARCHAR" /> + <result column="login_type" property="loginType" jdbcType="INTEGER" /> + <result column="wx_open_id" property="wxOpenId" jdbcType="VARCHAR" /> + <result column="wx_union_id" property="wxUnionId" jdbcType="VARCHAR" /> + <result column="nick_name" property="nickName" jdbcType="VARCHAR" /> + <result column="uiet_taobao_nick_name" property="tbName" + jdbcType="VARCHAR" /> + <result column="tbPic" property="tbPic" jdbcType="VARCHAR" /> + <result column="wxName" property="wxName" jdbcType="VARCHAR" /> + <result column="wxPic" property="wxPic" jdbcType="VARCHAR" /> + <result column="portrait" property="portrait" jdbcType="VARCHAR" /> + <result column="createtime" property="createtime" jdbcType="BIGINT" /> + <result column="last_logintime" property="lastLoginTime" + jdbcType="BIGINT" /> + <result column="loginip" property="lastLoginIp" jdbcType="VARCHAR" /> + <result column="type" property="type" jdbcType="INTEGER" /> + <result column="appid" property="appId" jdbcType="VARCHAR" /> + <result column="my_hongBao" property="myHongBao" jdbcType="DECIMAL" /> + <result column="pay_password" property="payPassword" jdbcType="VARCHAR" /> + <result column="rank" property="rank" jdbcType="INTEGER" /> + <result column="phone" property="phone" jdbcType="VARCHAR" /> + <result column="state" property="state" jdbcType="INTEGER" /> + <result column="state_desc" property="stateDesc" jdbcType="VARCHAR" /> + + <result column="ur_id" property="rankId" jdbcType="BIGINT" /> + <result column="ur_name" property="rankName" jdbcType="VARCHAR" /> + <result column="ur_picture" property="rankPicture" jdbcType="VARCHAR" /> + + <result column="totalOrder" property="totalOrder" jdbcType="BIGINT" /> + <result column="monthOrder" property="monthOrder" jdbcType="BIGINT" /> + + <result column="uiet_special_id" property="tbSpecialId" + jdbcType="VARCHAR" /> + <result column="uiet_relation_id" property="tbRelationId" + jdbcType="VARCHAR" /> + <result column="uiet_taobao_uid" property="taoBaoUid" jdbcType="VARCHAR" /> + + <result column="wxUnionIdInvalid" property="wxUnionIdInvalid" + jdbcType="VARCHAR" /> + <result column="taobaoUidInvalid" property="taobaoUidInvalid" + jdbcType="VARCHAR" /> + <result column="phoneInvalid" property="phoneInvalid" jdbcType="VARCHAR" /> + <result column="alipayAccountInvalid" property="alipayAccountInvalid" + jdbcType="VARCHAR" /> + + <result column="uie_gold_coin" property="goldCoin" jdbcType="INTEGER" /> + <result column="uie_mark" property="mark" jdbcType="VARCHAR" /> + </resultMap> + + <resultMap id="ChartMap" type="com.yeshi.fanli.dto.ChartTDO"> + <result column="showDate" property="showDate" jdbcType="VARCHAR" /> + <result column="showValue" property="showValue" jdbcType="VARCHAR" /> + </resultMap> + + <sql id="Base_Column_List">id,identifycode,login_type,wx_open_id,wx_union_id,nick_name,tbName,tbPic,wxName,wxPic,portrait,createtime,last_logintime,loginip,type,appid,my_hongBao,pay_password,sid,rank,phone,state,state_desc + </sql> + <!-- 涓嶈兘鏌ヨ缂撳瓨 --> + <select id="selectByPrimaryKey" resultMap="BaseResultMap" + parameterType="java.lang.Long" flushCache="true" useCache="false"> + select + <include refid="Base_Column_List" /> + from yeshi_ec_user where id = #{id,jdbcType=BIGINT} + </select> + + <!-- 涓嶈兘鏌ヨ缂撳瓨 --> + <select id="selectAvailableByPrimaryKey" resultMap="BaseResultMap" + parameterType="java.lang.Long" flushCache="true" useCache="false"> + select + <include refid="Base_Column_List" /> + from yeshi_ec_user where id = #{id,jdbcType=BIGINT} and `state`=0 + </select> + + <select id="selectByPrimaryKeyForUpdate" resultMap="BaseResultMap" + parameterType="java.lang.Long"> + select + <include refid="Base_Column_List" /> + from yeshi_ec_user where id = #{id,jdbcType=BIGINT} for update + </select> + <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">delete from + yeshi_ec_user where id = #{id,jdbcType=BIGINT} + </delete> + <insert id="insert" parameterType="com.yeshi.fanli.entity.bus.user.UserInfo" + useGeneratedKeys="true" keyProperty="id">insert into yeshi_ec_user + (id,identifycode,login_type,wx_open_id,wx_union_id,nick_name,tbName,tbPic,wxName,wxPic,portrait,createtime,last_logintime,loginip,type,appid,my_hongBao,pay_password,sid,rank,phone,state,state_desc,platform) + values + (#{id,jdbcType=BIGINT},#{openid,jdbcType=VARCHAR},#{loginType,jdbcType=INTEGER},#{wxOpenId,jdbcType=VARCHAR},#{wxUnionId,jdbcType=VARCHAR},#{nickName,jdbcType=VARCHAR},#{tbName,jdbcType=VARCHAR},#{tbPic,jdbcType=VARCHAR},#{wxName,jdbcType=VARCHAR},#{wxPic,jdbcType=VARCHAR},#{portrait,jdbcType=VARCHAR},#{createtime,jdbcType=BIGINT},#{lastLoginTime,jdbcType=BIGINT},#{lastLoginIp,jdbcType=VARCHAR},#{type,jdbcType=INTEGER},#{appId,jdbcType=VARCHAR},#{myHongBao,jdbcType=DECIMAL},#{payPassword,jdbcType=VARCHAR},#{system.id,jdbcType=BIGINT},#{rank,jdbcType=INTEGER},#{phone,jdbcType=VARCHAR},#{state,jdbcType=INTEGER},#{stateDesc,jdbcType=VARCHAR},#{platform,jdbcType=VARCHAR}) + </insert> + <insert id="insertSelective" parameterType="com.yeshi.fanli.entity.bus.user.UserInfo" + useGeneratedKeys="true" keyProperty="id"> + insert into yeshi_ec_user + <trim prefix="(" suffix=")" suffixOverrides=","> + <if test="id != null">id,</if> + <if test="openid != null">identifycode,</if> + <if test="loginType != null">login_type,</if> + <if test="wxOpenId != null">wx_open_id,</if> + <if test="wxUnionId != null">wx_union_id,</if> + <if test="nickName != null">nick_name,</if> + <if test="tbName != null">tbName,</if> + <if test="tbPic != null">tbPic,</if> + <if test="wxName != null">wxName,</if> + <if test="wxPic != null">wxPic,</if> + <if test="portrait != null">portrait,</if> + <if test="createtime != null">createtime,</if> + <if test="lastLoginTime != null">last_logintime,</if> + <if test="lastLoginIp != null">loginip,</if> + <if test="type != null">type,</if> + <if test="appId != null">appid,</if> + <if test="myHongBao != null">my_hongBao,</if> + <if test="payPassword != null">pay_password,</if> + <if test="system != null">sid,</if> + <if test="rank != null">rank,</if> + <if test="phone != null">phone,</if> + <if test="state != null">state,</if> + <if test="stateDesc != null">state_desc,</if> + <if test="platform != null">platform,</if> + </trim> + values + <trim prefix="(" suffix=")" suffixOverrides=","> + <if test="id != null">#{id,jdbcType=BIGINT},</if> + <if test="openid != null">#{openid,jdbcType=VARCHAR},</if> + <if test="loginType != null">#{loginType,jdbcType=INTEGER},</if> + <if test="wxOpenId != null">#{wxOpenId,jdbcType=VARCHAR},</if> + <if test="wxUnionId != null">#{wxUnionId,jdbcType=VARCHAR},</if> + <if test="nickName != null">#{nickName,jdbcType=VARCHAR},</if> + <if test="tbName != null">#{tbName,jdbcType=VARCHAR},</if> + <if test="tbPic != null">#{tbPic,jdbcType=VARCHAR},</if> + <if test="wxName != null">#{wxName,jdbcType=VARCHAR},</if> + <if test="wxPic != null">#{wxPic,jdbcType=VARCHAR},</if> + <if test="portrait != null">#{portrait,jdbcType=VARCHAR},</if> + <if test="createtime != null">#{createtime,jdbcType=BIGINT},</if> + <if test="lastLoginTime != null">#{lastLoginTime,jdbcType=BIGINT},</if> + <if test="lastLoginIp != null">#{lastLoginIp,jdbcType=VARCHAR},</if> + <if test="type != null">#{type,jdbcType=INTEGER},</if> + <if test="appId != null">#{appId,jdbcType=VARCHAR},</if> + <if test="myHongBao != null">#{myHongBao,jdbcType=DECIMAL},</if> + <if test="payPassword != null">#{payPassword,jdbcType=VARCHAR},</if> + <if test="system != null">#{system.id,jdbcType=BIGINT},</if> + <if test="rank != null">#{rank,jdbcType=INTEGER},</if> + <if test="phone != null">#{phone,jdbcType=VARCHAR},</if> + <if test="state != null">#{state,jdbcType=INTEGER},</if> + <if test="stateDesc != null">#{stateDesc,jdbcType=VARCHAR}</if> + <if test="platform != null">#{platform,jdbcType=VARCHAR}</if> + </trim> + </insert> + <update id="updateByPrimaryKey" parameterType="com.yeshi.fanli.entity.bus.user.UserInfo">update + yeshi_ec_user set identifycode = #{openid,jdbcType=VARCHAR},login_type + = #{loginType,jdbcType=INTEGER},wx_open_id = + #{wxOpenId,jdbcType=VARCHAR},wx_union_id = + #{wxUnionId,jdbcType=VARCHAR},nick_name = + #{nickName,jdbcType=VARCHAR},tbName = #{tbName,jdbcType=VARCHAR},tbPic + = #{tbPic,jdbcType=VARCHAR},wxName = #{wxName,jdbcType=VARCHAR},wxPic + = #{wxPic,jdbcType=VARCHAR},portrait = + #{portrait,jdbcType=VARCHAR},createtime = + #{createtime,jdbcType=BIGINT},last_logintime = + #{lastLoginTime,jdbcType=BIGINT},loginip = + #{lastLoginIp,jdbcType=VARCHAR},type = + #{type,jdbcType=INTEGER},appid = + #{appId,jdbcType=VARCHAR},my_hongBao = + #{myHongBao,jdbcType=DECIMAL},pay_password = + #{payPassword,jdbcType=VARCHAR},sid = + #{system.id,jdbcType=BIGINT},rank = #{rank,jdbcType=INTEGER} ,phone + =#{phone,jdbcType=VARCHAR} ,state =#{state,jdbcType=INTEGER} + ,state_desc =#{stateDesc,jdbcType=VARCHAR} where id = + #{id,jdbcType=BIGINT} + </update> + <update id="updateByPrimaryKeySelective" parameterType="com.yeshi.fanli.entity.bus.user.UserInfo"> + update yeshi_ec_user + <set> + <if test="openid != null">identifycode=#{openid,jdbcType=VARCHAR},</if> + <if test="loginType != null">login_type=#{loginType,jdbcType=INTEGER},</if> + <if test="wxOpenId != null">wx_open_id=#{wxOpenId,jdbcType=VARCHAR},</if> + <if test="wxUnionId != null">wx_union_id=#{wxUnionId,jdbcType=VARCHAR},</if> + <if test="nickName != null">nick_name=#{nickName,jdbcType=VARCHAR},</if> + <if test="tbName != null">tbName=#{tbName,jdbcType=VARCHAR},</if> + <if test="tbPic != null">tbPic=#{tbPic,jdbcType=VARCHAR},</if> + <if test="wxName != null">wxName=#{wxName,jdbcType=VARCHAR},</if> + <if test="wxPic != null">wxPic=#{wxPic,jdbcType=VARCHAR},</if> + <if test="portrait != null">portrait=#{portrait,jdbcType=VARCHAR},</if> + <if test="createtime != null">createtime=#{createtime,jdbcType=BIGINT},</if> + <if test="lastLoginTime != null">last_logintime=#{lastLoginTime,jdbcType=BIGINT},</if> + <if test="lastLoginIp != null">loginip=#{lastLoginIp,jdbcType=VARCHAR},</if> + <if test="type != null">type=#{type,jdbcType=INTEGER},</if> + <if test="appId != null">appid=#{appId,jdbcType=VARCHAR},</if> + <if test="myHongBao != null">my_hongBao=#{myHongBao,jdbcType=DECIMAL},</if> + <if test="payPassword != null">pay_password=#{payPassword,jdbcType=VARCHAR},</if> + <if test="system != null">sid=#{system.id,jdbcType=BIGINT},</if> + <if test="rank != null">rank=#{rank,jdbcType=INTEGER},</if> + <if test="phone !=null">phone =#{phone,jdbcType=VARCHAR},</if> + <if test="state !=null">state =#{state,jdbcType=INTEGER},</if> + <if test="stateDesc !=null">state_desc =#{stateDesc,jdbcType=VARCHAR},</if> + </set> + where id = #{id,jdbcType=BIGINT} + </update> + <update id="subHongBaoByUid">update yeshi_ec_user set my_hongBao= + my_hongBao-#{money,jdbcType=DECIMAL} where id = #{uid,jdbcType=BIGINT} + </update> + <update id="addHongBaoByUid">update yeshi_ec_user set my_hongBao= + my_hongBao+#{money,jdbcType=DECIMAL} where id = #{uid,jdbcType=BIGINT} + </update> + <!-- 娓呴櫎鎵嬪娍瀵嗙爜 --> + <delete id="cleanPassword">DELETE FROM `yeshi_ec_extract_record` WHERE uid = + #{id}; + </delete> + <!-- 鏌ヨ鏂颁汉绾㈠寘 --> + <select id="getNewPeopleHB" resultType="BigDecimal">SELECT sum(hb.`money`) + FROM `yeshi_ec_hongbao` hb WHERE hb.`uid` = #{id} AND hb.`type` = '4'; + </select> + <!-- 鏌ヨ鎴戠殑绾㈠寘 --> + <select id="getMyHB" resultType="BigDecimal">SELECT SUM(hb.`money`) FROM + `yeshi_ec_hongbao` hb WHERE hb.`uid` = #{id}; + </select> + <!-- 鏍规嵁AppId涓庡井淇nionID鑾峰彇鐢ㄦ埛 --> + <select id="listByAppIdAndWXUnionId" resultMap="BaseResultMap"> + select + <include refid="Base_Column_List" /> + from yeshi_ec_user where appid=#{appId} and wx_union_id=#{unionId} + </select> + <!-- 鏍规嵁AppId涓庢窐瀹漁penId鑾峰彇鐢ㄦ埛 --> + <select id="listByAppIdAndTaoBaoOpenId" resultMap="BaseResultMap"> + select + <include refid="Base_Column_List" /> + from yeshi_ec_user where appid=#{appId} and identifycode=#{openId} + </select> + <!-- 鏍规嵁AppId涓庣數璇濆彿鐮佽幏鍙栫敤鎴� --> + <select id="listByAppIdAndPhone" resultMap="BaseResultMap" + useCache="false" flushCache="true"> + select + <include refid="Base_Column_List" /> + from yeshi_ec_user where appid=#{appId} and phone=#{phone} + </select> + + <!-- 鏍规嵁AppId涓庣數璇濆彿鐮佽幏鍙栫敤鎴� --> + <select id="getEffectiveUserInfoByPhone" resultMap="BaseResultMap"> + select + <include refid="Base_Column_List" /> + from yeshi_ec_user + where phone=#{phone} AND state = 0 + LIMIT 1 + </select> + + <!-- 鏍规嵁AppId涓庣數璇濆彿鐮佽幏鍙栫敤鎴� --> + <select id="getEffectiveUserInfoByWXUnionId" resultMap="BaseResultMap"> + select + <include refid="Base_Column_List" /> + from yeshi_ec_user + where wx_union_id=#{unionId} AND state = 0 + LIMIT 1 + </select> + + + <select id="getEffectiveUserInfoByWXOpenId" resultMap="BaseResultMap"> + select + <include refid="Base_Column_List" /> + from yeshi_ec_user + where wx_open_id=#{wxOpenId} AND state = 0 + LIMIT 1 + </select> + + <select id="getMaxUid" resultType="java.lang.Long">select max(id) from + yeshi_ec_user + </select> + <!-- 涓や釜璐﹀彿鐨勪笟鍔¤瀺鍚� --> + <select id="connectUser"> + call procedure_connect_user(#{mainUid},#{lessUid}) + </select> + + <select id="query" resultMap="BaseResultMapVO"> + SELECT * + ,(SELECT COUNT(hb.hb_id) FROM `yeshi_ec_hongbao_v2` hb + WHERE + hb.hb_uid = u.id AND hb.hb_type = 1 )AS totalOrder <!-- 绱璁㈠崟 --> + ,(SELECT COUNT(hb.hb_id) FROM `yeshi_ec_hongbao_v2` hb + WHERE hb.hb_uid + = u.id AND hb.hb_type = 1 + AND DATE_FORMAT(hb.`hb_create_time`,'%Y%m') = + DATE_FORMAT(CURDATE(),'%Y%m'))AS monthOrder <!-- 绱鏈湀璁㈠崟 --> + ,(SELECT COUNT(tr.`id`) FROM `yeshi_ec_threesale` tr <!-- 闃熷憳 --> + WHERE tr.`boss_id`=u.id AND tr.state = 1) AS totalPlayers + FROM + yeshi_ec_user u + LEFT JOIN yeshi_ec_binding_account b ON u.`id` = + b.`uid` + LEFT JOIN yeshi_ec_user_info_extra ext ON u.`id` = ext.uie_uid + LEFT JOIN yeshi_ec_user_rank rak ON rak.ur_id = ext.uie_rank_id + LEFT + JOIN yeshi_ec_user_info_extra_taobao tb ON tb.`uiet_uid` = u.id + + <if test="userState == 2"> + LEFT JOIN + (SELECT A.uid AS buid,MAX(A.f_wxUnionId) AS + wxUnionIdInvalid + ,MAX(A.f_taobaoUid) AS + taobaoUidInvalid,MAX(A.f_phone) AS + phoneInvalid,MAX(A.f_alipayAccount) AS alipayAccountInvalid FROM + (SELECT u.`id`AS uid,b.account AS alipayAccount,b.name AS + alipayAccountName,fu.* FROM yeshi_ec_user u + LEFT JOIN + yeshi_ec_binding_account b ON b.`uid` = u.`id` + LEFT JOIN + yeshi_ec_user_info_extra_taobao tb ON tb.`uiet_uid` = u.id + LEFT JOIN + (SELECT fc.fuc_effective,IF(fc.`fuc_type` = + 'wxUnionId',fc.`fuc_identify_code`,NULL)AS f_wxUnionId, + IF(fc.`fuc_type` = 'taobaoUid',fc.`fuc_identify_code`,NULL)AS + f_taobaoUid, + IF(fc.`fuc_type` = 'phone',fc.`fuc_identify_code`,NULL)AS + f_phone, + IF(fc.`fuc_type` = + 'alipayAccount',fc.`fuc_identify_code`,NULL)AS f_alipayAccount + FROM + yeshi_ec_forbidden_user_identify_code fc WHERE fc.fuc_effective + = 1 + )fu ON (fu.f_wxUnionId = u.`wx_union_id` OR fu.f_taobaoUid = + tb.`uiet_taobao_uid` OR fu.f_phone = u.`phone` OR fu.f_alipayAccount + = b.`account`) + WHERE u.`state` =2 + )A GROUP BY A.uid) B ON u.id= B.buid + </if> + + where 1=1 + <if test="userState == 1"> + AND u.`state` <![CDATA[<>]]> + 2 <!-- 姝e父鐢ㄦ埛 --> + </if> + <if test="userState == 2"> + AND u.`state` =2 <!-- 灏佺鐢ㄦ埛 --> + </if> + + <if test="userType!=null"> + AND u.type=#{userType} + </if> + + <if test="startTime != null and startTime !='' "> + AND DATE_FORMAT(FROM_UNIXTIME(u.createtime/1000),'%Y%m%d')<![CDATA[>=]]> + DATE_FORMAT(#{startTime},'%Y%m%d') + </if> + <if test="endTime != null and endTime !=''"> + AND DATE_FORMAT(FROM_UNIXTIME(u.createtime/1000),'%Y%m%d')<![CDATA[<=]]> + DATE_FORMAT(#{endTime},'%Y%m%d') + </if> + <if test="userRank != null"> + AND rak.ur_name = #{userRank} + </if> + <if test="days != null"> + <!-- 娉ㄥ唽鏃堕棿 --> + AND <![CDATA[DATE_SUB(CURDATE(), INTERVAL ${days} DAY) <= FROM_UNIXTIME(u.createtime/1000)]]> + </if> + <if test="key != null and key !='' "> + <if test="keyType == 1"> + AND u.id = #{key} + </if> + <if test="keyType == 2"> + AND u.`nick_name` LIKE '%${key}%' + </if> + <if test="keyType == 3"> + AND u.`phone` = #{key} + </if> + <if test="keyType == 4"> + AND b.`account` = #{key} + </if> + </if> + + ORDER BY + <if test="orderField == 1"> + totalOrder, + </if> + <if test="orderField == 2"> + totalOrder DESC, + </if> + <if test="orderField == 3"> + monthOrder, + </if> + <if test="orderField == 4"> + monthOrder DESC, + </if> + <if test="orderField == 5"> + totalPlayers, + </if> + <if test="orderField == 6"> + totalPlayers DESC, + </if> + u.createtime DESC + + LIMIT ${start},${count} + </select> + + <select id="queryCount" resultType="java.lang.Long"> + SELECT IFNULL(count(u.id),0) FROM yeshi_ec_user u + LEFT JOIN + yeshi_ec_binding_account b ON u.`id` = b.`uid` + LEFT JOIN + yeshi_ec_user_info_extra ext ON u.`id` = ext.uie_uid + LEFT JOIN + yeshi_ec_user_rank rak ON rak.ur_id = ext.uie_rank_id + where 1=1 + + <if test="userState == 1"> + AND u.`state` <![CDATA[<>]]> + 2 <!-- 姝e父鐢ㄦ埛 --> + </if> + <if test="userState == 2"> + AND u.`state` =2 <!-- 灏佺鐢ㄦ埛 --> + </if> + <if test="userType!=null"> + AND u.type=#{userType} + </if> + <if test="startTime != null and startTime !='' "> + AND DATE_FORMAT(FROM_UNIXTIME(u.createtime/1000),'%Y%m%d')<![CDATA[>=]]> + DATE_FORMAT(#{startTime},'%Y%m%d') + </if> + <if test="endTime != null and endTime !=''"> + AND DATE_FORMAT(FROM_UNIXTIME(u.createtime/1000),'%Y%m%d')<![CDATA[<=]]> + DATE_FORMAT(#{endTime},'%Y%m%d') + </if> + <if test="userRank != null"> + AND rak.ur_name = #{userRank} + </if> + <if test="days != null"> <!-- 娉ㄥ唽鏃堕棿 --> + AND <![CDATA[DATE_SUB(CURDATE(), INTERVAL ${days} DAY) <= FROM_UNIXTIME(u.createtime/1000)]]> + </if> + + <if test="key != null and key !='' "> + <if test="keyType == 1"> + AND u.id = #{key} + </if> + <if test="keyType == 2"> + AND u.`nick_name` LIKE '%${key}%' + </if> + <if test="keyType == 3"> + AND u.`phone` = #{key} + </if> + <if test="keyType == 4"> + AND b.`account` = #{key} + </if> + </if> + </select> + + <select id="querySumMoney" resultType="java.lang.Double"> + SELECT COALESCE(sum(u.my_hongBao),0) FROM yeshi_ec_user u + LEFT JOIN + yeshi_ec_binding_account b ON u.`id` = b.`uid` + where <![CDATA[ 1>0 ]]> + <if test="key != null and key !='' "> + AND (u.id LIKE '%${key}%' OR u.`phone` LIKE '%${key}%' OR + u.`wxName` + LIKE '%${key}%' + OR u.`nick_name` LIKE '%${key}%' OR + u.`tbName` LIKE '%${key}%' OR + b.`account` LIKE '%${key}%') + </if> + <if test="startTime != null and startTime !='' "> + <![CDATA[ AND FROM_UNIXTIME(createtime/1000) >= '${startTime}' ]]> + </if> + <if test="endTime != null and endTime !=''"> + <![CDATA[ AND FROM_UNIXTIME(createtime/1000) < '${endTime}' ]]> + </if> + <if test="userType != null"> + AND u.rank = #{userType} + </if> + <if test="days != null"> + <!-- 鏃堕棿 --> + AND <![CDATA[DATE_SUB(CURDATE(), INTERVAL ${days} DAY) <= FROM_UNIXTIME(createtime/1000)]]> + </if> + </select> + + + <select id="countNewUser" resultType="java.lang.Long"> + SELECT COALESCE(count(id),0) FROM `yeshi_ec_user` + WHERE 1=1 + <if test="isToday != null and isToday == 1"> + AND TO_DAYS(FROM_UNIXTIME(createtime/1000)) = + TO_DAYS(NOW()) + </if> + <if test="isMonth != null and isMonth == 1"> + AND DATE_FORMAT( FROM_UNIXTIME(createtime/1000), '%Y%m' ) + = + DATE_FORMAT(CURDATE() , '%Y%m' ) + </if> + </select> + + <select id="countRank" resultType="java.lang.Long"> + <!-- 绛夌骇缁熻 --> + SELECT COALESCE(count(id),0) FROM `yeshi_ec_user` WHERE rank = #{rank} + </select> + + <select id="countAllMoney" resultType="java.math.BigDecimal"> + <!-- 閲戦缁熻 --> + SELECT CAST(SUM(my_hongBao)AS DECIMAL(19,2)) FROM `yeshi_ec_user` + WHERE 1=1 + <if test="minMoney != null"> + AND <![CDATA[ my_hongBao >= #{minMoney}]]> + </if> + </select> + + <select id="countShareAndInviteMoney" resultMap="BaseResultMap"> + SELECT IFNULL(SUM(h.`money`),0),h.`uid` FROM `yeshi_ec_hongbao` h + WHERE DATE_FORMAT(FROM_UNIXTIME(h.`createtime`/1000), '%Y-%m-%d' )= + '2018-08-02' + <![CDATA[AND h.state <>4]]> + AND ( h.`type` =5 OR h.`type` =6 OR h.`type` =7 OR h.`type` =20 OR + h.`type` =21 OR h.`type` =22 ) + GROUP BY h.`uid` + ORDER BY SUM(h.`money`) + DESC + LIMIT ${start},${count} + </select> + + <select id="longTimeNoLogin" resultType="java.lang.Long"> + + SELECT u.`id` FROM `yeshi_ec_user` u + WHERE u.`id` IN + <foreach item="item" collection="list" open="(" separator="," + close=")">#{item}</foreach> + AND <![CDATA[ (DATE_SUB(CURDATE(), INTERVAL ${daysNum} DAY) > DATE(FROM_UNIXTIME(u.`last_logintime`/1000)) + OR (u.`last_logintime` IS NULL + AND DATE_SUB(CURDATE(), INTERVAL ${daysNum} DAY) > DATE(FROM_UNIXTIME(u.`createTime`/1000)))) ]]> + </select> + + + <select id="countLoseUser" resultType="java.lang.Long"> + SELECT COUNT(DISTINCT t.`id` ) FROM `yeshi_ec_user` t + LEFT JOIN + `yeshi_ec_user_money_detail` d ON d.`umd_uid` = t.`id` + WHERE + DATE_SUB(CURDATE(), INTERVAL ${num} DAY)<![CDATA[> ]]> + DATE(FROM_UNIXTIME( t.`last_logintime`/1000)) + AND DATE_SUB(CURDATE(), + INTERVAL ${num} DAY) <![CDATA[> ]]> + DATE(d.`umd_createtime`) + </select> + + <select id="countHasOrderUser" resultType="java.lang.Long"> + SELECT COUNT(DISTINCT + h.`hb_uid`) FROM yeshi_ec_hongbao_v2 h + WHERE (h.`hb_type`=1 or + h.`hb_type`=2 or h.`hb_type`= 20) + </select> + + + <select id="countNewUserByDate" resultMap="ChartMap"> + SELECT COUNT(DISTINCT h.`id`) AS showValue, + <if test="type == 1"> + FROM_UNIXTIME(h.`createtime`/1000,'%Y-%m-%d') AS + 'showDate' + </if> + <if test="type == 2"> + FROM_UNIXTIME(h.`createtime`/1000,'%m') AS 'showDate' + </if> + <if test="type == 3"> + FROM_UNIXTIME(h.`createtime`/1000,'%Y') AS 'showDate' + </if> + FROM yeshi_ec_user h + <if test="channel != null and channel != 'all' "> + left join (SELECT a.`lua_uid` AS uid FROM + `yeshi_ec_log_user_active` a + WHERE a.`lua_channel`='${channel}' GROUP + BY a.`lua_uid`)a ON + h.`id`=a.uid + </if> + WHERE 1=1 + <if test="channel != null and channel != 'all' "> + AND a.uid is not null + </if> + <if test="startTime != null and startTime != '' "> + AND FROM_UNIXTIME(h.`createtime`/1000,'%Y-%m-%d')<![CDATA[ >= ]]>'${startTime}' + </if> + <if test="endTime != null and endTime != '' "> + AND FROM_UNIXTIME(h.`createtime`/1000,'%Y-%m-%d') <![CDATA[ <= ]]> + '${endTime}' + </if> + <if test="years != null and years != '' "> + AND FROM_UNIXTIME(h.`createtime`/1000,'%Y') = '${years}' + </if> + <if test="type == 1"> + GROUP BY FROM_UNIXTIME(h.`createtime`/1000,'%Y-%m-%d') + </if> + <if test="type == 2"> + GROUP BY FROM_UNIXTIME(h.`createtime`/1000,'%Y-%m') + </if> + <if test="type == 3"> + GROUP BY FROM_UNIXTIME(h.`createtime`/1000,'%Y') + </if> + ORDER BY h.`createtime` + </select> + + <select id="getTodayHasOrder" resultMap="ChartMap"> + SELECT COALESCE(COUNT(DISTINCT u.`id`),0) AS 'showValue', + <if test="type == 1"> + FROM_UNIXTIME(u.`createtime`/1000,'%Y-%m-%d') AS + 'showDate' + </if> + <if test="type == 2"> + FROM_UNIXTIME(u.`createtime`/1000,'%m') AS 'showDate' + </if> + <if test="type == 3"> + FROM_UNIXTIME(u.`createtime`/1000,'%Y') AS 'showDate' + </if> + + FROM yeshi_ec_user u + <if test="channel != null and channel != 'all' "> + LEFT JOIN (SELECT a.`lua_uid` AS uid FROM + `yeshi_ec_log_user_active` a + WHERE a.`lua_channel`='${channel}' GROUP + BY a.`lua_uid`) a ON u.`id`=a.uid + </if> + LEFT JOIN `yeshi_ec_hongbao_v2` h ON h.`hb_uid`= u.`id` + WHERE + (h.`hb_type`=1 OR h.`hb_type`=20) + <if test="channel != null and channel != 'all' "> + AND a.uid is not null + </if> + <!-- 褰撴棩涓嬪崟 --> + AND FROM_UNIXTIME(u.`createtime`/1000,'%Y-%m-%d') = + DATE_FORMAT(h.hb_create_time,'%Y-%m-%d') + + <if test="startTime != null and startTime != '' "> + AND FROM_UNIXTIME(u.`createtime`/1000,'%Y-%m-%d')<![CDATA[ >= ]]>'${startTime}' + </if> + <if test="endTime != null and endTime != '' "> + AND FROM_UNIXTIME(u.`createtime`/1000,'%Y-%m-%d') <![CDATA[ <= ]]> + '${endTime}' + </if> + <if test="years != null and years != '' "> + AND FROM_UNIXTIME(u.`createtime`/1000,'%Y') = '${years}' + </if> + <if test="type == 1"> + GROUP BY FROM_UNIXTIME(u.`createtime`/1000,'%Y-%m-%d') + </if> + <if test="type == 2"> + GROUP BY FROM_UNIXTIME(u.`createtime`/1000,'%Y-%m') + </if> + <if test="type == 3"> + GROUP BY FROM_UNIXTIME(u.`createtime`/1000,'%Y') + </if> + ORDER BY u.`createtime` + </select> + + + + <select id="getWeekHasOrder" resultMap="ChartMap"> + SELECT COUNT(DISTINCT hb.uid) AS + showValue,FROM_UNIXTIME(u.`createtime`/1000,'%Y-%m-%d') AS 'showDate' + FROM (SELECT COUNT(v2.`hb_id`) AS num,v2.hb_uid AS uid + FROM + yeshi_ec_hongbao_v2 v2 + WHERE (v2.`hb_type`=1 OR v2.`hb_type`=20) + AND + DATE_FORMAT(v2.`hb_create_time`,'%Y-%m-%d') <![CDATA[ >= ]]>'${startTime}' + AND DATE_FORMAT(v2.`hb_create_time`,'%Y-%m-%d') <![CDATA[ <= ]]>'${endTime}' + GROUP BY v2.hb_uid HAVING num >= ${orderNum})hb + LEFT JOIN yeshi_ec_user + u ON u.id = hb.uid + <if test="channel != null and channel != 'all' "> + LEFT JOIN (SELECT a.`lua_uid` AS uid FROM + `yeshi_ec_log_user_active` a + WHERE a.`lua_channel`='${channel}' GROUP + BY a.`lua_uid`) a ON u.`id`=a.uid + </if> + WHERE FROM_UNIXTIME(u.`createtime`/1000,'%Y-%m-%d') = '${startTime}' + <if test="channel != null and channel != 'all' "> + AND a.uid is not null + </if> + GROUP BY FROM_UNIXTIME(u.`createtime`/1000,'%Y-%m-%d') + ORDER BY + u.`createtime` + </select> + + <select id="getUserInfoByInviteCode" resultMap="BaseResultMap"> + SELECT * FROM + yeshi_ec_user u + LEFT JOIN yeshi_ec_user_info_extra uf ON uf.`uie_uid` = + u.`id` + WHERE uf.`uie_invite_code_vip` = #{inviteCode} OR + uf.`uie_invite_code` = #{inviteCode} + LIMIT 1 + </select> + + + <select id="countAvaiableUser" resultType="java.lang.Long"> + SELECT count(*) FROM + yeshi_ec_user u + where u.state=0 + </select> + + <select id="getAutoExtractUser" resultMap="BaseResultMap"> + SELECT u.* FROM `yeshi_ec_user_info_extra` t + LEFT JOIN `yeshi_ec_user` + u ON u.`id` = t.`uie_uid` + WHERE t.`uie_auto_extract` = 1 AND + t.uie_active_time <![CDATA[>=]]> + #{beganDate} AND t.uie_active_time <![CDATA[<]]> + #{endDate} + AND (t.`uie_mark` IS NULL OR t.`uie_mark` = '') + AND u.`state` + = 0 AND u.`my_hongBao` <![CDATA[>=]]> + #{money} + AND u.`wx_open_id` IS NOT NULL AND + LENGTH(TRIM(u.`wx_open_id`)) <![CDATA[>]]> + 0 + AND u.`wx_open_id` NOT LIKE 'o_b9%' + LIMIT #{start},#{count} + </select> + + <select id="getAutoExtractUserTo1212" resultMap="BaseResultMap"> + SELECT u.* FROM (SELECT v2.`hb_uid` FROM `yeshi_ec_hongbao_v2` v2 + WHERE <![CDATA[v2.`hb_create_time` > '2019-01-01' AND v2.`hb_create_time` < '2019-06-18']]> + GROUP BY hb_uid)h + LEFT JOIN `yeshi_ec_user_info_extra` t ON t.`uie_uid` + = h.hb_uid + LEFT JOIN `yeshi_ec_user` u ON u.`id` = t.`uie_uid` + WHERE <![CDATA[ t.uie_active_time < '2019-06-19']]> + AND (t.`uie_mark` IS NULL OR t.`uie_mark` = '') + AND u.`state` = 0 AND + u.`my_hongBao`<![CDATA[> 1]]> + AND u.`wx_open_id` IS NOT NULL AND <![CDATA[LENGTH(TRIM(u.`wx_open_id`)) > 0]]> + AND u.`wx_open_id` NOT LIKE 'o_b9%' + LIMIT #{start},#{count} + </select> + + + <select id="listByType" resultMap="BaseResultMap"> + select * from yeshi_ec_user u + where u.type=#{type} limit #{start},#{count} + </select> + + <select id="countByType" resultType="java.lang.Long" + parameterType="java.lang.Integer"> + select count(*) from + yeshi_ec_user u where u.type=#{0} + </select> + +</mapper> -- Gitblit v1.8.0