From b8d50f6ad9d1ab407e5b2a6867cf47bc4640a43c Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Mon, 12 Apr 2021 18:11:55 +0800 Subject: [PATCH] modify taocanlist api --- zq-erp/src/main/resources/mybatis/mapper/hive/SysVipInfoDao.xml | 292 ++++++++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 240 insertions(+), 52 deletions(-) diff --git a/zq-erp/src/main/resources/mybatis/mapper/hive/SysVipInfoDao.xml b/zq-erp/src/main/resources/mybatis/mapper/hive/SysVipInfoDao.xml index 0a9189e..9437453 100644 --- a/zq-erp/src/main/resources/mybatis/mapper/hive/SysVipInfoDao.xml +++ b/zq-erp/src/main/resources/mybatis/mapper/hive/SysVipInfoDao.xml @@ -35,6 +35,10 @@ <result property="disease" column="disease"/> <result property="zjm" column="zjm"/> <result property="companyId" column="company_id"/> + <result property="province" column="province"/> + <result property="city" column="city"/> + <result property="area" column="area"/> + <result property="recommendId" column="recommend_id"/> <result property="statu" column="statu"/> <result property="birthdayType" column="birthdayType"/> @@ -48,6 +52,15 @@ <result property="isDeal" column="is_deal"/> <result property="createDistributionTime" column="create_distribution_time"/> + <result property="isSales" column="is_sales" /> + <result property="withdrawalCash" column="withdrawal_cash" /> + <result property="salesmanGrade" column="salesman_grade" /> + <result property="nickName" column="nick_name" /> + <result property="avatarUrl" column="avatar_url" /> + <result property="gender" column="gender" /> + <result property="country" column="country" /> + <result property="sessionKey" column="session_key" /> + <result property="userIsAuthorize" column="user_is_authorize" /> <!-- 扩展属性 --> <result property="staffName" column="STAFF_NAME"/> @@ -101,9 +114,24 @@ <result property="createDistributionTime" column="create_distribution_time"/> <result property="disease" column="disease"/> <result property="companyId" column="company_id"/> + + <result property="isSales" column="is_sales" /> + <result property="withdrawalCash" column="withdrawal_cash" /> + <result property="salesmanGrade" column="salesman_grade" /> + <result property="nickName" column="nick_name" /> + <result property="avatarUrl" column="avatar_url" /> + <result property="gender" column="gender" /> + <result property="country" column="country" /> + <result property="sessionKey" column="session_key" /> + <result property="userIsAuthorize" column="user_is_authorize" /> + <!-- 扩展属性 --> <result property="staffName" column="STAFF_NAME"/> <result property="shopName" column="SHOP_NAME"/> + <association property="vipLevel" javaType="com.matrix.system.hive.bean.SysVipLevel" > + <result property="levelName" column="levelName"/> + <result property="vipLevel" column="vipLevel"/> + </association> </resultMap> <!-- 查询几天内过生日的会员 --> @@ -274,7 +302,20 @@ disease, is_deal, zjm, - company_id + company_id, + province, + city, + area, + recommend_id, + is_sales, + withdrawal_cash, + salesman_grade, + nick_name, + avatar_url, + gender, + country, + session_key, + user_is_authorize ) @@ -318,7 +359,20 @@ #{disease}, #{isDeal}, #{zjm}, - #{companyId} + #{companyId}, + #{province}, + #{city}, + #{area}, + #{recommendId}, + #{isSales}, + #{withdrawalCash}, + #{salesmanGrade}, + #{nickName}, + #{avatarUrl}, + #{gender}, + #{country}, + #{sessionKey}, + #{userIsAuthorize} ) </insert> @@ -445,6 +499,46 @@ <if test="isDeal != null "> is_deal = #{isDeal}, </if> + <if test="recommendId != null "> + recommend_id = #{recommendId}, + </if> + <if test="province != null and province !='' "> + province = #{province}, + </if> + <if test="city != null and city !='' "> + city = #{city}, + </if> + <if test="area != null and area !='' "> + area = #{area}, + </if> + <if test="isSales != null "> + is_sales = #{isSales}, + </if> + <if test="withdrawalCash != null "> + withdrawal_cash = #{withdrawalCash}, + </if> + <if test="salesmanGrade != null "> + salesman_grade = #{salesmanGrade}, + </if> + + <if test="gender != null and gender != '' "> + gender = #{gender}, + </if> + <if test="country != null and country != '' "> + country = #{country}, + </if> + <if test="sessionKey != null and sessionKey != '' "> + session_key = #{sessionKey}, + </if> + <if test="userIsAuthorize != null "> + user_is_authorize = #{userIsAuthorize}, + </if> + <if test="nickName != null and nickName != '' "> + nick_name = #{nickName}, + </if> + <if test="avatarUrl != null and avatarUrl != '' "> + avatar_url = #{avatarUrl}, + </if> </set> @@ -454,6 +548,10 @@ <update id="pointClose"> UPDATE sys_vip_info set POINT_ALL = 0 </update> + + <update id="unbundlingSaleMan"> + UPDATE sys_vip_info set recommend_id = NULL where id=#{userId}; + </update> <!-- 批量删除 --> <delete id="deleteByIds" parameterType="java.util.List"> @@ -508,6 +606,11 @@ <include refid="select"></include> <include refid="from"></include> where a.ID=#{id} + </select> + + <select id="findByOpenId" resultMap="SysVipInfoMap"> + select * + from sys_vip_info where openid=#{openId} </select> <!-- 根据手机和密码查询 --> @@ -612,14 +715,11 @@ COMMISSION_ALL,IN_DATE,STAFF_ID,SHOP_ID,IS_DELETE,REMARK,PASSWORD, EMAIL,CREATE_TIME,UUID,BALANCE,blood,sfCard,link,marry,vocation from sys_vip_info - where - SHOP_ID=#{shopId} - and ( - instr(PHONE,#{keyWord}) + where company_id=#{companyId} + and (instr(PHONE,#{keyWord}) or instr(VIP_NAME ,#{keyWord}) or instr(zjm ,#{keyWord}) - or instr(VIP_NO ,#{keyWord}) - ) + or instr(VIP_NO ,#{keyWord})) limit 0,15 </select> @@ -644,7 +744,7 @@ and (a.VIP_NO =#{key} or a.VIP_NAME =#{key} or - a.PHONE =#{key}) and a.shop_id=#{shopId} + a.PHONE =#{key}) </select> <select id="getLevelIdByMoney" resultMap="SysVipInfoMap"> @@ -786,6 +886,28 @@ <if test="(record.companyId!=null and record.companyId!='') "> and a.company_id = #{record.companyId} </if> + + <if test="(record.nickName!=null and record.nickName!='') or (record.nickName!='' and record.nickName==0) "> + and a.nick_name like concat('%',#{record.nickName},'%') + </if> + <if test="(record.avatarUrl!=null and record.avatarUrl!='') or (record.avatarUrl!='' and record.avatarUrl==0) "> + and a.avatar_url = #{record.avatarUrl} + </if> + <if test="record.isSales != null and record.isSales !='' "> + and a.is_sales = #{record.isSales} + </if> + + <if test="record.withdrawalCash != null and record.withdrawalCash !='' "> + and a.withdrawal_cash = #{record.withdrawalCash} + </if> + + <if test="record.salesmanGrade != null and record.salesmanGrade !='' "> + and a.salesman_grade = #{record.salesmanGrade} + </if> + <if test="(record.userIsAuthorize!=null and record.userIsAuthorize!='') or (record.userIsAuthorize!='' and record.userIsAuthorize==0) "> + and a.user_is_authorize = #{record.userIsAuthorize} + </if> + </if> </sql> @@ -891,58 +1013,42 @@ <if test="record.isDeal != null and record.isDeal !='' "> and a.is_deal = #{record.isDeal} </if> + <if test="(record.nickName!=null and record.nickName!='') or (record.nickName!='' and record.nickName==0) "> + and a.nick_name like concat('%',#{record.nickName},'%') + </if> + <if test="(record.avatarUrl!=null and record.avatarUrl!='') or (record.avatarUrl!='' and record.avatarUrl==0) "> + and a.avatar_url = #{record.avatarUrl} + </if> + <if test="record.isSales != null and record.isSales !='' "> + and a.is_sales = #{record.isSales} + </if> + + <if test="record.withdrawalCash != null and record.withdrawalCash !='' "> + and a.withdrawal_cash = #{record.withdrawalCash} + </if> + + <if test="record.salesmanGrade != null and record.salesmanGrade !='' "> + and a.salesman_grade = #{record.salesmanGrade} + </if> + <if test="(record.userIsAuthorize!=null and record.userIsAuthorize!='') or (record.userIsAuthorize!='' and record.userIsAuthorize==0) "> + and a.user_is_authorize = #{record.userIsAuthorize} + </if> </if> </sql> <sql id="select"> select - a.ID, - a.VIP_NO, - a.VIP_NAME, - a.PHONE, - a.SEX, - a.BIRTHDAY1, - a.photo, - a.ADDR, - a.CONSTELL, - a.ANIMAL_SIGN, - a.ARRIVAL_WAY, - a.VIP_TYPE, - a.VIP_STATE, - a.POINT_ALL, - a.COMMISSION_ALL, - a.IN_DATE, - a.REMARK, - a.SHOP_ID, - a.IS_DELETE, - a.EMAIL, - a.STAFF_ID, - a.CREATE_TIME, - a.LEVEL_ID, - a.UUID, - a.BALANCE, - a.BEATUY_ID, - a.PASSWORD, + a.*, c.su_name as STAFF_NAME, d.SHOP_NAME, - a.blood, - a.sfCard, - a.link, - a.marry, - a.vocation, - a.handle_time, - a.statu, - a.openid, - a.parent_id, - a.create_distribution_time, - a.birthdayType, - a.disease, - a.is_deal + e.level_name levelName, + e.vip_level vipLevel </sql> <sql id="from"> from sys_vip_info a left join sys_users c on c.su_id =a.STAFF_ID left join sys_shop_info d ON d.ID=a.SHOP_ID + left join sys_vip_level e on a.level_id=e.id </sql> @@ -1171,7 +1277,22 @@ create_distribution_time, birthdayType, disease, - is_deal + is_deal, + zjm, + company_id, + province, + city, + area, + recommend_id, + is_sales, + withdrawal_cash, + salesman_grade, + nick_name, + avatar_url, + gender, + country, + session_key, + user_is_authorize ) VALUES <foreach collection="list" item="item" index="index" separator=",">( @@ -1212,7 +1333,22 @@ #{item.createDistributionTime}, #{item.birthdayType}, #{item.disease}, - #{item.isDeal} + #{item.isDeal}, + #{zjm}, + #{companyId}, + #{province}, + #{city}, + #{area}, + #{recommendId}, + #{isSales}, + #{withdrawalCash}, + #{salesmanGrade}, + #{nickName}, + #{avatarUrl}, + #{gender}, + #{country}, + #{sessionKey}, + #{userIsAuthorize} )</foreach> </insert> @@ -1226,7 +1362,9 @@ a.VIP_NAME vipName, a.PHONE phone, a.photo photo, - b.arriveCnt arriveCnt + b.arriveCnt arriveCnt, + g.shop_short_name shopName, + z.level_name vipLevel from sys_vip_info a left join ( select x.vip_id, count(1) arriveCnt from ( @@ -1244,6 +1382,7 @@ group by date_format(datatime, '%Y-%m-%d'), vip_id ) x group by x.vip_id ) b on a.ID=b.vip_id + left join sys_vip_level z on a.level_id=z.id <!-- 本月消费 --> <if test="record.sort == 'used'"> left join ( @@ -1268,6 +1407,8 @@ select n.VIP_LEVEL vipLevel, n.ID from sys_vip_level n ) f on a.LEVEL_ID = f.ID </if> + left join sys_shop_info g on a.shop_id = g.id + left join sys_vip_level h on a.level_id=h.id where 1=1 <if test="record.queryKey != null and record.queryKey != ''"> and (instr(PHONE,#{record.queryKey}) @@ -1278,6 +1419,24 @@ <if test="record.shopId != null"> and a.shop_id=#{record.shopId} </if> + <if test="record.companyId != null"> + and a.company_id=#{record.companyId} + </if> + <if test='record.birthType=="1"'> + and a.BIRTHDAY1 between curdate() and DATE_ADD(CURDATE(), INTERVAL 3 DAY) + </if> + <if test='record.birthType=="2"'> + and date_format(a.BIRTHDAY1, '%Y-%m') = date_format(CURDATE(), '%Y-%m') + </if> + <if test='record.birthType=="3"'> + and PERIOD_DIFF(date_format(now() ,'%Y-%m') , date_format(a.BIRTHDAY1, '%Y-%m')) =1 + </if> + <if test="record.vipType != null"> + and a.level_id=#{record.vipType} + </if> + <if test="record.other != null and record.other!=''"> + and a.is_deal=#{record.other} + </if> <if test="record.sort == 'monthArrived' or record.sort == 'yearArrived'"> order by arriveCnt ${record.order} @@ -1285,6 +1444,35 @@ <if test="record.sort != 'monthArrived' and record.sort != 'yearArrived'"> order by ${record.sort} ${record.order} </if> + <if test="record.offset >=0 and record.limit >0"> + limit #{record.offset},#{record.limit} + </if> </select> + + <select id="selectVipInfoById" resultType="com.matrix.system.app.vo.VipInfoVo"> + select + a.ID id, + a.photo photo, + a.PHONE phone, + a.VIP_NAME vipName, + a.VIP_NO vipNo, + c.LEVEL_NAME vipLevel, + a.POINT_ALL integral, + e.shop_short_name shopName, + sum(IFNULL(b.gift_money, 0) + IFNULL(b.real_money, 0)) totalBalance, + sum(IFNULL(b.gift_money, 0)) giftBalance, + (select sum(IFNULL(d.goods_cash, 0) + IFNULL(d.proj_cash, 0) + IFNULL(d.card_cash, 0)) from achieve_new d where d.vip_id=a.id) totalShopping + from sys_vip_info a + left join money_card_use b on a.ID = b.vip_id and b.status='有效' + left join sys_vip_level c on a.LEVEL_ID = c.ID + left join sys_shop_info e on a.SHOP_ID=e.ID + where a.ID=#{id} + </select> + + + + + + </mapper> -- Gitblit v1.9.1