zouxuan 1 рік тому
батько
коміт
8009230666

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

@@ -45,6 +45,8 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
 
     int batchAddCourseSchedules(List<CourseSchedule> courseSchedules);
 
+    int batchAddCourseSchedulesHasId(List<CourseSchedule> courseSchedules);
+
     int batchInsert(List<CourseSchedule> courseSchedules);
 
     /**

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

@@ -137,6 +137,8 @@ public interface CourseScheduleService extends BaseService<Long, CourseSchedule>
 	 */
 	void batchAddCourseSchedule(List<CourseSchedule> courseSchedules);
 
+	void batchAddCourse(List<CourseSchedule> courseSchedules);
+
 	/**
 	 * @describe 创建乐团课课程计划
 	 * @author Joburgess

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

@@ -2489,7 +2489,7 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
             //冲突校验
             courseScheduleList = autoAdjust(classGroup4MixDto, courseScheduleList, classAdjust);
 
-            courseScheduleDao.batchAddCourseSchedules(courseScheduleList);
+            courseScheduleService.batchAddCourse(courseScheduleList);
 
             //计算每节课的课酬
             List<CourseScheduleTeacherSalary> courseScheduleTeacherSalaryList = new ArrayList<>();

+ 13 - 3
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -1014,7 +1014,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
         }
 //        checkNewCourseSchedules(courseSchedules, false,false);
         createCourseScheduleName(courseSchedules);
-        courseScheduleDao.batchAddCourseSchedules(courseSchedules);
+		this.batchAddCourse(courseSchedules);
 		courseScheduleModifyLogService.pushSchoolCourseCreate(courseSchedules.get(0));
     }
 
@@ -1026,11 +1026,21 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
         }
         checkNewCourseSchedules(courseSchedules, false,false);
         createCourseScheduleName(courseSchedules);
-		courseScheduleDao.batchAddCourseSchedules(courseSchedules);
+		this.batchAddCourse(courseSchedules);
 		courseScheduleModifyLogService.pushSchoolCourseCreate(courseSchedules.get(0));
     }
 
-    @Override
+	@Override
+	public void batchAddCourse(List<CourseSchedule> courseSchedules) {
+		CourseSchedule courseSchedule = courseSchedules.get(0);
+		if(courseSchedule.getId() == null){
+			courseScheduleDao.batchAddCourseSchedules(courseSchedules);
+		}else {
+			courseScheduleDao.batchAddCourseSchedulesHasId(courseSchedules);
+		}
+	}
+
+	@Override
     @Transactional(rollbackFor = Exception.class)
     public void batchUpdateCourseSchedule(List<CourseSchedule> courseSchedules, String musicGroupID) {
         if (Objects.isNull(courseSchedules) && courseSchedules.size() <= 0) {

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

@@ -230,7 +230,7 @@ public class CoursesGroupServiceImpl extends BaseServiceImpl<Long, CoursesGroup>
             errMessage += courseTime;
             return BaseController.failed(HttpStatus.FOUND, errMessage);
         }
-        courseScheduleDao.batchAddCourseSchedules(newCourses);
+        courseScheduleService.batchAddCourse(newCourses);
 
         for (CourseSchedule courseSchedule : newCourses) {
             //课程与老师薪水表

+ 3 - 3
mec-biz/src/main/java/com/ym/mec/biz/service/impl/EduPracticeGroupServiceImpl.java

@@ -383,7 +383,7 @@ public class EduPracticeGroupServiceImpl implements EduPracticeGroupService{
             courseSchedule.setIsLock(1);
             courseSchedule.setOrganId(practiceGroupBuyParams.getOrganId());
         }
-        courseScheduleDao.batchAddCourseSchedules(practiceCourses);
+        courseScheduleService.batchAddCourse(practiceCourses);
         TeacherDefaultPracticeGroupSalary teacherDefaultPracticeGroupSalary = teacherDefaultPracticeGroupSalaryDao.findByTeacherAndCourseMinutes(practiceGroupBuyParams.getUserId(),practiceCourseMinutes);
         BigDecimal teacherDefaultSalary=null;
         if(Objects.nonNull(teacherDefaultPracticeGroupSalary)){
@@ -715,7 +715,7 @@ public class EduPracticeGroupServiceImpl implements EduPracticeGroupService{
             courseSchedule.setIsLock(1);
             courseSchedule.setOrganId(practiceGroupBuyParams.getOrganId());
         }
-        courseScheduleDao.batchAddCourseSchedules(practiceCourses);
+        courseScheduleService.batchAddCourse(practiceCourses);
         TeacherDefaultPracticeGroupSalary teacherDefaultPracticeGroupSalary = teacherDefaultPracticeGroupSalaryDao.findByTeacherAndCourseMinutes(practiceGroupBuyParams.getUserId(),practiceCourseMinutes);
         BigDecimal teacherDefaultSalary=null;
         if(PracticeGroupType.COME_ON_PACKAGE.equals(practiceGroupBuyParams.getType())){
@@ -1446,7 +1446,7 @@ public class EduPracticeGroupServiceImpl implements EduPracticeGroupService{
             practiceCourses.add(courseSchedule);
         }
         practiceCourses.sort(Comparator.comparing(CourseSchedule::getStartClassTime));
-        courseScheduleDao.batchAddCourseSchedules(practiceCourses);
+        courseScheduleService.batchAddCourse(practiceCourses);
 
         BigDecimal teacherDefaultSalary=new BigDecimal(16.67);
         for (CourseSchedule courseSchedule : practiceCourses) {

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

@@ -191,7 +191,7 @@ public class OnlineMusicGroupServiceImpl implements OnlineMusicGroupService {
             courseSchedule.setIsLock(0);
             courseSchedule.setOrganId(student.getOrganId());
         }
-        courseScheduleDao.batchAddCourseSchedules(courses);
+        courseScheduleService.batchAddCourse(courses);
         TeacherDefaultMusicGroupSalary teacherDefaultMusicGroupSalary = teacherDefaultMusicGroupSalaryDao.findByTeacherAndCourseType(onlineMusicGroupCourseInfo.getTeacherId(), CourseSchedule.CourseScheduleType.MUSIC_NETWORK.getCode());
         if(Objects.isNull(teacherDefaultMusicGroupSalary)){
             throw new BizException("请设置教师课酬");

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

@@ -2493,7 +2493,7 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
             courseSchedule.setIsLock(1);
             courseSchedule.setOrganId(practiceGroupBuyParams.getOrganId());
         }
-        courseScheduleDao.batchAddCourseSchedules(practiceCourses);
+        courseScheduleService.batchAddCourse(practiceCourses);
         TeacherDefaultPracticeGroupSalary teacherDefaultPracticeGroupSalary = teacherDefaultPracticeGroupSalaryDao.findByTeacherAndCourseMinutes(practiceGroupBuyParams.getUserId(), practiceCourseMinutes);
         BigDecimal teacherDefaultSalary = null;
         if (Objects.nonNull(teacherDefaultPracticeGroupSalary)) {
@@ -2929,7 +2929,7 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
             courseSchedule.setIsLock(1);
             courseSchedule.setOrganId(practiceGroupBuyParams.getOrganId());
         }
-        courseScheduleDao.batchAddCourseSchedules(practiceCourses);
+        courseScheduleService.batchAddCourse(practiceCourses);
         TeacherDefaultPracticeGroupSalary teacherDefaultPracticeGroupSalary = teacherDefaultPracticeGroupSalaryDao.findByTeacherAndCourseMinutes(practiceGroupBuyParams.getUserId(), practiceCourseMinutes);
         BigDecimal teacherDefaultSalary = null;
         if (Objects.nonNull(teacherDefaultPracticeGroupSalary)) {
@@ -4811,7 +4811,7 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
             courseSchedule.setIsLock(0);
             courseSchedule.setOrganId(practiceGroupBuyParams.getOrganId());
         }
-        courseScheduleDao.batchAddCourseSchedules(practiceCourses);
+        courseScheduleService.batchAddCourse(practiceCourses);
         TeacherDefaultPracticeGroupSalary teacherDefaultPracticeGroupSalary = teacherDefaultPracticeGroupSalaryDao.findByTeacherAndCourseMinutes(practiceGroupBuyParams.getUserId(), practiceCourseMinutes);
         BigDecimal teacherDefaultSalary = null;
         if (Objects.nonNull(teacherDefaultPracticeGroupSalary)) {

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

@@ -238,7 +238,24 @@
         #{schoolId},#{isLock},#{note},#{teachingContent},#{organId},#{memberFlag},#{preCourseFlag},#{validEndTime},#{validStartTime},#{tenantId},#{convertFlag})
     </insert>
 
-    <insert id="batchAddCourseSchedules" parameterType="java.util.List" keyColumn="id" keyProperty="id">
+    <insert id="batchAddCourseSchedules" parameterType="java.util.List" useGeneratedKeys="true" keyColumn="id"
+            keyProperty="id">
+        INSERT INTO course_schedule
+        (id_,group_type_,music_group_id_,class_group_id_,status_,subsidy_,class_date_,start_class_time_,end_class_time_,
+        teacher_id_,actual_teacher_id_,type_,name_,teach_mode_,student_num_,leave_student_num_,
+        schoole_id_,is_lock_,note_,teaching_content_,organ_id_,member_flag_,pre_course_flag_,valid_end_time_,valid_start_time_,tenant_id_,teaching_point_)
+        VALUE
+        <foreach collection="list" item="course" separator=",">
+            (#{course.id},#{course.groupType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{course.musicGroupId},
+            #{course.classGroupId},#{course.status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
+            #{course.subsidy},#{course.classDate},#{course.startClassTime},#{course.endClassTime},#{course.teacherId},
+            #{course.teacherId},#{course.type,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
+            #{course.name},#{course.teachMode,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{course.studentNum},
+            #{course.leaveStudentNum},#{course.schoolId},#{course.isLock},#{course.note},#{course.teachingContent},
+            #{course.organId},#{course.memberFlag},#{course.preCourseFlag},#{course.validEndTime},#{course.validStartTime},#{course.tenantId},#{course.teachingPoint})
+        </foreach>
+    </insert>
+    <insert id="batchAddCourseSchedulesHasId" parameterType="java.util.List">
         INSERT INTO course_schedule
         (id_,group_type_,music_group_id_,class_group_id_,status_,subsidy_,class_date_,start_class_time_,end_class_time_,
         teacher_id_,actual_teacher_id_,type_,name_,teach_mode_,student_num_,leave_student_num_,