|
@@ -76,6 +76,35 @@
|
|
|
GROUP BY a.user_id_, a.create_time_
|
|
|
</select>
|
|
|
|
|
|
+ <select id="queryUserTrainingTimeV2" resultType="com.ym.mec.biz.dal.vo.TempUserTrainingTimeDetailVo" parameterType="java.util.Map">
|
|
|
+ SELECT
|
|
|
+ user_id_ as userId,
|
|
|
+ ifnull(train_time_, 0) AS playTime,
|
|
|
+ date_format(day_, '%Y-%m-%d') AS trainingDate
|
|
|
+ FROM user_music_compare_camp_day_data
|
|
|
+ <where>
|
|
|
+ <if test="param.startTime != null">
|
|
|
+ AND day_ >= #{param.startTime}
|
|
|
+ </if>
|
|
|
+ <if test="param.campId != null">
|
|
|
+ AND camp_id_ = #{param.campId}
|
|
|
+ </if>
|
|
|
+ <if test="param.endTime != null">
|
|
|
+ AND day_ <= #{param.endTime}
|
|
|
+ </if>
|
|
|
+ <if test="param.userId != null">
|
|
|
+ AND user_id_ = #{param.userId}
|
|
|
+ </if>
|
|
|
+ <if test="param.userIdList !=null and param.userIdList.size()>0">
|
|
|
+ AND user_id_ IN
|
|
|
+ <foreach collection="param.userIdList" item="userId" open="(" close=")" separator=",">
|
|
|
+ #{userId}
|
|
|
+ </foreach>
|
|
|
+ </if>
|
|
|
+ </where>
|
|
|
+ </select>
|
|
|
+
|
|
|
+
|
|
|
<select id="queryAllUserId" resultType="java.lang.Integer">
|
|
|
SELECT
|
|
|
distinct user_id_
|
|
@@ -159,6 +188,47 @@
|
|
|
</where>
|
|
|
</select>
|
|
|
|
|
|
+
|
|
|
+ <select id="queryUserTrainingDetailV2" parameterType="java.util.Map" resultType="com.ym.mec.biz.dal.vo.TempCampUserTrainingDetailVo">
|
|
|
+ select * from (SELECT
|
|
|
+ a.user_id_ AS id,
|
|
|
+ d.username_ AS username,
|
|
|
+ d.phone_ AS phone,
|
|
|
+ e.name_ AS imGroupName,
|
|
|
+ sum( if(ifnull(c.train_time_,0) >= b.sign_standard_ * 60,1,0)) AS playDay,
|
|
|
+ max(ifnull(c.train_time_,0)) AS playTime
|
|
|
+ FROM
|
|
|
+ `temp_little_artist_training_camp_user_relation` `a`
|
|
|
+ left join temp_little_artist_training_camp b on b.id_ = a.activity_id_
|
|
|
+ left join user_music_compare_camp_day_data c on c.camp_id_ = a.activity_id_ and a.user_id_ = c.user_id_
|
|
|
+
|
|
|
+ LEFT JOIN `sys_user` `d` ON `d`.`id_` = `a`.`user_id_`
|
|
|
+ LEFT JOIN `im_group` `e` ON `a`.`im_group_id_` = `e`.`id_`
|
|
|
+ <where>
|
|
|
+ a.activity_id_ = #{param.campId} and a.state_ = #{param.state}
|
|
|
+ <if test="param.imGroupId != null">
|
|
|
+ AND e.id_ = #{param.imGroupId}
|
|
|
+ </if>
|
|
|
+ <if test="param.search != null">
|
|
|
+ AND (
|
|
|
+ d.`id_` LIKE CONCAT('%', #{param.search},'%')
|
|
|
+ OR d.`username_` LIKE CONCAT('%', #{param.search},'%')
|
|
|
+ OR d.`phone_` LIKE CONCAT('%', #{param.search},'%')
|
|
|
+ )
|
|
|
+ </if>
|
|
|
+ </where>
|
|
|
+ group by a.user_id_
|
|
|
+ ) t
|
|
|
+ <where>
|
|
|
+ <if test="param.standardFlag != null and param.standardFlag == true">
|
|
|
+ AND ifnull( t.playDay, 0 ) >= #{param.standardDays}
|
|
|
+ </if>
|
|
|
+ <if test="param.standardFlag != null and param.standardFlag == false">
|
|
|
+ AND ifnull( t.playDay, 0 ) < #{param.standardDays}
|
|
|
+ </if>
|
|
|
+ </where>
|
|
|
+ </select>
|
|
|
+
|
|
|
<select id="queryCampImGroup" resultType="com.ym.mec.biz.dal.entity.ImGroup">
|
|
|
select id_ as id,
|
|
|
name_ as name
|