Browse Source

feat: 课程合并

Joburgess 4 years ago
parent
commit
a4ccf332a4

+ 9 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleDao.java

@@ -1604,4 +1604,13 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
      * @return java.util.List<com.ym.mec.biz.dal.dto.CourseRepeatCheckDto>
      */
     List<CourseRepeatCheckDto> getCourseRepeatCheckInfos();
+
+    /**
+     * @describe 统计指定课程合并的课程数量
+     * @author qnc99
+     * @date 2020/11/27 0027
+     * @param courseId:
+     * @return int
+     */
+    int countCourseMergeTime(@Param("courseId") Long courseId);
 }

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

@@ -5240,12 +5240,19 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 		if(CollectionUtils.isEmpty(courseMergeInfo.getMergeCourseIds())){
 			throw new BizException("请选择需要合并的课程");
 		}
+		int courseMergeTime = courseScheduleDao.countCourseMergeTime(courseMergeInfo.getId());
+		if(courseMergeTime>0){
+			throw new BizException("存在已合并课程");
+		}
 		List<Long> allCourseIds = new ArrayList<>();
 		allCourseIds.add(courseMergeInfo.getId());
 		allCourseIds.addAll(courseMergeInfo.getMergeCourseIds());
 		List<CourseSchedule> allCourses = courseScheduleDao.findByCourseScheduleIds(allCourseIds);
 		Date now = new Date();
 		for (CourseSchedule courseSchedule : allCourses) {
+			if(Objects.nonNull(courseSchedule.getNewCourseId())){
+				throw new BizException("存在已合并课程");
+			}
 			if(courseSchedule.getStartClassTime().compareTo(now)<=0){
 				throw new BizException("课程合并仅支持未开始的课程");
 			}

+ 4 - 0
mec-biz/src/main/resources/config/mybatis/CourseScheduleMapper.xml

@@ -3319,4 +3319,8 @@
         WHERE cs.organ_id_!=41 AND cs.del_flag_=0 AND cs.create_time_>'2020-11-01 00:00:00' AND cs.create_time_&lt;'3000-01-01 00:00:00'
     </select>
 
+    <select id="countCourseMergeTime" resultType="int">
+        SELECT COUNT(id_) FROM course_schedule WHERE new_course_id_=#{courseId}
+    </select>
+
 </mapper>