|
|
@@ -787,6 +787,9 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
|
|
|
|
|
|
for (TeacherDefaultMusicGroupSalary teacherDefaultMusicGroupSalary : teacherSalaryByUserIdAndType) {
|
|
|
if (teacherDefaultMusicGroupSalary.getCourseScheduleType().equals(CourseSchedule.CourseScheduleType.HIGH_ONLINE) && teacherDefaultMusicGroupSalary.getSalaryRuleJson() != null) {
|
|
|
+ if(studentNum>5){
|
|
|
+ studentNum=Long.valueOf(5);
|
|
|
+ }
|
|
|
BigDecimal salary = JSON.parseObject(teacherDefaultMusicGroupSalary.getSalaryRuleJson()).getBigDecimal(studentNum.toString());
|
|
|
teacherDefaultMusicGroupSalary.setMainTeacher30MinSalary(salary);
|
|
|
teacherDefaultMusicGroupSalary.setMainTeacher90MinSalary(salary);
|
|
|
@@ -1111,6 +1114,9 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
|
|
|
List<TeacherDefaultMusicGroupSalary> teacherSalaryList = teacherDefaultMusicGroupSalaryService.getTeacherSalaryByUserIdAndType(classGroupTeacher.getUserId(), ClassGroupTypeEnum.HIGH_ONLINE.getCode(), null);
|
|
|
Map<CourseSchedule.CourseScheduleType, TeacherDefaultMusicGroupSalary> collect = teacherSalaryList.stream().collect(Collectors.toMap(TeacherDefaultMusicGroupSalary::getCourseScheduleType, teacherDefaultMusicGroupSalary -> teacherDefaultMusicGroupSalary));
|
|
|
TeacherDefaultMusicGroupSalary teacherDefaultMusicGroupSalary = collect.get(courseSchedule.getType());
|
|
|
+ if(studentNum>5){
|
|
|
+ studentNum=5;
|
|
|
+ }
|
|
|
BigDecimal salary = JSON.parseObject(teacherDefaultMusicGroupSalary.getSalaryRuleJson()).getBigDecimal(studentNum.toString());
|
|
|
|
|
|
CourseScheduleTeacherSalary courseScheduleTeacherSalary = new CourseScheduleTeacherSalary();
|
|
|
@@ -1232,6 +1238,45 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
|
|
|
courseScheduleStudentPayments.add(courseScheduleStudentPayment);
|
|
|
}
|
|
|
|
|
|
+ //4、调整未上课课酬
|
|
|
+ List<ClassGroupTeacherMapper> classGroupTeachers = classGroupTeacherMapperService.getClassGroupTeachers(classGroup.getId());
|
|
|
+ if ((classGroup.getType().equals(ClassGroupTypeEnum.HIGH_ONLINE)||classGroup.getType().equals(ClassGroupTypeEnum.HIGH)) && courseScheduleList.size() > 0) {
|
|
|
+ Date nowDate = new Date();
|
|
|
+ List<CourseScheduleTeacherSalary> courseScheduleTeacherSalaryList = new ArrayList<>();
|
|
|
+ List<Long> courseScheduleIds = courseScheduleList.stream().map(CourseSchedule::getId).collect(Collectors.toList());
|
|
|
+ courseScheduleTeacherSalaryDao.batchDeleteByCourseScheduleIds(courseScheduleIds);
|
|
|
+ for (CourseSchedule courseSchedule : courseScheduleList) {
|
|
|
+ for (ClassGroupTeacherMapper classGroupTeacher : classGroupTeachers) {
|
|
|
+ List<TeacherDefaultMusicGroupSalary> teacherSalaryList = teacherDefaultMusicGroupSalaryService.getTeacherSalaryByUserIdAndType(classGroupTeacher.getUserId(), ClassGroupTypeEnum.HIGH_ONLINE.getCode(), null);
|
|
|
+ if (teacherSalaryList == null || teacherSalaryList.size() == 0) {
|
|
|
+ throw new BizException("请设置老师线上网管课课酬");
|
|
|
+ }
|
|
|
+ Map<CourseSchedule.CourseScheduleType, TeacherDefaultMusicGroupSalary> collect = teacherSalaryList.stream().collect(Collectors.toMap(TeacherDefaultMusicGroupSalary::getCourseScheduleType, teacherDefaultMusicGroupSalary -> teacherDefaultMusicGroupSalary));
|
|
|
+ TeacherDefaultMusicGroupSalary teacherDefaultMusicGroupSalary = collect.get(CourseSchedule.CourseScheduleType.HIGH_ONLINE);
|
|
|
+
|
|
|
+ int studentNum = classGroup.getStudentNum()+1;
|
|
|
+ if(studentNum>5){
|
|
|
+ studentNum=5;
|
|
|
+ }
|
|
|
+
|
|
|
+ BigDecimal salary = JSON.parseObject(teacherDefaultMusicGroupSalary.getSalaryRuleJson()).getBigDecimal(studentNum+"");
|
|
|
+
|
|
|
+ CourseScheduleTeacherSalary courseScheduleTeacherSalary = new CourseScheduleTeacherSalary();
|
|
|
+ courseScheduleTeacherSalary.setCourseScheduleId(courseSchedule.getId());
|
|
|
+ courseScheduleTeacherSalary.setGroupType(courseSchedule.getGroupType());
|
|
|
+ courseScheduleTeacherSalary.setMusicGroupId(courseSchedule.getMusicGroupId());
|
|
|
+ courseScheduleTeacherSalary.setTeacherRole(classGroupTeacher.getTeacherRole());
|
|
|
+ courseScheduleTeacherSalary.setUserId(classGroupTeacher.getUserId());
|
|
|
+ courseScheduleTeacherSalary.setExpectSalary(salary);
|
|
|
+ courseScheduleTeacherSalary.setClassGroupId(classGroup.getId());
|
|
|
+ courseScheduleTeacherSalary.setCreateTime(nowDate);
|
|
|
+ courseScheduleTeacherSalary.setUpdateTime(nowDate);
|
|
|
+ courseScheduleTeacherSalaryList.add(courseScheduleTeacherSalary);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ courseScheduleTeacherSalaryService.batchInsert(courseScheduleTeacherSalaryList);
|
|
|
+ }
|
|
|
+
|
|
|
// 5、加入班级群组
|
|
|
ImGroupMember[] imGroupMembers = new ImGroupMember[] { new ImGroupMember(studentId.toString()) };
|
|
|
imFeignService.groupJoin(new ImGroupModel(classGroup.getId().toString(), imGroupMembers, classGroup.getName()));
|
|
|
@@ -1930,6 +1975,9 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
|
|
|
// String numWaring = studentNum < 3 ? "人数不能小于3," : "人数不能大于5,";
|
|
|
// throw new BizException(classGroup.getName() + numWaring + "请调整");
|
|
|
// }
|
|
|
+ if(studentNum>5){
|
|
|
+ studentNum=5;
|
|
|
+ }
|
|
|
salary = JSON.parseObject(teacherDefaultMusicGroupSalary.getSalaryRuleJson()).getBigDecimal(studentNum.toString());
|
|
|
if(Objects.isNull(salary)){
|
|
|
throw new BizException("课酬设置异常");
|
|
|
@@ -2236,6 +2284,9 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
|
|
|
// String numWaring = studentNum < 3 ? "人数不能小于3," : "人数不能大于5,";
|
|
|
// throw new BizException(classGroup.getName() + numWaring + "请调整");
|
|
|
// }
|
|
|
+ if(studentNum>5){
|
|
|
+ studentNum=5;
|
|
|
+ }
|
|
|
salary = JSON.parseObject(teacherDefaultMusicGroupSalary.getSalaryRuleJson()).getBigDecimal(studentNum.toString());
|
|
|
if(Objects.isNull(salary)){
|
|
|
throw new BizException("课酬设置异常");
|
|
|
@@ -2525,6 +2576,9 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
|
|
|
// String numWaring = studentNum < 3 ? "人数不能小于3," : "人数不能大于5,";
|
|
|
// throw new BizException(classGroup.getName() + numWaring + "请调整");
|
|
|
// }
|
|
|
+ if(studentNum>5){
|
|
|
+ studentNum=5;
|
|
|
+ }
|
|
|
salary = JSON.parseObject(teacherDefaultMusicGroupSalary.getSalaryRuleJson()).getBigDecimal(studentNum.toString());
|
|
|
if(Objects.isNull(salary)){
|
|
|
throw new BizException("课酬设置异常");
|