Преглед на файлове

Merge branch 'zx-06-15-live' of http://git.dayaedu.com/yonge/mec into master_saas

 Conflicts:
	mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java
zouxuan преди 2 години
родител
ревизия
2e6eb74ed5
променени са 1 файла, в които са добавени 32 реда и са изтрити 14 реда
  1. 32 14
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

+ 32 - 14
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -1872,9 +1872,10 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 	}
 
 	@Transactional(rollbackFor = Exception.class)
-    public Boolean checkCourseSchedules(List<CourseSchedule> courseSchedules, boolean checkExistCourseSchedule,Boolean postponeFlag,ClassGroupStudentMapper classGroupStudentMapper) {
+	public HttpResponseResult checkCourseSchedules(List<CourseSchedule> courseSchedules, boolean checkExistCourseSchedule,Boolean postponeFlag,ClassGroupStudentMapper classGroupStudentMapper) {
+
 		if (CollectionUtils.isEmpty(courseSchedules)) {
-			return false;
+			return BaseController.failed();
 		}
 		List<String> classDates = courseSchedules.stream().map(courseSchedule -> DateUtil.dateToString(courseSchedule.getClassDate(), "yyyy-MM-dd"))
 				.collect(Collectors.toList());
@@ -1928,8 +1929,12 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 				.collect(Collectors.toList());
 		//班级与学生的关联记录
 		List<ClassGroupStudentMapper> classGroupStudentMappers = classGroupStudentMapperDao.findByClassGroups(classGroupIds);
+		Boolean liveFlag = false;
 		if(Objects.nonNull(classGroupStudentMapper)){
 			classGroupStudentMappers.add(classGroupStudentMapper);
+			if(classGroupStudentMapper.getGroupType() == LIVE){
+				liveFlag = true;
+			}
 		}
 		Map<Integer, List<ClassGroupStudentMapper>> classGroupStudentsMap = classGroupStudentMappers
 				.stream()
@@ -1989,16 +1994,15 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 						if (Objects.nonNull(preCourseSchedule.getActualTeacherId())
 								&& preCourseSchedule.getActualTeacherId().equals(backCourseSchedule.getActualTeacherId())) {
 							if(postponeFlag){
-								return false;
+								return BaseController.failed();
 							}else {
+								if(liveFlag){
+									return BaseController.failed(HttpStatus.CHECKPOINT,
+											courseCheckInfo(preCourseSchedule, backCourseSchedule, existCourseScheduleIds, 1) + ",是否继续购买");
+								}
 								throw new BizException(courseCheckInfo(preCourseSchedule, backCourseSchedule, existCourseScheduleIds, 1));
 							}
 						}
-
-//                        if(Objects.isNull(preCourseSchedule.getId())){
-//                            continue;
-//                        }
-
 						//助教冲突检测
 						List<Integer> preTeachingTeacherIdList = new ArrayList<>();
 						List<Integer> backTeachingTeacherIdList = new ArrayList<>();
@@ -2038,8 +2042,12 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 									.collect(Collectors.toList());
 							if (!CollectionUtils.isEmpty(repeatIds)) {
 								if(postponeFlag){
-									return false;
+									return BaseController.failed();
 								}else {
+									if(liveFlag){
+										return BaseController.failed(HttpStatus.CHECKPOINT,
+												courseCheckInfo(preCourseSchedule, backCourseSchedule, existCourseScheduleIds, 2) + ",是否继续购买");
+									}
 									throw new BizException(courseCheckInfo(preCourseSchedule, backCourseSchedule, existCourseScheduleIds, 2));
 								}
 							}
@@ -2048,8 +2056,12 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 						if (preCourseSchedule.getClassGroupId().equals(backCourseSchedule.getClassGroupId())) {
 							//如果班级相同,则学生肯定存在冲突
 							if(postponeFlag){
-								return false;
+								return BaseController.failed();
 							}else {
+								if(liveFlag){
+									return BaseController.failed(HttpStatus.CHECKPOINT,
+											courseCheckInfo(preCourseSchedule, backCourseSchedule, existCourseScheduleIds, 3) + ",是否继续购买");
+								}
 								throw new BizException(courseCheckInfo(preCourseSchedule, backCourseSchedule, existCourseScheduleIds, 3));
 							}
 						}
@@ -2087,8 +2099,12 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 								.collect(Collectors.toList());
 						if (!CollectionUtils.isEmpty(repeatStudentIds)) {
 							if(postponeFlag){
-								return false;
+								return BaseController.failed();
 							}else {
+								if(liveFlag){
+									return BaseController.failed(HttpStatus.CHECKPOINT,
+											courseCheckInfo(preCourseSchedule, backCourseSchedule, existCourseScheduleIds, 3) + ",是否继续购买");
+								}
 								throw new BizException(courseCheckInfo(preCourseSchedule, backCourseSchedule, existCourseScheduleIds, 3));
 							}
 						}
@@ -2096,18 +2112,20 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 				}
 			}
 		}
-		return true;
+		return BaseController.succeed();
 	}
 
 	@Override
 	@Transactional(rollbackFor = Exception.class)
-    public Boolean checkNewCourseSchedules(List<CourseSchedule> courseSchedules, boolean checkExistCourseSchedule,Boolean postponeFlag,ClassGroupStudentMapper classGroupStudentMapper) {
+	public HttpResponseResult checkNewCourseSchedules(List<CourseSchedule> courseSchedules, boolean checkExistCourseSchedule,Boolean postponeFlag,ClassGroupStudentMapper classGroupStudentMapper) {
+
 		return this.checkCourseSchedules(courseSchedules,checkExistCourseSchedule,postponeFlag,classGroupStudentMapper);
 	}
 
 	@Override
 	@Transactional(rollbackFor = Exception.class)
-    public Boolean checkNewCourseSchedules(List<CourseSchedule> courseSchedules, boolean checkExistCourseSchedule,Boolean postponeFlag) {
+	public HttpResponseResult checkNewCourseSchedules(List<CourseSchedule> courseSchedules, boolean checkExistCourseSchedule,Boolean postponeFlag) {
+
 		return this.checkCourseSchedules(courseSchedules,checkExistCourseSchedule,postponeFlag,null);
 	}