|
@@ -120,10 +120,10 @@
|
|
|
<result property="scheduleType" column="type_" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
|
|
|
</resultMap>
|
|
|
<select id="queryWaitCourseTrainPlan" resultMap="WaitCourseTrainPlanDto">
|
|
|
- SELECT c.class_group_id_,c.type_,c.course_num_ - t.course_num_ num_,c.name_ FROM (
|
|
|
+ SELECT c.class_group_id_,c.type_,c.course_num_ - (CASE WHEN t.course_num_ IS NULL THEN 0 ELSE t.course_num_ END) num_,c.name_ FROM (
|
|
|
SELECT cs.class_group_id_,cs.type_,COUNT(cs.id_) course_num_,cg.name_ FROM course_schedule cs
|
|
|
LEFT JOIN class_group cg ON cg.id_ = cs.class_group_id_
|
|
|
- WHERE cs.music_group_id_ = #{musicGroupId} AND cs.del_flag_ = 0 AND cs.pre_course_flag_ = 0 AND cs.is_lock_ = 0
|
|
|
+ WHERE cs.music_group_id_ = #{dto.musicGroupId} AND cs.del_flag_ = 0 AND cs.pre_course_flag_ = 0 AND cs.is_lock_ = 0
|
|
|
<if test="dto.startSchoolTerm != null">
|
|
|
AND cs.class_date_ >= DATE_FORMAT(#{dto.startSchoolTerm}, '%Y%m%d')
|
|
|
</if>
|
|
@@ -132,20 +132,20 @@
|
|
|
</if>
|
|
|
GROUP BY cs.class_group_id_,cs.type_) c
|
|
|
LEFT JOIN (SELECT tp.class_group_id_,tp.course_type_ type_,COUNT(tp.id_) course_num_,'' name_ FROM music_group_train_plan tp
|
|
|
- WHERE tp.music_group_id_ = #{musicGroupId}
|
|
|
+ WHERE tp.music_group_id_ = #{dto.musicGroupId}
|
|
|
<if test="dto.startSchoolTerm != null">
|
|
|
AND tp.start_school_term_ = #{dto.startSchoolTerm}
|
|
|
</if>
|
|
|
<if test="dto.endSchoolTerm != null">
|
|
|
AND tp.end_school_term_ = #{dto.endSchoolTerm}
|
|
|
</if>
|
|
|
- GROUP BY tp.class_group_id_,tp.course_type_) t ON 1=1
|
|
|
- WHERE c.class_group_id_ = t.class_group_id_ AND c.type_ = t.type_ AND c.course_num_ > t.course_num_
|
|
|
+ GROUP BY tp.class_group_id_,tp.course_type_) t ON c.type_ = t.type_ AND c.class_group_id_ = t.class_group_id_
|
|
|
+ WHERE c.course_num_ > (CASE WHEN t.course_num_ IS NULL THEN 0 ELSE t.course_num_ END)
|
|
|
</select>
|
|
|
<select id="queryWaitCourseTrainPlan1" resultMap="WaitCourseTrainPlanDto">
|
|
|
- SELECT c.class_group_id_,c.type_,t.course_num_ - c.course_num_ num_,c.name_
|
|
|
+ SELECT c.class_group_id_,c.type_,t.course_num_ - (CASE WHEN c.course_num_ IS NULL THEN 0 ELSE c.course_num_ END) num_,c.name_
|
|
|
FROM (SELECT tp.class_group_id_,tp.course_type_ type_,COUNT(tp.id_) course_num_,'' name_ FROM music_group_train_plan tp
|
|
|
- WHERE tp.music_group_id_ = #{musicGroupId}
|
|
|
+ WHERE tp.music_group_id_ = #{dto.musicGroupId}
|
|
|
<if test="dto.startSchoolTerm != null">
|
|
|
AND tp.start_school_term_ = #{dto.startSchoolTerm}
|
|
|
</if>
|
|
@@ -156,15 +156,15 @@
|
|
|
LEFT JOIN (
|
|
|
SELECT cs.class_group_id_,cs.type_,COUNT(cs.id_) course_num_,cg.name_ FROM course_schedule cs
|
|
|
LEFT JOIN class_group cg ON cg.id_ = cs.class_group_id_
|
|
|
- WHERE cs.music_group_id_ = #{musicGroupId} AND cs.del_flag_ = 0 AND cs.pre_course_flag_ = 0 AND cs.is_lock_ = 0
|
|
|
+ WHERE cs.music_group_id_ = #{dto.musicGroupId} AND cs.del_flag_ = 0 AND cs.pre_course_flag_ = 0 AND cs.is_lock_ = 0
|
|
|
<if test="dto.startSchoolTerm != null">
|
|
|
AND cs.class_date_ >= DATE_FORMAT(#{dto.startSchoolTerm}, '%Y%m%d')
|
|
|
</if>
|
|
|
<if test="dto.endSchoolTerm != null">
|
|
|
AND cs.class_date_ <= DATE_FORMAT(#{dto.endSchoolTerm}, '%Y%m%d')
|
|
|
</if>
|
|
|
- GROUP BY cs.class_group_id_,cs.type_) c ON 1=1
|
|
|
- WHERE c.class_group_id_ = t.class_group_id_ AND c.type_ = t.type_ AND c.course_num_ < t.course_num_
|
|
|
+ GROUP BY cs.class_group_id_,cs.type_) c ON c.class_group_id_ = t.class_group_id_ AND c.type_ = t.type_
|
|
|
+ WHERE t.course_num_ > (CASE WHEN c.course_num_ IS NULL THEN 0 ELSE c.course_num_ END)
|
|
|
</select>
|
|
|
<select id="countPlanNum" resultType="int">
|
|
|
SELECT COUNT(id_) FROM music_group_train_plan
|