|  | @@ -132,6 +132,7 @@
 | 
	
		
			
				|  |  |      <resultMap id="CourseReviewDto" type="com.ym.mec.biz.dal.dto.CourseReviewDto">
 | 
	
		
			
				|  |  |          <id column="id_" jdbcType="INTEGER" property="id"/>
 | 
	
		
			
				|  |  |          <result column="subject_id_" jdbcType="INTEGER" property="subjectId"/>
 | 
	
		
			
				|  |  | +        <result column="subject_name_" jdbcType="INTEGER" property="subjectName"/>
 | 
	
		
			
				|  |  |          <result column="organ_id_" jdbcType="INTEGER" property="organId"/>
 | 
	
		
			
				|  |  |          <result column="class_date_" jdbcType="DATE" property="classDate"/>
 | 
	
		
			
				|  |  |          <result column="course_name_" jdbcType="VARCHAR" property="courseName"/>
 | 
	
	
		
			
				|  | @@ -476,33 +477,72 @@
 | 
	
		
			
				|  |  |      </sql>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      <select id="getVipCourseReviewList" resultMap="CourseReviewDto">
 | 
	
		
			
				|  |  | -        SELECT cs.id_,cs.actual_teacher_id_ teacher_id ,cs.class_date_, pg.subject_id_,vg.organ_id_,cs.name_
 | 
	
		
			
				|  |  | +        SELECT cs.id_,cs.actual_teacher_id_ teacher_id ,cs.class_date_, (SELECT group_concat(name_) FROM subject sb WHERE FIND_IN_SET(id_,cg.subject_id_list_)) AS
 | 
	
		
			
				|  |  | +        subject_name_ ,vg.organ_id_,cs.name_
 | 
	
		
			
				|  |  |          course_name_,su.real_name_ teacher_name_,edsu.real_name_
 | 
	
		
			
				|  |  | -        edu_teacher_name_,csr.id_ review_id_, csc.score_ student_review_,
 | 
	
		
			
				|  |  | -        csr.hand_homework_,csr.course_review_,csr.teaching_material_,csr.pronunciation_,csr.tempo_,
 | 
	
		
			
				|  |  | -        csr.music_theory_,csr.song_,csr.memo_,csr.create_time_,csr.has_liaison_,csr.update_time_,sa.id_
 | 
	
		
			
				|  |  | -        attendance_id_,sch.is_replied_ home_work_replied_,
 | 
	
		
			
				|  |  | -        CASE WHEN sch.id_ IS NULL THEN 0 ELSE 1 END assign_homework_,
 | 
	
		
			
				|  |  | +        edu_teacher_name_,csr.id_ review_id_,csr.hand_homework_,csr.course_review_,csr.teaching_material_,csr.pronunciation_,csr.tempo_,
 | 
	
		
			
				|  |  | +        csr.music_theory_,csr.song_,csr.memo_,csr.create_time_,csr.has_liaison_,csr.update_time_
 | 
	
		
			
				|  |  |          FROM course_schedule cs
 | 
	
		
			
				|  |  |          LEFT JOIN vip_group vg ON cs.music_group_id_ = vg.id_ AND cs.group_type_='VIP'
 | 
	
		
			
				|  |  | +        LEFT JOIN class_group cg ON cg.music_group_id_=vg.id_ AND cg.group_type_ = 'VIP'
 | 
	
		
			
				|  |  |          LEFT JOIN sys_user su ON cs.actual_teacher_id_ = su.id_
 | 
	
		
			
				|  |  |          LEFT JOIN sys_user edsu ON vg.educational_teacher_id_ = edsu.id_
 | 
	
		
			
				|  |  |          LEFT JOIN course_schedule_review csr on cs.id_ = csr.course_schedule_id_
 | 
	
		
			
				|  |  | -        LEFT JOIN course_schedule_complaints csc on csc.course_schedule_id_ = cs.id_
 | 
	
		
			
				|  |  | -        LEFT JOIN student_attendance sa on sa.course_schedule_id_ = cs.id_
 | 
	
		
			
				|  |  | -        LEFT JOIN student_course_homework sch on cs.id_ = sch.course_schedule_id_
 | 
	
		
			
				|  |  | -        <include refid="practiceGroupReviewsQueryCondition"/>
 | 
	
		
			
				|  |  | +        <include refid="vipGroupReviewsQueryCondition"/>
 | 
	
		
			
				|  |  |          ORDER BY cs.class_date_ DESC
 | 
	
		
			
				|  |  |          <include refid="global.limit"/>
 | 
	
		
			
				|  |  |      </select>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      <select id="countVipCourseReviews" resultType="java.lang.Integer">
 | 
	
		
			
				|  |  |          SELECT count(*) FROM course_schedule cs
 | 
	
		
			
				|  |  | -        LEFT JOIN practice_group pg ON cs.music_group_id_ = pg.id_ AND cs.group_type_='PRACTICE'
 | 
	
		
			
				|  |  | +        LEFT JOIN vip_group vg ON cs.music_group_id_ = vg.id_ AND cs.group_type_='VIP'
 | 
	
		
			
				|  |  | +        LEFT JOIN class_group cg ON cg.music_group_id_=vg.id_ AND cg.group_type_ = 'VIP'
 | 
	
		
			
				|  |  |          LEFT JOIN course_schedule_review csr on cs.id_ = csr.course_schedule_id_
 | 
	
		
			
				|  |  | -        LEFT JOIN course_schedule_complaints csc on csc.course_schedule_id_ = cs.id_
 | 
	
		
			
				|  |  | -        LEFT JOIN student_attendance sa on sa.course_schedule_id_ = cs.id_
 | 
	
		
			
				|  |  | -        LEFT JOIN student_course_homework sch on cs.id_ = sch.course_schedule_id_
 | 
	
		
			
				|  |  | -        <include refid="practiceGroupReviewsQueryCondition"/>
 | 
	
		
			
				|  |  | +        <include refid="vipGroupReviewsQueryCondition"/>
 | 
	
		
			
				|  |  |      </select>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    <sql id="vipGroupReviewsQueryCondition">
 | 
	
		
			
				|  |  | +        <where>
 | 
	
		
			
				|  |  | +            AND vg.id_ > 0 AND cs.group_type_='VIP' AND cs.status_='OVER' AND (cs.del_flag_ = 0 OR cs.del_flag_ IS NULL)
 | 
	
		
			
				|  |  | +            <if test="search!=null and search!=''">
 | 
	
		
			
				|  |  | +                AND (cs.name_ LIKE CONCAT('%',#{search},'%') OR cs.id_= #{search})
 | 
	
		
			
				|  |  | +            </if>
 | 
	
		
			
				|  |  | +            <if test="organId != null">
 | 
	
		
			
				|  |  | +                AND FIND_IN_SET(vg.organ_id_,#{organId})
 | 
	
		
			
				|  |  | +            </if>
 | 
	
		
			
				|  |  | +            <if test="teacherId != null">
 | 
	
		
			
				|  |  | +                AND cs.actual_teacher_id_=#{teacherId}
 | 
	
		
			
				|  |  | +            </if>
 | 
	
		
			
				|  |  | +            <if test="eduTeacherId != null">
 | 
	
		
			
				|  |  | +                AND vg.educational_teacher_id_=#{eduTeacherId}
 | 
	
		
			
				|  |  | +            </if>
 | 
	
		
			
				|  |  | +            <if test='hasReview !=null and hasReview=="1"'>
 | 
	
		
			
				|  |  | +                AND csr.id_ > 0
 | 
	
		
			
				|  |  | +            </if>
 | 
	
		
			
				|  |  | +            <if test='hasReview !=null and hasReview=="0"'>
 | 
	
		
			
				|  |  | +                AND csr.id_ IS NULL
 | 
	
		
			
				|  |  | +            </if>
 | 
	
		
			
				|  |  | +            <if test='hasHandHomework !=null and hasHandHomework=="1"'>
 | 
	
		
			
				|  |  | +                AND csr.hand_homework_ = 1
 | 
	
		
			
				|  |  | +            </if>
 | 
	
		
			
				|  |  | +            <if test='hasHandHomework !=null and hasHandHomework=="0"'>
 | 
	
		
			
				|  |  | +                AND csr.hand_homework_ IS NULL
 | 
	
		
			
				|  |  | +            </if>
 | 
	
		
			
				|  |  | +            <if test='hasLiaison !=null and hasLiaison=="1"'>
 | 
	
		
			
				|  |  | +                AND csr.has_liaison_ = 1
 | 
	
		
			
				|  |  | +            </if>
 | 
	
		
			
				|  |  | +            <if test='hasLiaison !=null and hasLiaison=="0"'>
 | 
	
		
			
				|  |  | +                AND (csr.has_liaison_ = 0 OR csr.has_liaison_ IS NULL)
 | 
	
		
			
				|  |  | +            </if>
 | 
	
		
			
				|  |  | +            <if test="courseReview != null">
 | 
	
		
			
				|  |  | +                AND csr.course_review_=#{courseReview}
 | 
	
		
			
				|  |  | +            </if>
 | 
	
		
			
				|  |  | +            <if test="startTime !=null">
 | 
	
		
			
				|  |  | +                <![CDATA[AND cs.class_date_ >= #{startTime} ]]>
 | 
	
		
			
				|  |  | +            </if>
 | 
	
		
			
				|  |  | +            <if test="endTime !=null">
 | 
	
		
			
				|  |  | +                <![CDATA[AND cs.class_date_ <= #{endTime} ]]>
 | 
	
		
			
				|  |  | +            </if>
 | 
	
		
			
				|  |  | +        </where>
 | 
	
		
			
				|  |  | +    </sql>
 | 
	
		
			
				|  |  |  </mapper>
 |