Browse Source

Merge branch 'online1'

Joburgess 5 years ago
parent
commit
1f18e016da

+ 7 - 8
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -2484,10 +2484,9 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 			List<TeacherAttendance> teacherAttendanceList = teacherAttendanceMap.get(courseScheduleId);
 
 			List<Integer> oldTeacherIdList = teacherAttendanceList.stream().map(TeacherAttendance::getTeacherId).distinct().collect(Collectors.toList());
-
-			Set<Integer> newTeacherIdList = new HashSet(newCourseSchedule.getTeachingTeacherIdList());
-			newTeacherIdList.add(newCourseSchedule.getActualTeacherId());
-			List<Integer> integerArrayList = new ArrayList<>(newTeacherIdList);
+            List<Integer> newTeacherIdList = new ArrayList<>();
+            newTeacherIdList.addAll(newCourseSchedule.getTeachingTeacherIdList());
+            newTeacherIdList.add(newCourseSchedule.getActualTeacherId());
 
 			if (newCourseSchedule.getStatus() != CourseStatusEnum.OVER) {
 				// 清理原来考勤
@@ -2548,7 +2547,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 			int newMinutes = DateUtil.minutesBetween(newCourseSchedule.getStartClassTime(), newCourseSchedule.getEndClassTime());
 
 			// 如果修改了老师、课程类型、课程时长、教学模式,需要修改课酬
-			if (!ListUtil.isEquals(oldTeacherIdList, integerArrayList) || newCourseSchedule.getType() != oldCourseSchedule.getType()
+			if (!ListUtil.isEquals(oldTeacherIdList, newTeacherIdList) || newCourseSchedule.getType() != oldCourseSchedule.getType()
 					|| newCourseSchedule.getTeachMode() != oldCourseSchedule.getTeachMode() || oldMinutes != newMinutes) {
 
 				Map<Integer, Teacher> teacherMap = null;
@@ -2556,11 +2555,11 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 
 				if (newCourseSchedule.getGroupType() == GroupType.MUSIC) {
 					// 所有教师列表
-					List<Teacher> teachers = teacherDao.findByTeacherIds(integerArrayList);
+					List<Teacher> teachers = teacherDao.findByTeacherIds(newTeacherIdList);
 					teacherMap = teachers.stream().collect(Collectors.toMap(Teacher::getId, teacher -> teacher));
 
 					// 所有老师默认乐团课酬
-					List<TeacherDefaultMusicGroupSalary> teacherDefaultMusicGroupSalaries = teacherDefaultMusicGroupSalaryDao.findByTeacher(integerArrayList);
+					List<TeacherDefaultMusicGroupSalary> teacherDefaultMusicGroupSalaries = teacherDefaultMusicGroupSalaryDao.findByTeacher(newTeacherIdList);
 					for (TeacherDefaultMusicGroupSalary tdms : teacherDefaultMusicGroupSalaries) {
 						Map<CourseScheduleType, TeacherDefaultMusicGroupSalary> map = musicGroupSalaryMap.get(tdms.getUserId());
 						if (map == null) {
@@ -2575,7 +2574,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 				}
 
 				// 所有老师默认vip课酬
-				List<TeacherDefaultVipGroupSalary> teacherDefaultVipGroupSalaries = teacherDefaultVipGroupSalaryDao.queryByUserIdList(integerArrayList);
+				List<TeacherDefaultVipGroupSalary> teacherDefaultVipGroupSalaries = teacherDefaultVipGroupSalaryDao.queryByUserIdList(newTeacherIdList);
 				Map<Integer, Map<Integer, TeacherDefaultVipGroupSalary>> vipGroupSalaryMap = new HashMap<Integer, Map<Integer, TeacherDefaultVipGroupSalary>>();
 				for (TeacherDefaultVipGroupSalary tdvs : teacherDefaultVipGroupSalaries) {
 					Map<Integer, TeacherDefaultVipGroupSalary> map = vipGroupSalaryMap.get(tdvs.getUserId());

+ 6 - 6
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleTeacherSalaryServiceImpl.java

@@ -382,7 +382,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
             List<CourseScheduleComplaints> courseStudentComplaints = complaintsGroupByCourse.get(courseScheduleTeacherSalary.getCourseScheduleId());
 
             //如果存在投诉记录,需要扣除相应费用
-            if (Objects.nonNull(courseStudentComplaints)) {
+            /*if (Objects.nonNull(courseStudentComplaints)) {
                 //获取审批中的投诉
                 List<CourseScheduleComplaints> auditIng = courseStudentComplaints.stream().filter(courseScheduleComplaint -> courseScheduleComplaint.getStatus() == AuditStatusEnum.ING).collect(Collectors.toList());
                 if (!CollectionUtils.isEmpty(auditIng)) {
@@ -390,12 +390,12 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
                     return;
                 }
                 //计算教师责任总占比
-//                double teacherLiabilityRatioSum = courseStudentComplaints.stream().mapToDouble(courseScheduleComplaint -> Objects.isNull(courseScheduleComplaint.getTeacherLiabilityRatio()) ? 0 : courseScheduleComplaint.getTeacherLiabilityRatio()).sum();
-//                teacherLiabilityAllratio = new BigDecimal(teacherLiabilityRatioSum).divide(percent,CommonConstants.DECIMAL_PLACE,BigDecimal.ROUND_DOWN);
+                double teacherLiabilityRatioSum = courseStudentComplaints.stream().mapToDouble(courseScheduleComplaint -> Objects.isNull(courseScheduleComplaint.getTeacherLiabilityRatio()) ? 0 : courseScheduleComplaint.getTeacherLiabilityRatio()).sum();
+                teacherLiabilityAllratio = new BigDecimal(teacherLiabilityRatioSum).divide(percent,CommonConstants.DECIMAL_PLACE,BigDecimal.ROUND_DOWN);
             } else {
                 //如果没有投诉,则教师和学生的责任占比为0
-//                teacherLiabilityAllratio = new BigDecimal(0);
-            }
+                teacherLiabilityAllratio = new BigDecimal(0);
+            }*/
 
             //教师应扣除费用
             /*BigDecimal deductPrice = avgSalary.multiply(teacherLiabilityAllratio);
@@ -1007,7 +1007,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
         BigDecimal totalSalary = BigDecimal.ZERO;
         for (CourseTeacherSalaryStatisticsDto teacherMonthSalary : teacherMonthSalarys) {
             if(Objects.nonNull(teacherMonthSalary.getTotalReduceSalary())){
-                teacherMonthSalary.setTotalActualSalary(teacherMonthSalary.getTotalReduceSalary().subtract(teacherMonthSalary.getTotalReduceSalary()));
+                teacherMonthSalary.setTotalActualSalary(teacherMonthSalary.getTotalActualSalary().subtract(teacherMonthSalary.getTotalReduceSalary()));
             }
             totalSalary = totalSalary.add(teacherMonthSalary.getTotalActualSalary());
         }

+ 1 - 3
mec-biz/src/main/resources/config/mybatis/PracticeGroupMapper.xml

@@ -183,12 +183,10 @@
     </select>
     <select id="findAllByOrgan" resultMap="PracticeGroupDto">
         SELECT pg.*,
-        su.real_name_ teacher_name_,
-        CASE WHEN COUNT(cs.id_) > 0 THEN 1 ELSE 0 END hasRestClass
+        su.real_name_ teacher_name_
         FROM
         practice_group pg
         LEFT JOIN sys_user su ON pg.user_id_ = su.id_
-        LEFT JOIN course_schedule cs ON (FIND_IN_SET(cs.music_group_id_,pg.id_) AND CONCAT(cs.class_date_,' ',cs.start_class_time_) > NOW() AND cs.group_type_ = 'PRACTICE')
         <include refid="practiceGroupQueryCondition"/>
         GROUP BY pg.id_ ORDER BY pg.id_ DESC
         <include refid="global.limit"/>