yonge 4 rokov pred
rodič
commit
8b49e5b5cd

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/RemainCourseTypeDurationDto.java

@@ -7,6 +7,8 @@ public class RemainCourseTypeDurationDto {
 	private CourseScheduleType courseType;
 	
 	private Integer remainMinutes;
+	
+	private Integer tempMergedCourseNum;
 
 	public CourseScheduleType getCourseType() {
 		return courseType;
@@ -23,4 +25,12 @@ public class RemainCourseTypeDurationDto {
 	public void setRemainMinutes(Integer remainMinutes) {
 		this.remainMinutes = remainMinutes;
 	}
+
+	public Integer getTempMergedCourseNum() {
+		return tempMergedCourseNum;
+	}
+
+	public void setTempMergedCourseNum(Integer tempMergedCourseNum) {
+		this.tempMergedCourseNum = tempMergedCourseNum;
+	}
 }

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

@@ -45,6 +45,7 @@
     <resultMap type="com.ym.mec.biz.dal.dto.RemainCourseTypeDurationDto" id="RemainCourseTypeDurationDto">
         <result column="course_type_" property="courseType"/>
         <result column="remain_minutes_" property="remainMinutes"/>
+        <result column="temp_merged_course_num_" property="tempMergedCourseNum"/>
     </resultMap>
 
     <resultMap id="CourseScheduleEndDto" type="com.ym.mec.biz.dal.dto.CourseScheduleEndDto" extends="CourseSchedule">
@@ -3324,7 +3325,7 @@
 
     <select id="queryRemainCourseTypeDuration" resultMap="RemainCourseTypeDurationDto">
         SELECT cs.type_ course_type_,SUM(TIMESTAMPDIFF(MINUTE,STR_TO_DATE(concat(cs.class_date_,' ',cs.start_class_time_),'%Y-%m-%d %H:%i:%s'),
-        STR_TO_DATE(concat(cs.class_date_,' ',cs.end_class_time_),'%Y-%m-%d %H:%i:%s'))) remain_minutes_
+        STR_TO_DATE(concat(cs.class_date_,' ',cs.end_class_time_),'%Y-%m-%d %H:%i:%s'))) remain_minutes_,sum(case when cs.new_course_id_ is null then 0 else 1 end) temp_merged_course_num_
 		from course_schedule cs where FIND_IN_SET(cs.class_group_id_,#{classgroupId}) and cs.status_ = 'NOT_START' group by cs.type_
     </select>
 

+ 11 - 1
mec-web/src/main/java/com/ym/mec/web/controller/ClassGroupController.java

@@ -1,6 +1,7 @@
 package com.ym.mec.web.controller;
 
 import com.ym.mec.biz.dal.dto.MergeClassSplitClassAffirmDto;
+
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
@@ -25,6 +26,7 @@ import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dto.ClassGroup4MixDto;
 import com.ym.mec.biz.dal.dto.HighClassGroupDto;
+import com.ym.mec.biz.dal.dto.RemainCourseTypeDurationDto;
 import com.ym.mec.biz.dal.dto.TestDto;
 import com.ym.mec.biz.dal.entity.ClassGroup;
 import com.ym.mec.biz.dal.entity.ClassGroupTeacherMapper;
@@ -38,6 +40,7 @@ import com.ym.mec.biz.service.ClassGroupService;
 import com.ym.mec.biz.service.ClassGroupTeacherMapperService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.HttpResponseResult;
+import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.page.QueryInfo;
 
@@ -332,7 +335,14 @@ public class ClassGroupController extends BaseController {
     @GetMapping("/queryRemainCourseTypeDuration")
     @PreAuthorize("@pcs.hasPermissions('classGroup/queryRemainCourseTypeDuration')")
     public HttpResponseResult queryRemainCourseTypeDuration(String classGroupIdList){
-        return succeed(classGroupService.queryRemainCourseTypeDuration(classGroupIdList));
+    	
+    	List<RemainCourseTypeDurationDto> remainCourseTypeDurationDtoList = classGroupService.queryRemainCourseTypeDuration(classGroupIdList);
+    	for (RemainCourseTypeDurationDto dto : remainCourseTypeDurationDtoList) {
+			if(dto.getTempMergedCourseNum() > 0){
+				throw new BizException("班级中含有临时合并的课程,不能");
+			}
+		}
+        return succeed(remainCourseTypeDurationDtoList);
     }
 
     @ApiOperation(value = "进行中乐团-修改-班级详情-学员班级调整-班级剩余课次")