| | |
| | | </select> |
| | | |
| | | |
| | | <select id="selectVipConsumeStatisticsList" resultMap="AchieveNewMap"> |
| | | <select id="selectVipConsumeStatisticsList" resultType="java.util.HashMap"> |
| | | select |
| | | a.VIP_NAME, |
| | | a.VIP_NAME vipName, |
| | | a.PHONE t9, |
| | | GROUP_CONCAT(DISTINCT e.su_name) meiliao, |
| | | d.cnt arrive_cnt, |
| | | sum(b.buyConsume) goods_cash, |
| | | sum(b.freeConsume) free_consume, |
| | | sum(b.hisConsume) his_consume |
| | | b.su_name meiliao, |
| | | (SELECT sum(IFNULL(goods_cash,0)) from achieve_new where pay_method='现金' and VIP_ID=a.id |
| | | <if test="record.beginTime != null"> and date_format(datatime, '%Y-%m-%d') >= date_format(#{record.beginTime}, '%Y-%m-%d') </if> |
| | | <if test="record.endTime != null"> <![CDATA[ and date_format(datatime, '%Y-%m-%d') < date_format(#{record.endTime}, '%Y-%m-%d') ]]> </if> ) as 'goodsCash' , |
| | | (SELECT sum(IFNULL(goods_cash,0)) from achieve_new where pay_method='划扣' and VIP_ID=a.id |
| | | <if test="record.beginTime != null"> and date_format(datatime, '%Y-%m-%d') >= date_format(#{record.beginTime}, '%Y-%m-%d') </if> |
| | | <if test="record.endTime != null"> <![CDATA[ and date_format(datatime, '%Y-%m-%d') < date_format(#{record.endTime}, '%Y-%m-%d') ]]> </if>) as 'cardCash' , |
| | | (SELECT sum(IFNULL(free_consume,0)) from achieve_new where VIP_ID=a.id |
| | | <if test="record.beginTime != null"> and date_format(datatime, '%Y-%m-%d') >= date_format(#{record.beginTime}, '%Y-%m-%d') </if> |
| | | <if test="record.endTime != null"> <![CDATA[ and date_format(datatime, '%Y-%m-%d') < date_format(#{record.endTime}, '%Y-%m-%d') ]]> </if> ) as 'freeConsume' , |
| | | (SELECT sum(IFNULL(number_of_people,0)) from achieve_new where VIP_ID=a.id |
| | | <if test="record.beginTime != null"> and date_format(datatime, '%Y-%m-%d') >= date_format(#{record.beginTime}, '%Y-%m-%d') </if> |
| | | <if test="record.endTime != null"> <![CDATA[ and date_format(datatime, '%Y-%m-%d') < date_format(#{record.endTime}, '%Y-%m-%d') ]]> </if> ) as 'arriveCnt' , |
| | | (SELECT sum(IFNULL(his_consume,0)) from achieve_new where VIP_ID=a.id |
| | | <if test="record.beginTime != null"> and date_format(datatime, '%Y-%m-%d') >= date_format(#{record.beginTime}, '%Y-%m-%d') </if> |
| | | <if test="record.endTime != null"> <![CDATA[ and date_format(datatime, '%Y-%m-%d') < date_format(#{record.endTime}, '%Y-%m-%d') ]]> </if> ) as 'hisConsume' |
| | | from sys_vip_info a |
| | | inner join ( |
| | | select vip_id,datatime, sum(a.free_consume) freeConsume, sum(a.his_consume) hisConsume, sum(IFNULL(goods_cash, 0) )) buyConsume from achieve_new a group by vip_id |
| | | ) b on a.ID = b.vip_id |
| | | inner join ( |
| | | select vip_id, count(1) cnt from ( |
| | | select vip_id, date_format(datatime, '%Y-%m-%d') |
| | | from achieve_new |
| | | group by date_format(datatime, '%Y-%m-%d'), vip_id |
| | | ) c group by vip_id |
| | | ) d on a.ID=d.vip_id |
| | | left join sys_users b on a.BEATUY_ID=b.su_id |
| | | inner join sys_shop_info c on c.id=a.SHOP_ID |
| | | <where> |
| | | |
| | | left join sys_users e on find_in_set(e.su_id, a.BEATUY_ID) |
| | | where 1=1 |
| | | <if test="record.vipName != null and record.vipName !=''"> |
| | | and (a.vip_name like CONCAT(CONCAT('%', #{record.vipName}), '%') or a.vip_no=#{record.vipName} or a.phone = #{record.vipName}) |
| | | </if> |
| | | <if test="record.shopId != null"> |
| | | and a.shop_id=#{record.shopId} |
| | | </if> |
| | | <if test="record.beginTime != null"> |
| | | and date_format(b.datatime, '%Y-%m-%d') >= date_format(#{record.beginTime}, '%Y-%m-%d') |
| | | </if> |
| | | <if test="record.endTime!=null"> |
| | | and date_format(b.datatime, '%Y-%m-%d') >= date_format(#{record.endTime}, '%Y-%m-%d') |
| | | </if> |
| | | <if test="record.beaultId != null and record.beaultId!=''"> |
| | | and FIND_IN_SET(#{record.beaultId}, a.BEATUY_ID) |
| | |
| | | <if test='record.t1 == "on"'> |
| | | and a.BEATUY_ID is not null |
| | | </if> |
| | | group by a.PHONE |
| | | </where> |
| | | <if test="pageVo !=null"><!-- 判断pageVo对象是否为空 --> |
| | | <if test="pageVo.sort !=null and pageVo.order !=null"> |
| | | order by |
| | |
| | | <select id="selectVipConsumeStatisticsTotal" resultType="java.lang.Integer"> |
| | | select count(1) |
| | | from sys_vip_info a |
| | | inner join ( |
| | | select vip_id,datatime, sum(a.free_consume) freeConsume, sum(a.his_consume) hisConsume, sum(IFNULL(goods_cash, 0) ) buyConsume from achieve_new a group by vip_id |
| | | ) b on a.ID = b.vip_id |
| | | inner join ( |
| | | select vip_id, count(1) cnt from ( |
| | | select vip_id, date_format(datatime, '%Y-%m-%d') |
| | | from achieve_new |
| | | group by date_format(datatime, '%Y-%m-%d'), vip_id |
| | | ) c group by vip_id |
| | | ) d on a.ID=d.vip_id |
| | | left join sys_users b on a.BEATUY_ID=b.su_id |
| | | inner join sys_shop_info c on c.id=a.SHOP_ID |
| | | <where> |
| | | |
| | | left join sys_users e on find_in_set(e.su_id, a.BEATUY_ID) |
| | | where 1=1 |
| | | <if test="record.vipName != null and record.vipName !=''"> |
| | | and (a.vip_name like CONCAT(CONCAT('%', #{record.vipName}), '%') or a.vip_no=#{record.vipName} or a.phone = #{record.vipName}) |
| | | </if> |
| | | <if test="record.shopId != null"> |
| | | and a.shop_id=#{record.shopId} |
| | | </if> |
| | | <if test="record.beginTime != null"> |
| | | and date_format(b.datatime, '%Y-%m-%d') >= date_format(#{record.beginTime}, '%Y-%m-%d') |
| | | </if> |
| | | <if test="record.endTime!=null"> |
| | | and date_format(b.datatime, '%Y-%m-%d') >= date_format(#{record.endTime}, '%Y-%m-%d') |
| | | </if> |
| | | <if test="record.beaultId != null and record.beaultId!=''"> |
| | | and FIND_IN_SET(#{record.beaultId}, a.BEATUY_ID) |
| | |
| | | <if test='record.t1 == "on"'> |
| | | and a.BEATUY_ID is not null |
| | | </if> |
| | | </where> |
| | | </select> |
| | | |
| | | |