Jelajahi Sumber

当前课次字段调整

Joburgess 5 tahun lalu
induk
melakukan
0ee9cfecc9

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

@@ -53,13 +53,6 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
     /**
      * @Author: Joburgess
      * @Date: 2019/9/23
-     * 根据班级id获取已添加最大课次
-     */
-    String[] getMaxClassTimeByClassIds(List<Long> ids);
-
-    /**
-     * @Author: Joburgess
-     * @Date: 2019/9/23
      * 统计教师在一天内有时间重复的课数
      */
     int countTeacherCourseInOnDayRepeats(CourseSchedule courseSchedule);

+ 0 - 7
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/VipGroupDao.java

@@ -44,13 +44,6 @@ public interface VipGroupDao extends BaseDAO<Long, VipGroup> {
 	/**
 	 * @Author: Joburgess
 	 * @Date: 2019/9/23
-	 * 获取小课当前课时
-	 */
-	int getVipGroupCurrentClassTime(Long vipGroupId);
-
-	/**
-	 * @Author: Joburgess
-	 * @Date: 2019/9/23
 	 * 获取小课考勤记录
 	 */
     List<CourseSchedule> findVipGroupAttendances(Map<String,Object> params);

+ 2 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/CourseScheduleService.java

@@ -23,14 +23,14 @@ public interface CourseScheduleService extends BaseService<Long, CourseSchedule>
      * @Date: 2019/9/17
      * 批量插入课程计划
      */
-    String batchAddCourseSchedule(List<CourseSchedule> courseSchedules);
+    void batchAddCourseSchedule(List<CourseSchedule> courseSchedules);
 
     /**
      * @Author: Joburgess
      * @Date: 2019/9/17
      * 批量更新课程计划
      */
-    String batchUpdateCourseSchedule(List<CourseSchedule> courseSchedules,Long musicGroupID);
+    void batchUpdateCourseSchedule(List<CourseSchedule> courseSchedules,Long musicGroupID);
 
     /**
      * @Author: Joburgess

+ 24 - 34
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -43,26 +43,16 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 	}
 
 	@Override
-	public String batchAddCourseSchedule(List<CourseSchedule> courseSchedules) {
-		String result=checkCourseSchedule(courseSchedules);
-		if(result.isEmpty()){
-			courseScheduleDao.batchAddCourseSchedules(courseSchedules);
-			return result;
-		}else{
-			return result;
-		}
+	public void batchAddCourseSchedule(List<CourseSchedule> courseSchedules) {
+		checkCourseSchedule(courseSchedules);
+		courseScheduleDao.batchAddCourseSchedules(courseSchedules);
 	}
 
 	@Override
-	public String batchUpdateCourseSchedule(List<CourseSchedule> courseSchedules, Long musicGroupID) {
-		String result=checkCourseSchedule(courseSchedules);
-		if(result.isEmpty()){
-			courseScheduleDao.deleteCourseSchedulesByMusicGroupID(musicGroupID);
-			courseScheduleDao.batchAddCourseSchedules(courseSchedules);
-			return result;
-		}else{
-			return result;
-		}
+	public void batchUpdateCourseSchedule(List<CourseSchedule> courseSchedules, Long musicGroupID) {
+		checkCourseSchedule(courseSchedules);
+        courseScheduleDao.deleteCourseSchedulesByMusicGroupID(musicGroupID);
+        courseScheduleDao.batchAddCourseSchedules(courseSchedules);
 	}
 
 	@Override
@@ -81,7 +71,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 	 * @param courseSchedules
 	 * @return
 	 */
-	private String checkCourseSchedule(List<CourseSchedule> courseSchedules){
+	private void checkCourseSchedule(List<CourseSchedule> courseSchedules){
 		Map<Date, List<CourseSchedule>> collect = courseSchedules.stream().collect(Collectors.groupingBy(CourseSchedule::getClassDate));
 		for(Date keyDate:collect.keySet()){
 			List<CourseSchedule> currentCourses=collect.get(keyDate);
@@ -96,34 +86,34 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 								Collectors.groupingBy(CourseSchedule::getTeacherId));
 						for (Long teacherID:collect2.keySet()){
 							if(collect2.get(teacherID).size()>ParamEnum.ONE.getCode()){
-								return new SimpleDateFormat("yyyy-MM-dd").format(keyDate)+"日的课程安排在教师分配上有冲突!";
+								throw new BizException(new SimpleDateFormat("yyyy-MM-dd").format(keyDate)+"日的课程安排在教师分配上有冲突!");
 							}
 						}
 						List<Integer> repeatClassGroupIds = currentCourses1.stream().map(CourseSchedule::getClassGroupId).collect(Collectors.toList());
 						Integer[] counts=courseScheduleDao.countStudentInClass(repeatClassGroupIds);
 						for (Integer i:counts){
 							if (i>ParamEnum.ONE.getCode()){
-								return new SimpleDateFormat("yyyy-MM-dd").format(keyDate)+"日的课程安排有学生重复!";
+								throw new BizException(new SimpleDateFormat("yyyy-MM-dd").format(keyDate)+"日的课程安排有学生重复!");
 							}
 						}
 					}
 				}
 			}
 		}
-		Map<Integer, List<CourseSchedule>> classGroupByID = courseSchedules.stream().collect(Collectors.groupingBy(CourseSchedule::getClassGroupId));
-		List<Long> ids=new ArrayList<>();
-		for (Integer key:classGroupByID.keySet()){
-			ids.add(Long.valueOf(key));
-		}
-		Map<Integer, Integer> maxClassTimes = convertToMap(courseScheduleDao.getMaxClassTimeByClassIds(ids));
-		courseSchedules.clear();
-		for (Integer key:classGroupByID.keySet()){
-			Integer maxClassTime = null == maxClassTimes.get(key) ? 0 : maxClassTimes.get(key);
-			for(CourseSchedule courseSchedule:classGroupByID.get(key)){
-				courseSchedules.add(courseSchedule);
-			}
-		}
-		return "";
+		//课次创建
+//		Map<Integer, List<CourseSchedule>> classGroupByID = courseSchedules.stream().collect(Collectors.groupingBy(CourseSchedule::getClassGroupId));
+//		List<Long> ids=new ArrayList<>();
+//		for (Integer key:classGroupByID.keySet()){
+//			ids.add(Long.valueOf(key));
+//		}
+//		Map<Integer, Integer> maxClassTimes = convertToMap(courseScheduleDao.getMaxClassTimeByClassIds(ids));
+//		courseSchedules.clear();
+//		for (Integer key:classGroupByID.keySet()){
+//			Integer maxClassTime = null == maxClassTimes.get(key) ? 0 : maxClassTimes.get(key);
+//			for(CourseSchedule courseSchedule:classGroupByID.get(key)){
+//				courseSchedules.add(courseSchedule);
+//			}
+//		}
 	}
 
 	private Map<Integer,Integer> convertToMap(String[] result){

+ 0 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java

@@ -92,7 +92,6 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 	@Override
 	public VipGroupManageDetailDto getVipGroupDetail(Long vipGroupId) {
 		VipGroupManageDetailDto vipGroupBaseInfo = vipGroupDao.getVipGroupBaseInfo(vipGroupId);
-		vipGroupBaseInfo.setLatestClassTime(vipGroupDao.getVipGroupCurrentClassTime(vipGroupId));
 		return vipGroupBaseInfo;
 	}
 

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

@@ -20,7 +20,6 @@
         <result column="update_time_" property="updateTime"/>
         <result column="teach_mode_" property="teachMode" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
         <result column="complaint_status_" property="complaintStatus"/>
-        <result column="current_class_times_" property="currentClassTimes"/>
     </resultMap>
 
     <resultMap type="com.ym.mec.biz.dal.dto.CourseScheduleDto" id="courseScheduleDto" extends="CourseSchedule">
@@ -91,9 +90,6 @@
             <if test="updateTime != null">
                 update_time_ = #{updateTime},
             </if>
-            <if test="currentClassTimes!=null">
-                current_class_times_=#{currentClassTimes}
-            </if>
         </set>
         WHERE id_ = #{id}
     </update>
@@ -225,20 +221,6 @@
         GROUP BY cs.class_date_
     </select>
 
-    <select id="getMaxClassTimeByClassIds" resultType="string">
-        SELECT
-        concat(class_group_id_,",",IF(MAX( current_class_times_ ) IS NULL,0,MAX( current_class_times_ )))
-        FROM
-        course_schedule
-        WHERE
-        class_group_id_ IN
-        <foreach collection="list" item="id" open="(" close=")" separator=",">
-            #{id}
-        </foreach>
-        GROUP BY
-        class_group_id_
-    </select>
-
     <select id="countTeacherCourseInOnDayRepeats" parameterType="com.ym.mec.biz.dal.entity.CourseSchedule" resultType="int">
         SELECT
         COUNT( * )

+ 3 - 11
mec-biz/src/main/resources/config/mybatis/VipGroupMapper.xml

@@ -28,6 +28,7 @@
 
     <resultMap id="vipGroupManageDetailDto" type="com.ym.mec.biz.dal.dto.VipGroupManageDetailDto" extends="VipGroup">
         <result property="studentNum" column="student_num_"/>
+        <result property="latestClassTime" column="current_class_times_"/>
         <collection property="students" ofType="com.ym.mec.auth.api.entity.SysUser" column="user_id_">
             <result property="id" column="user_id_"/>
             <result property="username" column="username_"/>
@@ -174,10 +175,11 @@
         FROM
             vip_group vg
     </select>
-    <select id="getVipGroupBaseInfo">
+    <select id="getVipGroupBaseInfo" resultMap="vipGroupManageDetailDto">
         SELECT
             vg.*,
             cg.student_num_,
+            cg.current_class_times_,
             su.*
         FROM
             vip_group vg
@@ -188,16 +190,6 @@
         WHERE vg.id_=1
         ORDER BY vg.id_ DESC
     </select>
-    <select id="getVipGroupCurrentClassTime">
-        SELECT
-        if(MAX(cs.current_class_times_) IS NULL,0,MAX(cs.current_class_times_))
-        FROM
-        vip_group vg
-        LEFT JOIN vip_group_class_group_mapper vgcgm ON vg.id_=vgcgm.vip_group_id_
-        LEFT JOIN course_schedule cs ON vgcgm.class_group_id_=cs.class_group_id_
-        WHERE vg.id_=1 AND CONCAT(cs.class_date_,' ',cs.end_class_time_)&lt;now()
-        GROUP BY cs.id_
-    </select>
 
     <sql id="vipGroupAttendanceQueryCondition">
         <where>