Forráskód Böngészése

1、陪练课调整

Joburgess 5 éve
szülő
commit
4972dbf0de

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

@@ -1812,6 +1812,39 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
             result.put("info", "预约失败,声部选择错误,请重试。");
             return result;
         }
+
+        List<CourseSchedule> courseSchedules6 = courseScheduleDao.findTeacherCoursesWithIncludeDateRange(practiceGroup.getUserId(), allCourseDates.get(0), DateUtil.addMinutes(allCourseDates.get(0), practiceCourseMinutes));
+        List<CourseSchedule> courseSchedules7 = courseScheduleDao.findTeacherCoursesWithIncludeDateRange(practiceGroup.getUserId(), allCourseDates.get(1), DateUtil.addMinutes(allCourseDates.get(1), practiceCourseMinutes));
+        List<CourseSchedule> courseSchedules8 = courseScheduleDao.findTeacherCoursesWithIncludeDateRange(practiceGroup.getUserId(), allCourseDates.get(2), DateUtil.addMinutes(allCourseDates.get(2), practiceCourseMinutes));
+        List<CourseSchedule> courseSchedules9 = courseScheduleDao.findTeacherCoursesWithIncludeDateRange(practiceGroup.getUserId(), allCourseDates.get(3), DateUtil.addMinutes(allCourseDates.get(3), practiceCourseMinutes));
+
+        if (!CollectionUtils.isEmpty(courseSchedules6) || !CollectionUtils.isEmpty(courseSchedules7)
+                ||!CollectionUtils.isEmpty(courseSchedules8) || !CollectionUtils.isEmpty(courseSchedules9)) {
+            if (courseSchedules6 == null) {
+                courseSchedules6 = new ArrayList<>();
+            }
+            if (courseSchedules7 == null) {
+                courseSchedules7 = new ArrayList<>();
+            }
+            if (courseSchedules7 == null) {
+                courseSchedules7 = new ArrayList<>();
+            }
+            if (courseSchedules8 == null) {
+                courseSchedules8 = new ArrayList<>();
+            }
+            courseSchedules6.addAll(courseSchedules7);
+            courseSchedules6.addAll(courseSchedules8);
+            courseSchedules6.addAll(courseSchedules9);
+            for (int i = 0; i < courseSchedules6.size(); i++) {
+                if (courseSchedules6.get(i).getGroupType().equals(GroupType.PRACTICE)) {
+                    TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+                    result.put("status", "TEACHER_PRACTICE_REPEAT");
+                    result.put("info", "抱歉啦,当前所选时段组合,「" + teacher.getRealName() +"」老师已被预约,请选择其他时段或更换老师后重试。");
+                    return result;
+                }
+            }
+        }
+
         practiceGroup.setName(subject.getName() + "•" + sysUser.getUsername());
         practiceGroup.setSingleClassMinutes(practiceCourseMinutes);
         practiceGroupDao.insert(practiceGroup);