INSERT INTO course_schedule_teacher_salary (id_,group_type_,music_group_id_,course_schedule_id_,teacher_role_, user_id_,expect_salary_,create_time_,update_time_,subsidy_,actual_salary_,settlement_time_,class_group_id_) VALUES(#{id},#{groupType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{musicGroupId},#{courseScheduleId}, #{teacherRole},#{userId},#{expectSalary},now(),now(),#{subsidy},#{actualSalary},#{settlementTime},#{classGroupId}) INSERT INTO course_schedule_teacher_salary (id_,group_type_,music_group_id_,course_schedule_id_,teacher_role_,user_id_,expect_salary_,create_time_,update_time_,subsidy_,actual_salary_,settlement_time_,class_group_id_) VALUES (#{data.id},#{data.groupType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{data.musicGroupId},#{data.courseScheduleId},#{data.teacherRole},#{data.userId},#{data.expectSalary},now(),now(),#{data.subsidy},#{data.actualSalary},#{data.settlementTime},#{data.classGroupId}) UPDATE course_schedule_teacher_salary user_id_ = #{userId}, group_type_ = #{groupType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}, music_group_id_ = #{musicGroupId}, subsidy_ = #{subsidy}, expect_salary_ = #{expectSalary}, course_schedule_id_ = #{courseScheduleId}, settlement_time_ = #{settlementTime}, teacher_role_ = #{teacherRole}, update_time_ = now(), actual_salary_ = #{actualSalary}, class_group_id_ = #{classGroupId}, WHERE id_ = #{id} UPDATE course_schedule_teacher_salary SET expect_salary_ = #{courseScheduleTeacherSalary.expectSalary},update_time_ = NOW() WHERE id_ = #{courseScheduleTeacherSalary.id} DELETE FROM course_schedule_teacher_salary WHERE id_ = #{id} DELETE FROM course_schedule_teacher_salary WHERE course_schedule_id_ IN #{courseScheduleId} (cs.del_flag_ != 1 OR cs.del_flag_ IS NULL) AND csts.settlement_time_ IS NOT NULL AND csts.teacher_role_ IS NOT NULL AND cs.type_ IS NOT NULL AND su.organ_id_ = #{organId} AND (su.username_ LIKE CONCAT('%',#{search},'%') OR su.phone_ LIKE CONCAT('%',#{search},'%')) AND csts.settlement_time_ >= DATE_FORMAT(#{startTime},'%Y-%m-%d') AND csts.settlement_time_ <= DATE_FORMAT(#{endTime},'%Y-%m-%d') AND cs.type_ = #{courseScheduleType} AND csts.user_id_ = #{teacherId} vg.id_=#{vipGroupId} AND cs.group_type_='VIP' AND (cs.class_date_ BETWEEN #{startTime} AND #{endTime}) UPDATE course_schedule_teacher_salary csts left join course_schedule cs on csts.course_schedule_id_ = cs.id_ set csts.subsidy_ = #{subsidy}, csts.expect_salary_ = #{salary}, 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_) >= #{startDateTime} UPDATE course_schedule_teacher_salary SET expect_salary_ = 0,update_time_ = NOW() WHERE course_schedule_id_ = #{courseScheduleId} AND user_id_ IN #{userId} DELETE FROM course_schedule_teacher_salary WHERE course_schedule_id_ = #{courseScheduleId} AND user_id_ IN #{userId} 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'