|
@@ -333,23 +333,6 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
|
|
|
List<Teacher> teachers = teacherDao.findByTeacherIds(new ArrayList<>(teacherIds));
|
|
|
Map<Integer, Teacher> idTeacherMap = teachers.stream().collect(Collectors.toMap(Teacher::getId, t -> t, (t1, t2) -> t1));
|
|
|
|
|
|
- for (TeacherVipSalaryDto ts : teacherSalaryList) {
|
|
|
- try {
|
|
|
- //按照活动重新计算课酬
|
|
|
- VipGroup vipGroup = vipGroupService.get(Long.valueOf(ts.getMusicGroupId()));
|
|
|
- Map<String, BigDecimal> teachModeSalaryMap = vipGroupService.countVipGroupCoursePredictFee(vipGroup, ts.getUserId(), ts.getCourseScheduleId());
|
|
|
- if(TeachModeEnum.ONLINE.equals(ts.getTeachMode())&&teachModeSalaryMap.containsKey("onlineTeacherSalary")){
|
|
|
- ts.setExpectSalary(teachModeSalaryMap.get("onlineTeacherSalary"));
|
|
|
- }else if(TeachModeEnum.OFFLINE.equals(ts.getTeachMode())&&teachModeSalaryMap.containsKey("offlineTeacherSalary")){
|
|
|
- ts.setExpectSalary(teachModeSalaryMap.get("offlineTeacherSalary"));
|
|
|
- }
|
|
|
- } catch (NumberFormatException e) {
|
|
|
- LOGGER.error("课酬计算错误:",ts.getCourseScheduleId(), e.getCause());
|
|
|
- ts.setExpectSalary(BigDecimal.ZERO);
|
|
|
- }
|
|
|
- courseScheduleTeacherSalaryDao.update(ts);
|
|
|
- }
|
|
|
-
|
|
|
//获取教师未结算课程记录
|
|
|
List<CourseScheduleTeacherSalary> someDayAgoTeacherCourseSalaryNoSettlement = courseScheduleTeacherSalaryDao.findSomeDayAgoTeacherCourseSalaryNoSettlement(startDate,endDate);
|
|
|
if (CollectionUtils.isEmpty(someDayAgoTeacherCourseSalaryNoSettlement)) {
|
|
@@ -559,17 +542,6 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
|
|
|
Teacher teacher = idTeacherMap.get(courseScheduleTeacherSalary.getUserId());
|
|
|
|
|
|
if(CourseSchedule.CourseScheduleType.MUSIC_NETWORK.equals(courseSchedule.getType())||CourseSchedule.CourseScheduleType.HIGH_ONLINE.equals(courseSchedule.getType())){
|
|
|
- //根据课程类型获取对应的默认课酬设置列表
|
|
|
- List<TeacherDefaultMusicGroupSalary> teacherDefaultMusicGroupSalariesWithCourseType = teacherDefaultMusicGroupSalariesGroupByCourseType.get(courseSchedule.getType());
|
|
|
- if (CollectionUtils.isEmpty(teacherDefaultMusicGroupSalariesWithCourseType)) {
|
|
|
- LOGGER.error("存在未指定结算方式的课程类型[{}]", courseScheduleTeacherSalary.getId());
|
|
|
- }
|
|
|
-
|
|
|
- //根据教师编号将对应结算方式下的默认课酬设置分组
|
|
|
- Map<Integer, TeacherDefaultMusicGroupSalary> teacherDefaultMusicGroupSalariesGroupByTeacherId = teacherDefaultMusicGroupSalariesWithCourseType.stream().collect(Collectors.toMap(TeacherDefaultMusicGroupSalary::getUserId, teacherDefaultMusicGroupSalary -> teacherDefaultMusicGroupSalary));
|
|
|
-
|
|
|
- TeacherDefaultMusicGroupSalary teacherDefaultMusicGroupSalaryWithTeacherId = teacherDefaultMusicGroupSalariesGroupByTeacherId.get(courseScheduleTeacherSalary.getUserId());
|
|
|
-
|
|
|
Long normalStudentNum = courseNormalStudentsMap.get(courseSchedule.getId());
|
|
|
if(Objects.isNull(normalStudentNum)){
|
|
|
normalStudentNum = Long.valueOf(0);
|
|
@@ -577,13 +549,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
|
|
|
if(normalStudentNum>5){
|
|
|
normalStudentNum=Long.valueOf(5);
|
|
|
}
|
|
|
- if(Objects.nonNull(teacherDefaultMusicGroupSalaryWithTeacherId)&& org.apache.commons.lang3.StringUtils.isNoneBlank(teacherDefaultMusicGroupSalaryWithTeacherId.getSalaryRuleJson())){
|
|
|
- JSONObject salaryRuleJsonObject = JSONObject.parseObject(teacherDefaultMusicGroupSalaryWithTeacherId.getSalaryRuleJson());
|
|
|
- teacherSalary = salaryRuleJsonObject.getBigDecimal(normalStudentNum.toString());
|
|
|
- }
|
|
|
- if(Objects.isNull(teacherSalary)){
|
|
|
- teacherSalary = BigDecimal.ZERO;
|
|
|
- }
|
|
|
+
|
|
|
List<String> deductReasons = new ArrayList<>();
|
|
|
|
|
|
BigDecimal subsidy = courseSubsidyMap.get(courseSchedule.getId());
|