Pārlūkot izejas kodu

1、乐团课新增排课教师课酬计算逻辑调整
2、陪练课接口
3、陪练课指派教师广东分部特殊处理

Joburgess 5 gadi atpakaļ
vecāks
revīzija
32b0d7bb8d

+ 18 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/PracticeGroupServiceImpl.java

@@ -214,6 +214,12 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
                     includeTeacherIds.add(teacherId);
                     continue;
                 }
+
+                Map<GroupType, Long> groupTypeCountMap = teacherCourses.stream().collect(Collectors.groupingBy(CourseSchedule::getGroupType, Collectors.counting()));
+                if(Objects.nonNull(groupTypeCountMap.get(GroupType.PRACTICE))&&groupTypeCountMap.get(GroupType.PRACTICE)>80){
+                    continue;
+                }
+
                 teacherCourses.sort(Comparator.comparing(CourseSchedule::getStartClassTime));
                 boolean enableCreateFirstCourse=true;
                 boolean enableCreateSecondCourse=true;
@@ -321,6 +327,12 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
                     includeTeacherIds.add(teacherId);
                     continue;
                 }
+
+                Map<GroupType, Long> groupTypeCountMap = teacherCourses.stream().collect(Collectors.groupingBy(CourseSchedule::getGroupType, Collectors.counting()));
+                if(Objects.nonNull(groupTypeCountMap.get(GroupType.PRACTICE))&&groupTypeCountMap.get(GroupType.PRACTICE)>80){
+                    continue;
+                }
+
                 teacherCourses.sort(Comparator.comparing(CourseSchedule::getStartClassTime));
                 boolean enableCreateFirstCourse=true;
                 boolean enableCreateSecondCourse=true;
@@ -465,6 +477,11 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
                     allTeacherFreeDates=new HashSet<>(enableApplyDates);
                     break;
                 }
+                Map<GroupType, Long> groupTypeCountMap = teacherCourses.stream().collect(Collectors.groupingBy(CourseSchedule::getGroupType, Collectors.counting()));
+                if(Objects.nonNull(groupTypeCountMap.get(GroupType.PRACTICE))&&groupTypeCountMap.get(GroupType.PRACTICE)>80){
+                    continue;
+                }
+
                 teacherCourses.sort(Comparator.comparing(CourseSchedule::getStartClassTime));
                 for (int j=0;j<teacherCourses.size()-1;j++) {
                     CourseSchedule preCourseSchedule = teacherCourses.get(j);
@@ -504,6 +521,7 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
             Set<String> days = allTeacherFreeDates.stream()
                     .map(date -> DateUtil.dateToString(date,"yyyy-MM-dd")).collect(Collectors.toSet());
             result.put("teacherFreeDays",days);
+            allTeacherFreeDates=allTeacherFreeDates.stream().sorted().collect(Collectors.toSet());
             result.put("teacherFreeDates",allTeacherFreeDates);
         }
         return result;

+ 2 - 1
mec-biz/src/main/resources/config/mybatis/CourseScheduleMapper.xml

@@ -2110,7 +2110,8 @@
             cs.class_date_,
             CONCAT(cs.class_date_,' ',cs.start_class_time_) start_class_time_,
             CONCAT(cs.class_date_,' ',cs.end_class_time_) end_class_time_,
-            csts.user_id_ actual_teacher_id_
+            csts.user_id_ actual_teacher_id_,
+            cs.group_type_
         FROM
             course_schedule_teacher_salary csts
             LEFT JOIN course_schedule cs ON cs.id_ = csts.course_schedule_id_