|
@@ -161,26 +161,6 @@
|
|
|
<include refid="queryCondition"/>
|
|
|
</select>
|
|
|
|
|
|
- <select id="getUserTrainStat" resultType="com.yonge.cooleshow.biz.dal.dto.MusicCompareRankingDto">
|
|
|
- SELECT
|
|
|
- smcr.user_id_ userId,
|
|
|
- su.avatar_ avatar,
|
|
|
- su.username_ studentName,
|
|
|
- sms.name_ musicScoreName,
|
|
|
- COUNT(smcr.id_) trainNum,
|
|
|
- MAX(smcr.score_) score,
|
|
|
- COUNT(DISTINCT DATE(smcr.create_time_)) trainDays,
|
|
|
- SUM(smcr.play_time_) trainTime
|
|
|
- FROM sys_music_compare_record smcr
|
|
|
- LEFT JOIN sys_user su ON smcr.user_id_=su.id_
|
|
|
- LEFT JOIN sys_music_score sms ON smcr.music_sheet_id_ = sms.id_
|
|
|
- WHERE EXISTS (SELECT user_id_ FROM student WHERE user_id_=smcr.user_id_)
|
|
|
- AND DATE_FORMAT(smcr.create_time_, '%Y-%m-%d') BETWEEN #{startTime} AND #{endTime}
|
|
|
- <if test="heardLevel!=null">
|
|
|
- AND smcr.heard_level_ = #{heardLevel, typeHandler=com.yonge.toolset.mybatis.dal.CustomEnumTypeHandler}
|
|
|
- </if>
|
|
|
- GROUP BY smcr.user_id_
|
|
|
- </select>
|
|
|
|
|
|
<select id="getUserTrainOverView" resultType="com.yonge.cooleshow.biz.dal.dto.StudentTrainOverviewDto">
|
|
|
SELECT
|
|
@@ -218,36 +198,6 @@
|
|
|
</where>
|
|
|
</sql>
|
|
|
|
|
|
- <select id="queryMusicGroupStudentTrainData" resultType="com.yonge.cooleshow.biz.dal.dto.MusicCompareRankingDto">
|
|
|
- SELECT
|
|
|
- smcr.user_id_ userId,
|
|
|
- su.avatar_ avatar,
|
|
|
- su.username_ studentName,
|
|
|
- COUNT( smcr.id_ ) trainNum,
|
|
|
- COUNT( DISTINCT DAY ( smcr.create_time_ )) trainDays,
|
|
|
- SUM( smcr.play_time_ ) trainTime,
|
|
|
- CASE WHEN stu.member_rank_setting_id_ IS NULL THEN 0 ELSE 1 END vipUser
|
|
|
- FROM
|
|
|
- sys_music_compare_record smcr
|
|
|
- LEFT JOIN sys_user su ON smcr.user_id_ = su.id_
|
|
|
- LEFT JOIN student stu ON stu.user_id_ = smcr.user_id_
|
|
|
- LEFT JOIN student_registration sr ON sr.user_id_=smcr.user_id_
|
|
|
- <include refid="queryMusicGroupStudentTrainDataConditon"></include>
|
|
|
- GROUP BY smcr.user_id_
|
|
|
- <if test="sortField!=null and sortField!=''">
|
|
|
- <if test="sortField == 'TRAINDAYS'">
|
|
|
- ORDER BY trainDays
|
|
|
- </if>
|
|
|
- <if test="sortField == 'TRAINTIME'">
|
|
|
- ORDER BY trainTime
|
|
|
- </if>
|
|
|
- <if test="sortField == 'TRAINNUM'">
|
|
|
- ORDER BY trainNum
|
|
|
- </if>
|
|
|
- </if>
|
|
|
- <include refid="global.limit"></include>
|
|
|
- </select>
|
|
|
-
|
|
|
<select id="countMusicGroupStudentTrainData" resultType="int">
|
|
|
SELECT
|
|
|
COUNT(DISTINCT smcr.user_id_)
|
|
@@ -259,17 +209,6 @@
|
|
|
<include refid="queryMusicGroupStudentTrainDataConditon"/>
|
|
|
</select>
|
|
|
|
|
|
- <select id="queryStudentTrainData" resultType="com.yonge.cooleshow.biz.dal.dto.EduOrganStudentListDto">
|
|
|
- SELECT
|
|
|
- user_id_ studentId,
|
|
|
- COUNT(DISTINCT behavior_id_) cloudStudyUseNum,
|
|
|
- SUM(play_time_) cloudStudyUseTime
|
|
|
- FROM
|
|
|
- sys_music_compare_record
|
|
|
- GROUP BY
|
|
|
- user_id_
|
|
|
- </select>
|
|
|
-
|
|
|
<select id="getOrganNewCloudStudyNum" resultType="int">
|
|
|
SELECT
|
|
|
COUNT( DISTINCT user_id_ )
|
|
@@ -351,18 +290,6 @@
|
|
|
SELECT * FROM sys_music_compare_record WHERE user_id_=#{userId} AND feature_ = 'CLOUD_STUDY_EVALUATION' ORDER BY create_time_ DESC LIMIT 1
|
|
|
</select>
|
|
|
|
|
|
- <select id="getUserWeekCompareData" resultType="com.yonge.cooleshow.biz.dal.entity.SysMusicCompareWeekData">
|
|
|
- SELECT
|
|
|
- COUNT(smcr.id_) trainNum,
|
|
|
- COUNT(DISTINCT DATE(smcr.create_time_)) trainDays,
|
|
|
- SUM(smcr.play_time_) trainTime,
|
|
|
- MAX(IF(heard_level_='BEGINNER' AND source_time_ >= play_time_, smcr.score_, 0)) beginnerMaxScore,
|
|
|
- MAX(IF(heard_level_='ADVANCED' AND source_time_ >= play_time_, smcr.score_, 0)) advancedMaxScore,
|
|
|
- MAX(IF(heard_level_='PERFORMER' AND source_time_ >= play_time_, smcr.score_, 0)) performerMaxScore,smcr.tenant_id_ tenantId
|
|
|
- FROM sys_music_compare_record smcr
|
|
|
- WHERE user_id_=#{userId} AND monday_ = #{monday}
|
|
|
- </select>
|
|
|
-
|
|
|
<select id="getUserWeekMaxMusicScoreId" resultType="java.lang.Integer">
|
|
|
SELECT music_sheet_id_ FROM sys_music_compare_record
|
|
|
WHERE user_id_=#{userId} AND monday_ = #{monday} AND heard_level_ = #{heardLevel, typeHandler=com.yonge.toolset.mybatis.dal.CustomEnumTypeHandler}
|