|
|
<?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.example.demo.mapper.live.LiveMapper">
<select id="selectLiveBy" resultType="com.example.demo.domain.vo.bean.BeanConsumeLive"> select lgg.id as id, mi.name as name, lgg.jwcode as jwcode, mi.deptName as dept, lg.name as gift, lgg.gold_beans as beanNum, lgg.gold_free as freeBean, lgg.gold_buy as buyBean, lp.title as liveChannel, l.name as liveName, lgg.created_at as consumeTime FROM live_give_gifts lgg LEFT JOIN live_gifts lg ON lg.id = lgg.g_id LEFT JOIN live l ON l.id = lgg.live_id LEFT JOIN live_pindao lp ON lp.pd_id = l.channel_id LEFT JOIN member_info mi ON mi.jwcode = lgg.jwcode <where> <if test="beanConsumeLive.jwcode != null and beanConsumeLive.jwcode != ''"> AND lgg.jwcode = #{beanConsumeLive.jwcode} </if> <if test="beanConsumeLive.dept != null and beanConsumeLive.dept != ''"> AND mi.deptName = #{beanConsumeLive.dept} </if> <!-- <if test="beanConsumeLive.type != null and beanConsumeLive.type != ''">
AND fyr.source_type = #{beanConsumeLive.type} </if>--> <if test="beanConsumeLive.startTime != null and beanConsumeLive.endTime != null"> AND lgg.created_at BETWEEN #{beanConsumeLive.startTime} AND #{beanConsumeLive.endTime} </if> <if test="beanConsumeLive.gift != null and beanConsumeLive.gift != ''"> AND lg.name =#{beanConsumeLive.gift} </if> <if test="beanConsumeLive.liveChannel != null and beanConsumeLive.liveChannel != ''"> AND lp.title = #{beanConsumeLive.liveChannel} </if> <if test="beanConsumeLive.liveName != null and beanConsumeLive.liveName != ''"> AND l.name LIKE CONCAT('%', #{beanConsumeLive.liveName}, '%') </if> </where>
<choose> <when test="beanConsumeLive.sortField != null and beanConsumeLive.sortField != '' and beanConsumeLive.sortOrder != null and beanConsumeLive.sortOrder != ''"> ORDER BY ${beanConsumeLive.sortField} ${beanConsumeLive.sortOrder} </when> <otherwise> ORDER BY consumeTime DESC </otherwise> </choose> </select> <!--获取直播礼物列表--> <select id="getLiveGift" resultType="java.lang.String"> select distinct name from live_gifts </select> <!--获取直播频道列表--> <select id="getLiveChannel" resultType="java.lang.String"> select distinct title from live_pindao </select> <!--计算直播消费金豆合计数--> <select id="selectSumLiveBy" resultType="com.example.demo.domain.vo.bean.BeanConsumeGold"> select ifnull(sum(t.beanNum),0) as sunBeam, ifnull(sum(t.freeBean),0) as freeBean, ifnull(sum(t.buyBean),0) as permanentBean, count(*) as totalNum from (select mi.name as name, lgg.jwcode as jwcode, mi.deptName as dept, lg.name as gift, lgg.gold_beans as beanNum, lgg.gold_free as freeBean, lgg.gold_buy as buyBean, lp.title as liveChannel, l.name as liveName, lgg.created_at as consumeTime FROM live_give_gifts lgg LEFT JOIN live_gifts lg ON lg.id = lgg.g_id LEFT JOIN live l ON l.id = lgg.live_id LEFT JOIN live_pindao lp ON lp.pd_id = l.channel_id LEFT JOIN member_info mi ON mi.jwcode = lgg.jwcode
<where> lgg.knapsack=0 <if test="beanConsumeLive.jwcode != null and beanConsumeLive.jwcode != ''"> AND lgg.jwcode = #{beanConsumeLive.jwcode} </if> <if test="beanConsumeLive.dept != null and beanConsumeLive.dept != ''"> AND mi.deptName = #{beanConsumeLive.dept} </if> <!-- <if test="beanConsumeLive.type != null and beanConsumeLive.type != ''">
AND fyr.source_type = #{beanConsumeLive.type} </if>--> <if test="beanConsumeLive.startTime != null and beanConsumeLive.endTime != null"> AND lgg.created_at BETWEEN #{beanConsumeLive.startTime} AND #{beanConsumeLive.endTime} </if> <if test="beanConsumeLive.gift != null and beanConsumeLive.gift != ''"> AND lg.name =#{beanConsumeLive.gift} </if> <if test="beanConsumeLive.liveChannel != null and beanConsumeLive.liveChannel != ''"> AND lp.title = #{beanConsumeLive.liveChannel} </if> <if test="beanConsumeLive.liveName != null and beanConsumeLive.liveName != ''"> AND l.name LIKE CONCAT('%', #{beanConsumeLive.liveName}, '%') </if> </where>)t
</select> <select id="getDept" resultType="java.lang.String"> select distinct deptName from member_info where deptName is not null and deptName != '' </select> </mapper>
|