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'