|
@@ -1,5 +1,6 @@
|
|
|
package com.ym.mec.biz.service.impl;
|
|
|
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.ym.mec.biz.dal.dao.*;
|
|
|
import com.ym.mec.biz.dal.dto.*;
|
|
@@ -18,10 +19,8 @@ import com.ym.mec.thirdparty.message.MessageSenderPluginContext;
|
|
|
import com.ym.mec.util.collection.MapUtil;
|
|
|
import com.ym.mec.util.date.DateUtil;
|
|
|
|
|
|
-import org.apache.poi.util.StringUtil;
|
|
|
import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
-import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.context.annotation.Lazy;
|
|
|
import org.springframework.stereotype.Service;
|
|
@@ -1107,6 +1106,81 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
|
|
|
*/
|
|
|
private List<CourseScheduleTeacherSalary> createMusicGroupCourseTeacerSalary(CourseSchedule courseSchedule, List<CourseScheduleTeacherSalary> courseScheduleTeacherSalaries) {
|
|
|
|
|
|
+
|
|
|
+// List<TeacherDefaultMusicGroupSalary> teacherSalaryList = teacherDefaultMusicGroupSalaryService.getTeacherSalaryByUserIdAndType(classGroupTeacherMapper.getUserId(), null, null);
|
|
|
+// BigDecimal salary = new BigDecimal("0");
|
|
|
+//
|
|
|
+// Map<CourseSchedule.CourseScheduleType, TeacherDefaultMusicGroupSalary> collect = teacherSalaryList.stream().collect(Collectors.toMap(TeacherDefaultMusicGroupSalary::getCourseScheduleType, teacherDefaultMusicGroupSalary -> teacherDefaultMusicGroupSalary));
|
|
|
+//
|
|
|
+// TeacherDefaultMusicGroupSalary teacherDefaultMusicGroupSalary = collect.get(classGroup4MixDto.getCourseType());
|
|
|
+//
|
|
|
+// Teacher teacher = teacherMap.get(classGroupTeacherMapper.getUserId());
|
|
|
+// if (teacherDefaultMusicGroupSalary == null) {
|
|
|
+// throw new BizException("请设置" + teacher.getRealName() + "老师的" + classGroup4MixDto.getCourseType().getMsg() + "课酬");
|
|
|
+// }
|
|
|
+//
|
|
|
+// //对应基准课酬
|
|
|
+// BigDecimal baseSalary = new BigDecimal(0), classTimeDuty = new BigDecimal(0);
|
|
|
+//
|
|
|
+// SalarySettlementTypeEnum settlementType = musicGroup.getSettlementType();
|
|
|
+// if (Objects.nonNull(teacher.getEntryDate())
|
|
|
+// && (teacher.getEntryDate().after(entryDate) || teacher.getEntryDate().getTime() == entryDate.getTime())) {
|
|
|
+// settlementType = SalarySettlementTypeEnum.GRADIENT_SALARY;
|
|
|
+// }
|
|
|
+//
|
|
|
+// //基准课酬
|
|
|
+// if (settlementType.equals(SalarySettlementTypeEnum.TEACHER_DEFAULT) && teacherDefaultMusicGroupSalary != null) {
|
|
|
+// //课程时长与结算单位时长占比
|
|
|
+// classTimeDuty = new BigDecimal(classCourseDuration).divide(new BigDecimal(30), CommonConstants.DECIMAL_PLACE, BigDecimal.ROUND_DOWN);
|
|
|
+// baseSalary = classGroupTeacherMapper.getTeacherRole().equals(TeachTypeEnum.BISHOP) ? teacherDefaultMusicGroupSalary.getMainTeacher30MinSalary() : teacherDefaultMusicGroupSalary.getAssistantTeacher30MinSalary();
|
|
|
+// }
|
|
|
+// //阶梯课酬
|
|
|
+// if (settlementType.equals(SalarySettlementTypeEnum.GRADIENT_SALARY) && teacherDefaultMusicGroupSalary != null) {
|
|
|
+// //课程时长与结算单位时长占比
|
|
|
+// classTimeDuty = new BigDecimal(classCourseDuration).divide(new BigDecimal(90), CommonConstants.DECIMAL_PLACE, BigDecimal.ROUND_DOWN);
|
|
|
+// baseSalary = classGroupTeacherMapper.getTeacherRole().equals(TeachTypeEnum.BISHOP) ? teacherDefaultMusicGroupSalary.getMainTeacher90MinSalary() : teacherDefaultMusicGroupSalary.getAssistantTeacher90MinSalary();
|
|
|
+// }
|
|
|
+//
|
|
|
+// //课堂课课酬改为按分钟数计算,并且时长占比向下取整
|
|
|
+// if (courseSchedule.getType().equals(CourseSchedule.CourseScheduleType.CLASSROOM)){
|
|
|
+// baseSalary = classGroupTeacherMapper.getTeacherRole().equals(TeachTypeEnum.BISHOP) ? teacherDefaultMusicGroupSalary.getMainTeacher30MinSalary() : teacherDefaultMusicGroupSalary.getAssistantTeacher30MinSalary();
|
|
|
+// classTimeDuty = new BigDecimal(classCourseDuration).divide(new BigDecimal(40), BigDecimal.ZERO.intValue(), BigDecimal.ROUND_DOWN);
|
|
|
+// }
|
|
|
+//
|
|
|
+// salary = baseSalary.multiply(classTimeDuty).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
+//
|
|
|
+// //基础技能提高课
|
|
|
+// if (classGroup4MixDto.getCourseType().equals(CourseSchedule.CourseScheduleType.HIGH)) {
|
|
|
+// salary = classGroupTeacherMapper.getTeacherRole().equals(TeachTypeEnum.BISHOP) ? teacherDefaultMusicGroupSalary.getMainTeacher30MinSalary() : teacherDefaultMusicGroupSalary.getAssistantTeacher30MinSalary();
|
|
|
+// if (settlementType.equals(SalarySettlementTypeEnum.GRADIENT_SALARY)) {
|
|
|
+// salary = classGroupTeacherMapper.getTeacherRole().equals(TeachTypeEnum.BISHOP) ? teacherDefaultMusicGroupSalary.getMainTeacher90MinSalary() : teacherDefaultMusicGroupSalary.getAssistantTeacher90MinSalary();
|
|
|
+// }
|
|
|
+// }
|
|
|
+// //线上小班课
|
|
|
+// if (classGroup4MixDto.getCourseType().equals(CourseSchedule.CourseScheduleType.HIGH_ONLINE)) {
|
|
|
+// Integer studentNum = classGroupStudentMapperDao.countClassGroupNormalStudentNum(classGroupTeacherMapper.getClassGroupId());
|
|
|
+// if (studentNum < 3 || studentNum > 5) {
|
|
|
+// String numWaring = studentNum < 3 ? "人数不能小于3," : "人数不能大于5,";
|
|
|
+// throw new BizException(classGroup.getName() + numWaring + "请调整");
|
|
|
+// }
|
|
|
+// salary = JSON.parseObject(teacherDefaultMusicGroupSalary.getSalaryRuleJson()).getBigDecimal(studentNum.toString());
|
|
|
+// }
|
|
|
+//
|
|
|
+// if (classGroup4MixDto.getCourseType().equals(CourseSchedule.CourseScheduleType.MUSIC_NETWORK)) {
|
|
|
+// salary = JSON.parseObject(teacherDefaultMusicGroupSalary.getSalaryRuleJson()).getBigDecimal("1");
|
|
|
+// }
|
|
|
+//
|
|
|
+// CourseScheduleTeacherSalary courseScheduleTeacherSalary = new CourseScheduleTeacherSalary();
|
|
|
+// courseScheduleTeacherSalary.setCourseScheduleId(courseSchedule.getId());
|
|
|
+// courseScheduleTeacherSalary.setGroupType(courseSchedule.getGroupType());
|
|
|
+// courseScheduleTeacherSalary.setMusicGroupId(courseSchedule.getMusicGroupId());
|
|
|
+// courseScheduleTeacherSalary.setTeacherRole(classGroupTeacherMapper.getTeacherRole());
|
|
|
+// courseScheduleTeacherSalary.setUserId(classGroupTeacherMapper.getUserId());
|
|
|
+// courseScheduleTeacherSalary.setExpectSalary(salary);
|
|
|
+// courseScheduleTeacherSalary.setClassGroupId(classGroup.getId());
|
|
|
+// courseScheduleTeacherSalary.setCreateTime(date);
|
|
|
+// courseScheduleTeacherSalary.setUpdateTime(date);
|
|
|
+// courseScheduleTeacherSalaryList.add(courseScheduleTeacherSalary);
|
|
|
return null;
|
|
|
}
|
|
|
}
|