Procházet zdrojové kódy

系统收费课程查询新增预排课条件

zouxuan před 4 roky
rodič
revize
076d7b1a26

+ 1 - 1
mec-biz/src/main/resources/config/mybatis/CourseScheduleMapper.xml

@@ -2343,7 +2343,7 @@
         <foreach collection="classGroupIds" item="item" separator="," open="(" close=")">
             #{item}
         </foreach>
-        AND cs.del_flag_ = 0 AND pre_course_flag_ = 1
+        AND cs.del_flag_ = 0 AND cs.pre_course_flag_ = 1
         GROUP BY cs.class_group_id_
     </select>
     <select id="countCurrentNumByClassGroupId" resultType="java.util.Map">

+ 14 - 12
mec-biz/src/main/resources/config/mybatis/CourseScheduleStudentPaymentMapper.xml

@@ -235,7 +235,7 @@
 			(cs.del_flag_ != 1 OR cs.del_flag_ IS NULL)
 			AND cssp.user_id_ = #{userId}
 			AND CONCAT(cs.class_date_	,' ',cs.start_class_time_) &gt; NOW()
-			AND cs.class_group_id_ = #{classGroupId}
+			AND cs.class_group_id_ = #{classGroupId} AND cs.pre_course_flag_ = 0
     </select>
 	<select id="countAllCourseFee" resultType="java.math.BigDecimal">
 		SELECT
@@ -245,7 +245,7 @@
 			LEFT JOIN course_schedule cs ON cssp.course_schedule_id_ = cs.id_
 		WHERE
 		(cs.del_flag_ != 1 OR cs.del_flag_ IS NULL)
-		AND cs.class_group_id_ = #{classGroupId}
+		AND cs.class_group_id_ = #{classGroupId} AND cs.pre_course_flag_ = 0
     </select>
 	<select id="findNotStartCourseStudentPaymentIdsWithClassGroupAndStudent" resultType="int">
 		SELECT
@@ -256,7 +256,7 @@
 		WHERE
 			cssp.class_group_id_ = #{classGroupId}
 			AND cssp.user_id_=#{userId}
-			AND CONCAT(cs.class_date_,' ',cs.start_class_time_)>NOW()
+			AND CONCAT(cs.class_date_,' ',cs.start_class_time_)>NOW() AND cs.pre_course_flag_ = 0
 	</select>
 
     <select id="findVipGroupCoursePrice" resultType="java.math.BigDecimal">
@@ -279,7 +279,8 @@
 		<foreach collection="musicGroupIds" separator="," item="item" open="(" close=")">
 			#{item}
 		</foreach>
-		AND cs.group_type_ = #{groupType} AND cssp.user_id_ = #{userId} AND cs.status_ = 'NOT_START' AND cs.del_flag_ = 0
+		AND cs.group_type_ = #{groupType} AND cssp.user_id_ = #{userId}
+		AND cs.status_ = 'NOT_START' AND cs.del_flag_ = 0 AND cs.pre_course_flag_ = 0
 		GROUP BY cssp.music_group_id_
 	</select>
     <select id="countStudentCourseNumWithGroup" resultType="int">
@@ -467,7 +468,7 @@
 			LEFT JOIN course_schedule_student_payment cssp ON s.user_id_=cssp.user_id_
 			LEFT JOIN course_schedule cs ON cssp.course_schedule_id_ = cs.id_
 			LEFT JOIN class_group_teacher_mapper cgtm ON cssp.class_group_id_=cgtm.class_group_id_
-		WHERE cs.type_ IN ('PRACTICE', 'VIP', 'SINGLE', 'MIX') AND cgtm.teacher_role_='BISHOP';
+		WHERE cs.type_ IN ('PRACTICE', 'VIP', 'SINGLE', 'MIX') AND cs.pre_course_flag_ = 0 AND cgtm.teacher_role_='BISHOP';
 	</select>
     <select id="findCoursePayment" resultType="map">
 		SELECT
@@ -489,7 +490,7 @@
 		<if test="courseScheduleType != null">
 		AND cs.type_= #{courseScheduleType, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
 		</if>
-		AND CONCAT(class_date_, ' ', start_class_time_)&gt;NOW()
+		AND CONCAT(cs.class_date_, ' ', cs.start_class_time_) &gt; NOW() AND cs.pre_course_flag_ = 0
 	</select>
 	<select id="queryMidiByUserIdsAndCourseId" resultType="java.util.Map">
 		SELECT cssp.user_id_ 'key',CASE WHEN cssp.open_play_midi_ IS NULL THEN '' ELSE cssp.open_play_midi_ END 'value' FROM course_schedule_student_payment cssp
@@ -553,7 +554,7 @@
 			LEFT JOIN course_schedule cs ON cssp.course_schedule_id_ = cs.id_
 		WHERE
 			cssp.group_type_ = #{groupType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
-			AND cssp.music_group_id_ = #{groupId}
+			AND cssp.music_group_id_ = #{groupId} AND cs.pre_course_flag_ = 0
 			AND CONCAT( cs.class_date_, ' ', cs.start_class_time_ ) > NOW( )
 	</select>
 
@@ -568,7 +569,7 @@
 		<foreach collection="classGroupIds" item="classGroupId" open="(" close=")" separator=",">
 			#{classGroupId}
 		</foreach>
-        AND cs.status_ = 'NOT_START' ORDER BY cssp.id_ ASC
+        AND cs.status_ = 'NOT_START' AND cs.pre_course_flag_ = 0 ORDER BY cssp.id_ ASC
 	</select>
 
 	<select id="findStudentLastCourseSchedule" resultType="java.util.Map">
@@ -583,7 +584,7 @@
 			<foreach collection="studentIds" item="studentId" open="(" close=")" separator=",">
 				#{studentId}
 			</foreach>
-			AND CONCAT( cs.class_date_, ' ', cs.start_class_time_ ) &lt; NOW( )
+			AND CONCAT( cs.class_date_, ' ', cs.start_class_time_ ) &lt; NOW( ) AND cs.pre_course_flag_ = 0
 		GROUP BY user_id_;
 	</select>
 
@@ -641,7 +642,7 @@
 			LEFT JOIN course_schedule cs1 ON cs.new_course_id_=cs1.id_
 		WHERE
 			cssp.batch_no_ IS NOT NULL
-			AND cs.id_ IS NOT NULL
+			AND cs.id_ IS NOT NULL AND cs.pre_course_flag_ = 0
 			AND (((cs.status_ IN ('OVER', 'UNDERWAY') OR cs1.status_ IN ( 'OVER', 'UNDERWAY' ))
 			          AND (cssp.actual_price_ IS NULL OR cssp.actual_price_ &lt; cssp.expect_price_))
 			OR ( cs.status_ = 'NOT_START' AND cssp.actual_price_ IS NOT NULL AND cssp.actual_price_ &gt; 0))
@@ -681,7 +682,7 @@
 				#{item}
 			</foreach>
 		</if>
-		AND CONCAT(cs.class_date_," ",cs.start_class_time_) > NOW()
+		AND CONCAT(cs.class_date_," ",cs.start_class_time_) > NOW() AND cs.pre_course_flag_ = 0
 		GROUP BY cssp.id_
 	</select>
 	<select id="queryByIdsAndStudentId" resultMap="CourseScheduleStudentPayment">
@@ -708,7 +709,7 @@
 		  </if>
 		  AND cs.class_date_&lt;#{monday}
 		  AND cs.type_=#{courseType, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
-		  AND (cs.del_flag_ != 1 OR cs.del_flag_ IS NULL)
+		  AND (cs.del_flag_ != 1 OR cs.del_flag_ IS NULL) AND cs.pre_course_flag_ = 0
 		ORDER BY CONCAT(cs.class_date_, ' ', cs.start_class_time_) DESC LIMIT 1
 	</select>
 
@@ -722,6 +723,7 @@
 		SELECT SUM(cssp.expect_price_) FROM course_schedule_student_payment cssp
 		LEFT JOIN course_schedule cs ON cs.id_ = cssp.course_schedule_id_
 		WHERE cssp.class_group_id_ = #{classGroupId} AND cssp.user_id_ = #{studentId} AND CONCAT(cs.class_date_,' ',cs.start_class_time_) > NOW()
+		AND cs.pre_course_flag_ = 0
 	  <if test="courseType != null">
 		  AND cs.type_ = #{courseType}
 	  </if>

+ 17 - 12
mec-biz/src/main/resources/config/mybatis/CourseScheduleTeacherSalaryMapper.xml

@@ -187,7 +187,7 @@
 
 	<sql id="courseScheduleTeacherSalaryQueryPage">
 		<where>
-			(cs.del_flag_ != 1 OR cs.del_flag_ IS NULL)
+			(cs.del_flag_ != 1 OR cs.del_flag_ IS NULL) AND cs.pre_course_flag_ = 0
 			AND csts.settlement_time_ IS NOT NULL AND csts.teacher_role_ IS NOT NULL AND cs.type_ IS NOT NULL
 			<if test="organId != null">
 				AND su.organ_id_ = #{organId}
@@ -461,20 +461,21 @@
 		FROM
 			course_schedule cs
 			LEFT JOIN course_schedule_teacher_salary csts ON cs.id_ = csts.course_schedule_id_
-		WHERE cs.class_group_id_=#{classGroupId} AND cs.id_ IS NOT NULL AND cs.status_='OVER'
+		WHERE cs.class_group_id_=#{classGroupId} AND cs.id_ IS NOT NULL AND cs.status_='OVER' AND cs.pre_course_flag_ = 0
 		GROUP BY cs.teach_mode_
     </select>
 
 	<update id="batchUpdateWages" parameterType="map">
-		UPDATE course_schedule_teacher_salary csts left join course_schedule cs on csts.course_schedule_id_ = cs.id_ 
-		set
+		UPDATE course_schedule_teacher_salary csts LEFT JOIN course_schedule cs ON csts.course_schedule_id_ = cs.id_
+		SET
 			csts.subsidy_ = #{subsidy},
 		    csts.enable_change_salary_ = IF(teacher_role_='BISHOP', 0, 1),
 		    <if test="salary!=null">
 				csts.expect_salary_ = #{salary},
 			</if>
 			csts.update_time_ = now()
-		WHERE csts.user_id_ = #{userId} and csts.class_group_id_ = #{classGroupId} and csts.settlement_time_ is null and CONCAT(cs.class_date_,' ',cs.start_class_time_) &gt;= #{startDateTime}
+		WHERE csts.user_id_ = #{userId} AND csts.class_group_id_ = #{classGroupId} AND csts.settlement_time_ IS NULL
+		  AND CONCAT(cs.class_date_,' ',cs.start_class_time_) &gt;= #{startDateTime} AND cs.pre_course_flag_ = 0
 	</update>
 	
     <update id="batchUpdateTeacherExpectSalary">
@@ -593,11 +594,13 @@
 		WHERE
 			csts.group_type_ = #{groupType}
 			AND csts.music_group_id_ = #{groupId}
-			AND CONCAT(cs.class_date_, ' ', cs.start_class_time_)>NOW()
+			AND CONCAT(cs.class_date_, ' ', cs.start_class_time_)>NOW() AND cs.pre_course_flag_ = 0
 	</select>
 
     <delete id="deleteByMusicGroupId" parameterType="map" >
-		DELETE cssp FROM course_schedule_teacher_salary cssp left join course_schedule cs on cssp.course_schedule_id_ = cs.id_ WHERE cssp.music_group_id_=#{musicGroupId} AND cssp.group_type_=#{groupType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler} and cs.status_ = 'NOT_START'
+		DELETE cssp FROM course_schedule_teacher_salary cssp
+		LEFT JOIN course_schedule cs on cssp.course_schedule_id_ = cs.id_
+		WHERE cssp.music_group_id_=#{musicGroupId} AND cssp.group_type_=#{groupType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler} and cs.status_ = 'NOT_START'
 	</delete>
 	<delete id="deleteByGroup">
 		DELETE FROM course_schedule_teacher_salary WHERE music_group_id_=#{groupId} AND group_type_=#{groupType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
@@ -608,8 +611,10 @@
 	</delete>
 
     <select id="queryUserNoSettlementListByTypeAndStartClassDate" resultMap="CourseScheduleTeacherSalary">
-		SELECT ts.*,cs.type_,cs.teach_mode_,cs.class_date_,cs.start_class_time_,cs.end_class_time_ FROM course_schedule_teacher_salary ts LEFT JOIN course_schedule cs ON ts.course_schedule_id_ = cs.id_
-		WHERE FIND_IN_SET(cs.type_, #{typeList}) AND ts.user_id_ = #{userId} AND ts.settlement_time_ IS NULL AND cs.class_date_ &gt;= #{startClassDate}
+		SELECT ts.*,cs.type_,cs.teach_mode_,cs.class_date_,cs.start_class_time_,cs.end_class_time_
+		FROM course_schedule_teacher_salary ts
+		LEFT JOIN course_schedule cs ON ts.course_schedule_id_ = cs.id_
+		WHERE FIND_IN_SET(cs.type_, #{typeList}) AND ts.user_id_ = #{userId} AND ts.settlement_time_ IS NULL AND cs.class_date_ &gt;= #{startClassDate} AND cs.pre_course_flag_ = 0
 	</select>
     <select id="findByTeacher" resultMap="CourseScheduleTeacherSalary">
 		SELECT
@@ -830,7 +835,7 @@
     <select id="countTeacherGiveLesson" resultType="java.lang.Integer">
 		SELECT COUNT(DISTINCT csts.id_) FROM course_schedule_teacher_salary csts
 		LEFT JOIN course_schedule cs ON cs.id_ = csts.course_schedule_id_
-		WHERE NOW() >= CONCAT(cs.class_date_ ,' ',cs.end_class_time_) AND csts.user_id_ = #{userId}
+		WHERE NOW() >= CONCAT(cs.class_date_ ,' ',cs.end_class_time_) AND csts.user_id_ = #{userId} AND cs.pre_course_flag_ = 0
 	</select>
 
 	<resultMap id="TeacherCourseSalaryDetail4WebDto" type="com.ym.mec.biz.dal.dto.TeacherCourseSalaryDetail4WebDto">
@@ -1130,7 +1135,7 @@
 			( cs.del_flag_ IS NULL OR cs.del_flag_ = 0 )
 			AND (cs.is_lock_=0 OR cs.is_lock_ IS NULL)
 			AND (cs.new_course_id_ IS NULL OR cs.new_course_id_=cs.id_)
-			AND csts.user_id_ = #{teacherId}
+			AND csts.user_id_ = #{teacherId} AND cs.pre_course_flag_ = 0
 			<if test="startClassDay!=null and startClassDay!=''">
 				AND cs.class_date_ &gt;= #{startClassDay}
 			</if>
@@ -1184,6 +1189,6 @@
 		WHERE cs.class_date_ = CURDATE()
 			AND ( cs.del_flag_ IS NULL OR cs.del_flag_ = 0 )
 			AND ( cs.is_lock_ = 0 OR cs.is_lock_ IS NULL )
-			AND ( cs.new_course_id_ IS NULL OR cs.new_course_id_ = cs.id_ )
+			AND ( cs.new_course_id_ IS NULL OR cs.new_course_id_ = cs.id_ ) AND cs.pre_course_flag_ = 0
 	</select>
 </mapper>

+ 4 - 4
mec-biz/src/main/resources/config/mybatis/IndexBaseMonthDataMapper.xml

@@ -521,7 +521,7 @@
 		LEFT JOIN vip_group vg ON m.music_group_id_=vg.id_
 		LEFT JOIN vip_group_category vgc ON vg.vip_group_category_id_=vgc.id_
 		WHERE
-		m.del_flag_ = 0 AND m.pre_course_flag_ = 0
+		m.del_flag_ = 0
 		AND (m.is_lock_ = 0 OR m.is_lock_ IS NULL)
 		AND (m.new_course_id_ IS NULL OR m.new_course_id_=m.id_)
 		AND m.organ_id_ IS NOT NULL
@@ -552,7 +552,7 @@
 			LEFT JOIN course_schedule_student_payment s ON su.id_=s.user_id_
 			LEFT JOIN course_schedule m ON s.course_schedule_id_=m.id_
 		WHERE
-			m.del_flag_ = 0 AND m.pre_course_flag_ = 0
+			m.del_flag_ = 0
 			AND (m.is_lock_ = 0 OR m.is_lock_ IS NULL)
 			AND su.organ_id_ IS NOT NULL
 			AND m.group_type_ IN ('VIP', 'PRACTICE')
@@ -579,7 +579,7 @@
 			LEFT JOIN course_schedule_student_payment cssp1 ON s.user_id_=cssp1.user_id_ AND cssp1.create_time_&lt;#{dayStr}
 			LEFT JOIN course_schedule m ON s.course_schedule_id_=m.id_
 		WHERE
-			m.del_flag_ = 0 AND m.pre_course_flag_ = 0
+			m.del_flag_ = 0
 			AND (m.is_lock_ = 0 OR m.is_lock_ IS NULL)
 			AND cssp1.id_ IS NULL
 			AND su.organ_id_ IS NOT NULL
@@ -603,7 +603,7 @@
 			LEFT JOIN course_schedule cs ON m.course_schedule_id_=cs.id_
 			LEFT JOIN practice_group pg ON m.music_group_id_=pg.id_ AND m.group_type_='PRACTICE'
 		WHERE
-			(cs.del_flag_ IS NULL OR cs.del_flag_=0) AND cs.pre_course_flag_ = 0
+			(cs.del_flag_ IS NULL OR cs.del_flag_=0)
 			AND cs.organ_id_ IS NOT NULL
 			AND (cs.new_course_id_ IS NULL OR cs.new_course_id_=cs.id_)
 			AND m.group_type_ IN ('VIP', 'PRACTICE')