|
@@ -1636,6 +1636,9 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
|
|
|
newCourseSchedule.setEndClassTime(endClassTime);
|
|
|
}*/
|
|
|
|
|
|
+ if (Objects.isNull(newCourseSchedule.getGroupType())) {
|
|
|
+ newCourseSchedule.setGroupType(oldCourseSchedule.getGroupType());
|
|
|
+ }
|
|
|
if (Objects.isNull(newCourseSchedule.getActualTeacherId())) {
|
|
|
newCourseSchedule.setActualTeacherId(oldCourseSchedule.getActualTeacherId());
|
|
|
}
|
|
@@ -1738,30 +1741,35 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ if(newCourseSchedule.getStatus() == CourseStatusEnum.NOT_START && newCourseSchedule.getGroupType() == GroupType.MUSIC){
|
|
|
+ //查询新生(之前排课没有这个人,后来新进来的学生)
|
|
|
+ List<ClassGroupStudentMapper> newStudentList = classGroupStudentMapperDao.queryNewStudentListByCourseScheduleId(courseScheduleId);
|
|
|
+ if(newStudentList.size() > 0){
|
|
|
+ //生成courseScheduleStudentPayment记录
|
|
|
+ for(ClassGroupStudentMapper cgsm : newStudentList){
|
|
|
+ CourseScheduleStudentPayment sp = new CourseScheduleStudentPayment();
|
|
|
+ sp.setClassGroupId(newCourseSchedule.getClassGroupId());
|
|
|
+ sp.setCourseScheduleId(courseScheduleId);
|
|
|
+ sp.setCreateTime(date);
|
|
|
+ sp.setExpectPrice(new BigDecimal(0));
|
|
|
+ sp.setGroupType(GroupType.MUSIC);
|
|
|
+ sp.setMusicGroupId(newCourseSchedule.getMusicGroupId());
|
|
|
+ sp.setUpdateTime(date);
|
|
|
+ sp.setUserId(cgsm.getUserId());
|
|
|
+
|
|
|
+ insertCourseScheduleStudentPaymentList.add(sp);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ //清理课程作业
|
|
|
+ courseHomeworkService.delHomwworkByCourseScheduleId(courseScheduleId);
|
|
|
+ }
|
|
|
+
|
|
|
if ((newCourseSchedule.getStatus() != oldCourseSchedule.getStatus() && newCourseSchedule.getStatus() == CourseStatusEnum.NOT_START)) {
|
|
|
//如果已结束修改成了未开始,需要更新学生考勤记录
|
|
|
studentAttendanceDao.deleteStudentAttendancesByCourse(courseScheduleId);
|
|
|
|
|
|
if(newCourseSchedule.getGroupType() == GroupType.MUSIC){
|
|
|
- //查询新生(之前排课没有这个人,后来新进来的学生)
|
|
|
- List<ClassGroupStudentMapper> newStudentList = classGroupStudentMapperDao.queryNewStudentListByCourseScheduleId(courseScheduleId);
|
|
|
- if(newStudentList.size() > 0){
|
|
|
- //生成courseScheduleStudentPayment记录
|
|
|
- for(ClassGroupStudentMapper cgsm : newStudentList){
|
|
|
- CourseScheduleStudentPayment sp = new CourseScheduleStudentPayment();
|
|
|
- sp.setClassGroupId(newCourseSchedule.getClassGroupId());
|
|
|
- sp.setCourseScheduleId(courseScheduleId);
|
|
|
- sp.setCreateTime(date);
|
|
|
- sp.setExpectPrice(new BigDecimal(0));
|
|
|
- sp.setGroupType(GroupType.MUSIC);
|
|
|
- sp.setMusicGroupId(newCourseSchedule.getMusicGroupId());
|
|
|
- sp.setUpdateTime(date);
|
|
|
- sp.setUserId(cgsm.getUserId());
|
|
|
-
|
|
|
- insertCourseScheduleStudentPaymentList.add(sp);
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
//清理课程作业
|
|
|
courseHomeworkService.delHomwworkByCourseScheduleId(courseScheduleId);
|
|
|
}
|
|
@@ -1833,11 +1841,6 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
|
|
|
// 乐团结算方式
|
|
|
String settlementType = musicGroupSettlementsMap.get(courseScheduleId);
|
|
|
int unitMinutes = 30;
|
|
|
- if (newCourseSchedule.getType() == CourseScheduleType.CLASSROOM) {
|
|
|
- unitMinutes = 40;
|
|
|
- } else if (newCourseSchedule.getType() == CourseScheduleType.HIGH) {
|
|
|
- unitMinutes = 45;
|
|
|
- }
|
|
|
|
|
|
// 如果当前教师是在指定日期之后入职的,则按照3.0的方式结算
|
|
|
Teacher teacher = teacherMap.get(teacherId);
|
|
@@ -1846,12 +1849,23 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
|
|
|
settlementType = SalarySettlementTypeEnum.GRADIENT_SALARY.getCode();
|
|
|
}
|
|
|
if (StringUtils.equals(settlementType, "TEACHER_DEFAULT")) {
|
|
|
+ if (newCourseSchedule.getType() == CourseScheduleType.CLASSROOM) {
|
|
|
+ unitMinutes = 40;
|
|
|
+ } else if (newCourseSchedule.getType() == CourseScheduleType.HIGH) {
|
|
|
+ unitMinutes = 45;
|
|
|
+ }
|
|
|
if (ts.getTeacherRole() == TeachTypeEnum.BISHOP) {
|
|
|
ts.setExpectSalary(new BigDecimal(tdms.getMainTeacher30MinSalary().doubleValue() * newMinutes / unitMinutes));
|
|
|
} else {
|
|
|
ts.setExpectSalary(new BigDecimal(tdms.getAssistantTeacher30MinSalary().doubleValue() * newMinutes / unitMinutes));
|
|
|
}
|
|
|
} else if (StringUtils.equals(settlementType, "GRADIENT_SALARY")) {
|
|
|
+ unitMinutes = 90;
|
|
|
+ if (newCourseSchedule.getType() == CourseScheduleType.CLASSROOM) {
|
|
|
+ unitMinutes = 40;
|
|
|
+ } else if (newCourseSchedule.getType() == CourseScheduleType.HIGH) {
|
|
|
+ unitMinutes = 45;
|
|
|
+ }
|
|
|
if (ts.getTeacherRole() == TeachTypeEnum.BISHOP) {
|
|
|
ts.setExpectSalary(new BigDecimal(tdms.getMainTeacher90MinSalary().doubleValue() * newMinutes / unitMinutes));
|
|
|
} else {
|