StatisticsIncomeMapper.xml 3.69 KB
<?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.bjivt.entity.showtime.StatisticsIncome">

   <!-- 统计注册人数 总数变化情况-->  
  <select id="statisticsIncomeList"  parameterType="java.util.Map" resultType="com.bjivt.entity.vo.StatisticsIncome">
    <if test="types==0 or types==1" >
		 select date_format(time,'%Y-%m-%d') time, sum(recharge) as recharge, sum(withdraw) as withdraw from (
		select date_format(ls.date,'%Y-%m-%d') time,sum(ls.recharge) recharge, 0 as withdraw
		 from db_showtime_stat.tbl_user_recharge_statistics ls
		 where  <![CDATA[date_format(ls.date,'%Y-%m-%d') >= str_to_date(#{startTime},'%Y-%m-%d') ]]>
		 <![CDATA[and date_format(ls.date,'%Y-%m-%d') <= str_to_date(#{endTime},'%Y-%m-%d')]]>
		group by time
		 union
		  select date_format(ls.date,'%Y-%m-%d') time,0 as recharge,sum(ls.withdraw) withdraw from db_showtime_stat.tbl_user_withdraw_statistics ls
		 where <![CDATA[ date_format(ls.date,'%Y-%m-%d') >= str_to_date(#{startTime},'%Y-%m-%d')]]>
		 <![CDATA[and date_format(ls.date,'%Y-%m-%d') <= str_to_date(#{endTime},'%Y-%m-%d')]]>
		group by time) as tbl
		group by time

   </if>
    <if test="types==2">
		 select time, sum(recharge) as recharge, sum(withdraw) as withdraw from (
		select date_format(ls.date,'%Y年第%u周') time,sum(ls.recharge) recharge, 0 as withdraw
		 from db_showtime_stat.tbl_user_recharge_statistics ls
		 where  <![CDATA[date_format(ls.date,'%Y-%m-%d') >= str_to_date(#{startTime},'%Y-%m-%d') ]]>
		 <![CDATA[and date_format(ls.date,'%Y-%m-%d') <= str_to_date(#{endTime},'%Y-%m-%d')]]>
		group by time
		 union
		  select date_format(ls.date,'%Y年第%u周') time,0 as recharge,sum(ls.withdraw) withdraw from db_showtime_stat.tbl_user_withdraw_statistics ls
		 where <![CDATA[ date_format(ls.date,'%Y-%m-%d') >= str_to_date(#{startTime},'%Y-%m-%d')]]>
		 <![CDATA[and date_format(ls.date,'%Y-%m-%d') <= str_to_date(#{endTime},'%Y-%m-%d')]]>
		group by time) as tbl
		group by time
    
    </if>
    <if test="types==3">
		 select time, sum(recharge) as recharge, sum(withdraw) as withdraw from (
		select date_format(ls.date,'%Y年%m月') time,sum(ls.recharge) recharge, 0 as withdraw
		 from db_showtime_stat.tbl_user_recharge_statistics ls
		 where  <![CDATA[date_format(ls.date,'%Y-%m-%d') >= str_to_date(#{startTime},'%Y-%m-%d') ]]>
		 <![CDATA[and date_format(ls.date,'%Y-%m-%d') <= str_to_date(#{endTime},'%Y-%m-%d')]]>
		group by time
		 union
		  select date_format(ls.date,'%Y年%m月') time,0 as recharge,sum(ls.withdraw) withdraw from db_showtime_stat.tbl_user_withdraw_statistics ls
		 where <![CDATA[ date_format(ls.date,'%Y-%m-%d') >= str_to_date(#{startTime},'%Y-%m-%d')]]>
		 <![CDATA[and date_format(ls.date,'%Y-%m-%d') <= str_to_date(#{endTime},'%Y-%m-%d')]]>
		group by time) as tbl
		group by time
    </if>
    <if test="types==4">
		 select time, sum(recharge) as recharge, sum(withdraw) as withdraw from (
		select date_format(ls.date,'%Y年') time,sum(ls.recharge) recharge, 0 as withdraw
		 from db_showtime_stat.tbl_user_recharge_statistics ls
		 where  <![CDATA[date_format(ls.date,'%Y-%m-%d') >= str_to_date(#{startTime},'%Y-%m-%d') ]]>
		 <![CDATA[and date_format(ls.date,'%Y-%m-%d') <= str_to_date(#{endTime},'%Y-%m-%d')]]>
		group by time
		 union
		  select date_format(ls.date,'%Y年') time,0 as recharge,sum(ls.withdraw) withdraw from db_showtime_stat.tbl_user_withdraw_statistics ls
		 where <![CDATA[ date_format(ls.date,'%Y-%m-%d') >= str_to_date(#{startTime},'%Y-%m-%d')]]>
		 <![CDATA[and date_format(ls.date,'%Y-%m-%d') <= str_to_date(#{endTime},'%Y-%m-%d')]]>
		group by time) as tbl
		group by time
    </if>
 </select>  
</mapper>