yonge 3 năm trước cách đây
mục cha
commit
48fc4637cf
21 tập tin đã thay đổi với 174 bổ sung966 xóa
  1. 10 115
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleDao.java
  2. 5 15
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleStudentPaymentDao.java
  3. 7 9
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleTeacherSalaryDao.java
  4. 0 11
      mec-biz/src/main/java/com/ym/mec/biz/service/CourseScheduleService.java
  5. 0 8
      mec-biz/src/main/java/com/ym/mec/biz/service/ExtracurricularExercisesReplyService.java
  6. 6 369
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java
  7. 11 11
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleTeacherSalaryServiceImpl.java
  8. 2 1
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/ExportServiceImpl.java
  9. 0 66
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/ExtracurricularExercisesReplyServiceImpl.java
  10. 5 2
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/PracticeLessonApplyServiceImpl.java
  11. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentServiceImpl.java
  12. 4 2
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherCourseScheduleServiceImpl.java
  13. 30 248
      mec-biz/src/main/resources/config/mybatis/CourseScheduleMapper.xml
  14. 6 4
      mec-biz/src/main/resources/config/mybatis/CourseScheduleModifyLogMapper.xml
  15. 14 7
      mec-biz/src/main/resources/config/mybatis/CourseScheduleReviewMapper.xml
  16. 11 7
      mec-biz/src/main/resources/config/mybatis/CourseScheduleRewardsMapper.xml
  17. 17 40
      mec-biz/src/main/resources/config/mybatis/CourseScheduleStudentPaymentMapper.xml
  18. 24 32
      mec-biz/src/main/resources/config/mybatis/CourseScheduleTeacherSalaryMapper.xml
  19. 7 6
      mec-biz/src/main/resources/config/mybatis/CoursesGroupMapper.xml
  20. 5 4
      mec-biz/src/main/resources/config/mybatis/CoursesGroupModifyLogDao.xml
  21. 9 8
      mec-biz/src/main/resources/config/mybatis/courseScheduleStudentMusicScoreMapper.xml

+ 10 - 115
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleDao.java

@@ -219,7 +219,7 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
      * @params [classDates, classGroupId]
      * @describe 根据班级和上课日期获取课程计划
      */
-    List<CourseSchedule> findByClassGroupAndDate(@Param("classDates") List<Date> classDates, @Param("classGroupId") Long classGroupId);
+    List<CourseSchedule> findByClassGroupAndDate(@Param("classDates") List<Date> classDates, @Param("classGroupId") Long classGroupId, @Param("tenantId") Integer tenantId);
 
     /**
      * @Author: Joburgess
@@ -264,7 +264,7 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
     List<CourseScheduleDto> findCourseSchedulesWithDate(@Param("teacherId") Integer teacherId,
                                                         @Param("classDate") Date classDate,
                                                         @Param("groupId") String groupId,
-                                                        @Param("groupType") GroupType groupType);
+                                                        @Param("groupType") GroupType groupType,@Param("tenantId") Integer tenantId);
 
     /**
      * @param classDate:
@@ -402,7 +402,7 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
     List<Date> findHaveClassesDatesWithMonth(@Param("teacherId") Integer teacherId,
                                              @Param("month") Date month,
                                              @Param("groupId") String groupId,
-                                             @Param("groupType") GroupType groupType);
+                                             @Param("groupType") GroupType groupType, @Param("tenantId") Integer tenantId);
 
     /**
      * @param teacherId: 教师编号
@@ -429,7 +429,7 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
     List<Date> getCourseScheduleDateWithOrgan(@Param("organIds") List<Integer> organIds,
                                               @Param("month") Date month,
                                               @Param("type") String type,
-                                              @Param("transactionTeacherId") Integer transactionTeacherId);
+                                              @Param("transactionTeacherId") Integer transactionTeacherId, @Param("tenantId") Integer tenantId);
 
     /**
      * @Author: Joburgess
@@ -450,7 +450,7 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
      * @Date: 2019/9/24
      * 根据日期获取课程
      */
-    List<CourseSchedule> findCoursesByDates(@Param("dates") List<Date> dates);
+    List<CourseSchedule> findCoursesByDates(@Param("dates") List<Date> dates, @Param("tenantId") Integer tenantId);
 
     /**
      * @Author: Joburgess
@@ -458,7 +458,7 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
      * 获取在指定时间段内存在重复的课程
      */
     List<CourseSchedule> findOverLapCoursesInDay(@Param("dates") List<Date> dates, @Param("startClassTime") Date startClassTime,
-                                                 @Param("endClassTime") Date endClassTime);
+                                                 @Param("endClassTime") Date endClassTime, @Param("tenantId") Integer tenantId);
 
     /**
      * @Author: Joburgess
@@ -491,15 +491,6 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
     List<StudentCourseScheduleRecordDto> findStudentCourseScheduleRecords(Map<String, Object> params);
 
     /**
-     * @param classGroupId: 班级编号
-     * @return com.ym.mec.biz.dal.entity.CourseSchedule
-     * @describe 获取班级的下一节课
-     * @author Joburgess
-     * @date 2019/11/19
-     */
-    CourseSchedule getNextCourseSchedule(@Param("classGroupId") Integer classGroupId);
-
-    /**
      * @Author: Joburgess
      * @Date: 2019/9/30
      * 统计学生上课记录
@@ -565,7 +556,7 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
      * @param status    课程状态
      * @return
      */
-    List<Map<Integer, Integer>> queryVipGroupTeachereClassTimesByMonth(@Param("monthDate") Date monthDate, @Param("status") CourseStatusEnum status);
+    List<Map<Integer, Integer>> queryVipGroupTeachereClassTimesByMonth(@Param("monthDate") Date monthDate, @Param("status") CourseStatusEnum status, @Param("tenantId") Integer tenantId);
 
     /**
      * 查询已完成未更新状态的课程列表
@@ -753,42 +744,7 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
      */
     Integer countMusicGroupIdsWithoutOverGroup(Map<String, Object> params);
 
-    /**
-     * @param startTime: 开始时间
-     * @param endTime:   结束时间
-     * @return java.util.List<com.ym.mec.biz.dal.entity.CourseSchedule>
-     * @describe 获取时间段内未开始的课程
-     * @author Joburgess
-     * @date 2019/10/31
-     */
-    List<CourseSchedule> findByDateZone(@Param("startTime") Date startTime,
-                                        @Param("endTime") Date endTime);
-
-    /**
-     * @param startTime: 开始时间
-     * @param endTime:   结束时间
-     * @return java.util.List<com.ym.mec.biz.dal.entity.CourseSchedule>
-     * @describe 获取时间段内所有的课程
-     * @author Joburgess
-     * @date 2019/10/31
-     */
-    List<CourseSchedule> findAllCourseByDateZone(@Param("startTime") Date startTime,
-                                                 @Param("endTime") Date endTime);
-
-    List<CourseSchedule> findByClassDate(@Param("classDates") List<String> classDates);
-
-    List<CourseSchedule> findByClassDateWithoutMusicGroup(@Param("classDates") List<String> classDates);
-
-    /**
-     * @param startTime: 开始时间
-     * @param endTime:   结束时间
-     * @return java.util.List<com.ym.mec.biz.dal.entity.CourseSchedule>
-     * @describe 获取时间段内所有的课程(去除无关字段)
-     * @author Joburgess
-     * @date 2019/10/31
-     */
-    List<CourseSchedule> findAllCourseByDateZone2(@Param("startTime") Date startTime,
-                                                  @Param("endTime") Date endTime);
+    List<CourseSchedule> findByClassDate(@Param("classDates") List<String> classDates, @Param("tenantId") Integer tenantId);
 
     /**
      * 查询学生明天的课程数
@@ -847,17 +803,7 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
      * @author Joburgess
      * @date 2019/11/3
      */
-    List<CourseSchedule> findCourseScheduleWithDate(@Param("startDate") String startDate, @Param("endDate") String endDate);
-
-    /**
-     * @param startDate:
-     * @param endDate:
-     * @return int
-     * @describe 统计指定时间段内已结算的课程组类型数量
-     * @author Joburgess
-     * @date 2020/12/29 0029
-     */
-    int countIsSalaryGroupTypes(@Param("startDate") String startDate, @Param("endDate") String endDate);
+    List<CourseSchedule> findCourseScheduleWithDate(@Param("startDate") String startDate, @Param("endDate") String endDate, @Param("tenantId") Integer tenantId);
 
     /**
      * @param classGroupId: 班级编号
@@ -896,8 +842,6 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
      */
     List<Map<Integer, String>> findStudentMap(Long courseScheduleId);
 
-    List<CourseSchedule> findAllCourseSches();
-
     /**
      * 获取一节班级的课程
      *
@@ -934,13 +878,6 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
     int deleteCourseSchedulesByClassGroupIds(@Param("courseScheduleIds") List<Long> courseScheduleIds);
 
     /**
-     * 查询所有未签到的学生信息
-     *
-     * @return
-     */
-    List<StudentAttendance> queryUnsignedStudentList();
-
-    /**
      * @param currentCourseDate: 班级编号
      * @return java.lang.Integer
      * @describe 统计已上的课时数
@@ -1202,24 +1139,6 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
     int endCountCourseSchedules(Map<String, Object> params);
 
     /**
-     * @param search: 搜索关键字
-     * @return java.util.List<java.lang.Integer>
-     * @describe 根据关键字查询学生相关的课程编号
-     * @author Joburgess
-     * @date 2019/12/31
-     */
-    Set<Integer> findCourseIdsByStudent(String search);
-
-    /**
-     * @param search: 搜索关键字
-     * @return java.util.List<java.lang.Integer>
-     * @describe 根据关键字查询教师相关的课程编号
-     * @author Joburgess
-     * @date 2019/12/31
-     */
-    Set<Integer> findCourseIdsByTeacher(String search);
-
-    /**
      * @param groupType:
      * @param groupId:
      * @return int
@@ -1253,30 +1172,6 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
                                 @Param("groupId") String groupId);
 
     /**
-     * 获取课程编号列表
-     *
-     * @param params
-     * @return
-     */
-    Set<Integer> queryMusicCourseScheduleIds(Map<String, Object> params);
-
-    /**
-     * 获取课程编号列表
-     *
-     * @param params
-     * @return
-     */
-    Set<Integer> queryVipCourseScheduleIds(Map<String, Object> params);
-
-    /**
-     * 获取陪练课课程编号列表
-     *
-     * @param params
-     * @return
-     */
-    Set<Integer> queryPracticeCourseScheduleIds(Map<String, Object> params);
-
-    /**
      * @param userIds:   教师编号列表
      * @param startTime: 开始时间
      * @param endTime:   结束时间
@@ -1576,7 +1471,7 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
      * @param groupType
      * @return
      */
-    List<CourseScheduleRateDto> findCourseRate(@Param("groupId") String groupId, @Param("groupType") String groupType, @Param("classGroupId") Integer classGroupId);
+    List<CourseScheduleRateDto> findCourseRate(@Param("groupId") String groupId, @Param("groupType") String groupType, @Param("classGroupId") Integer classGroupId,@Param("tenantId") Integer tenantId);
 
     /**
      * 获取最后一次已结束的课程

+ 5 - 15
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleStudentPaymentDao.java

@@ -177,14 +177,14 @@ public interface CourseScheduleStudentPaymentDao extends BaseDAO<Long, CourseSch
      *
      * @return
      */
-    Set<Integer> queryMusicStudentPer();
+    Set<Integer> queryMusicStudentPer(Integer tenantId);
 
     /**
      * 根据乐团,vip状态获取编号
      *
      * @return
      */
-    Set<Integer> queryVipStudentPer();
+    Set<Integer> queryVipStudentPer(Integer tenantId);
 
     /**
      * @param courseIds: 统计课程上的学生人数
@@ -277,16 +277,6 @@ public interface CourseScheduleStudentPaymentDao extends BaseDAO<Long, CourseSch
      */
     List<Map<Integer, String>> getStudentIdMap(@Param("courseScheduleIds") List<Long> courseScheduleIds);
 
-    /**
-     * @param monday:
-     * @return java.util.List<java.lang.Integer>
-     * @describe 获取在指定时间之后不存在网管课的学员编号列表
-     * @author Joburgess
-     * @date 2020/4/10
-     */
-    List<Practice4ExercisesSituationDto> findNoPracticeStudentIdsOnWeek(@Param("monday") String monday,
-                                                                        @Param("sunday") String sunday);
-
     Integer findNoPracticeStudentTeacherId(@Param("studentId") Integer studentId);
 
     /**
@@ -296,7 +286,7 @@ public interface CourseScheduleStudentPaymentDao extends BaseDAO<Long, CourseSch
      */
     List<StudentCourseTimesDto> queryStudentNotStartCourseTimesOfOnline();
 
-    List<StudentTeacherCourseDto> findAllStudentCourseInfo();
+    List<StudentTeacherCourseDto> findAllStudentCourseInfo(Integer tenantId);
 
     /**
      * @param courseScheduleIds:
@@ -568,7 +558,7 @@ public interface CourseScheduleStudentPaymentDao extends BaseDAO<Long, CourseSch
     * @author zx
     * @date 2021/11/5 11:30
     */
-    boolean hasCourse(@Param("organId") String organId);
+    boolean hasCourse(@Param("organId") String organId, @Param("tenantId") Integer tenantId);
 
     /**
     * @description:  报表中心学员小课记录导出
@@ -577,7 +567,7 @@ public interface CourseScheduleStudentPaymentDao extends BaseDAO<Long, CourseSch
     * @author zx
     * @date 2021/11/5 11:54 
     */
-    List<StudentVipPracticeExportDto> exportStudentVipPractice(@Param("organId") String organId);
+    List<StudentVipPracticeExportDto> exportStudentVipPractice(@Param("organId") String organId, @Param("tenantId") Integer tenantId);
 
     List<BaseNameDto> queryLastOverTeacher(@Param("studentIds") List<Integer> studentIds, @Param("groupType") String groupType);
 }

+ 7 - 9
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleTeacherSalaryDao.java

@@ -76,9 +76,7 @@ public interface CourseScheduleTeacherSalaryDao extends BaseDAO<Long, CourseSche
 	 * @params [days:天数]
 	 * @describe 获取多少天之前的未结算教师课酬记录(vip课)
 	 */
-	List<CourseScheduleTeacherSalary> findSomeDayAgoTeacherCourseSalaryNoSettlement(@Param("startDate") String startDate,@Param("endDate") String endDate);
-
-	List<CourseScheduleTeacherSalary> findTemp();
+	List<CourseScheduleTeacherSalary> findSomeDayAgoTeacherCourseSalaryNoSettlement(@Param("startDate") String startDate,@Param("endDate") String endDate, @Param("tenantId") Integer tenantId);
 
 	/**
 	 * @return java.util.List<com.ym.mec.biz.dal.entity.TeacherDefaultVipGroupSalary>
@@ -89,7 +87,7 @@ public interface CourseScheduleTeacherSalaryDao extends BaseDAO<Long, CourseSche
 	 */
 	List<CourseScheduleTeacherSalary> findTeacherCourseSalaryNoSettlement(@Param("startDate") String startDate,
 																		  @Param("endDate") String endDate,
-																		  @Param("groupType") String groupType);
+																		  @Param("groupType") String groupType, @Param("tenantId") Integer tenantId);
 
 	/**
 	 * 查询老师指定课程的课酬
@@ -389,7 +387,7 @@ public interface CourseScheduleTeacherSalaryDao extends BaseDAO<Long, CourseSche
 	 * @param endDate
 	 * @return
 	 */
-	List<TeacherVipSalaryDto> queryOnlineCourseByGroupType(@Param("startDate") String startDate, @Param("endDate") String endDate);
+	List<TeacherVipSalaryDto> queryOnlineCourseByGroupType(@Param("startDate") String startDate, @Param("endDate") String endDate, @Param("tenantId") Integer tenantId);
 	/**
 	 * 该用户是不是这个群组的老师
 	 * @param groupId
@@ -425,7 +423,7 @@ public interface CourseScheduleTeacherSalaryDao extends BaseDAO<Long, CourseSche
 	 * @return java.util.List<java.lang.Long>
 	 */
 	List<Long> findTeacherSalaryIdsWithMonth(@Param("teacherId") Integer teacherId,
-											 @Param("month") String month);
+											 @Param("month") String month, @Param("tenantId") Integer tenantId);
 
 	/**
 	 * @describe 获取指定月份已结算的老师编号
@@ -434,7 +432,7 @@ public interface CourseScheduleTeacherSalaryDao extends BaseDAO<Long, CourseSche
 	 * @param month:
 	 * @return java.util.List<java.lang.Integer>
 	 */
-	List<Integer> findIsSettlementTeacherIdsWithMonth(@Param("month") String month);
+	List<Integer> findIsSettlementTeacherIdsWithMonth(@Param("month") String month, @Param("tenantId") Integer tenantId);
 
 	/**
 	 * @describe 更新指定课酬的确认状态
@@ -485,7 +483,7 @@ public interface CourseScheduleTeacherSalaryDao extends BaseDAO<Long, CourseSche
      * @return int
      */
     int countOpenConfirmSalarysWithMonth(@Param("month") String month,
-										 @Param("confirmStatus") TeacherSalaryConfirmStatus confirmStatus);
+										 @Param("confirmStatus") TeacherSalaryConfirmStatus confirmStatus, @Param("tenantId") Integer tenantId);
 
     /**
      * @describe 获取课程结算时间
@@ -542,7 +540,7 @@ public interface CourseScheduleTeacherSalaryDao extends BaseDAO<Long, CourseSche
 	 * @param endDate:
 	 * @return java.util.List<com.ym.mec.biz.dal.entity.CourseScheduleTeacherSalary>
 	 */
-	List<CourseScheduleTeacherSalary> getIsSalaryWithDate(@Param("startDate") String startDate, @Param("endDate") String endDate);
+	List<CourseScheduleTeacherSalary> getIsSalaryWithDate(@Param("startDate") String startDate, @Param("endDate") String endDate, @Param("tenantId") Integer tenantId);
 
 	/**
 	 * @describe 获取教师收入总览

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

@@ -326,17 +326,6 @@ public interface CourseScheduleService extends BaseService<Long, CourseSchedule>
 	 */
 	Boolean checkNewCourseSchedules(List<CourseSchedule> courseSchedules,boolean checkExistCourseSchedule,Boolean postponeFlag);
 
-	void checkNewCourseSchedulesWithoutMusicGroup(List<CourseSchedule> courseSchedules,boolean checkExistCourseSchedule);
-
-	/**
-	 * @describe 临时课检测
-	 * @author 周剑河
-	 * @date 2019/12/6
-	 * @param courseSchedules: 课程计划列表
-	 * @return void
-	 */
-	List<Long> checkSnapCourseShchedules(List<CourseSchedule> courseSchedules);
-
 	/**
 	 * @describe
 	 * @author Joburgess

+ 0 - 8
mec-biz/src/main/java/com/ym/mec/biz/service/ExtracurricularExercisesReplyService.java

@@ -60,14 +60,6 @@ public interface ExtracurricularExercisesReplyService extends BaseService<Long,
      */
     PageInfo<ExtraExerciseStudentsDto> findExtraExercises(ExtraExercilseReplyQueryInfo queryInfo);
 
-    /**
-     * @describe 学生服务信息统计
-     * @author Joburgess
-     * @date 2020/4/10
-     * @param : 
-     * @return void
-     */
-    void exercisesSituationStatistics();
     void exercisesSituationStatistics2(String monday);
 
     PageInfo<EduHomeworkCardDto> getEduHomeworkList(StudentCourseHomeWorkQueryInfo queryInfo);

+ 6 - 369
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -1039,7 +1039,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 		if(StringUtils.isNotBlank(organIdList)){
 			organIds = Arrays.stream(organIdList.split(",")).map(s->Integer.valueOf(s)).collect(Collectors.toList());
 		}
-		return courseScheduleDao.getCourseScheduleDateWithOrgan(organIds, month, type, transactionTeacherId);
+		return courseScheduleDao.getCourseScheduleDateWithOrgan(organIds, month, type, transactionTeacherId, TenantContextHolder.getTenantId());
     }
 
     @Override
@@ -1742,7 +1742,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 		if(!DateUtil.isSameDay(courseSchedule.getStartClassTime(), courseSchedule.getEndClassTime())){
 			throw new BizException("课程时间不允许跨天");
 		}
-		List<CourseSchedule> allCourseSchedules = courseScheduleDao.findByClassDate(Arrays.asList(DateUtil.dateToString(courseSchedule.getClassDate(), "yyyy-MM-dd")));
+		List<CourseSchedule> allCourseSchedules = courseScheduleDao.findByClassDate(Arrays.asList(DateUtil.dateToString(courseSchedule.getClassDate(), "yyyy-MM-dd")),TenantContextHolder.getTenantId());
 
 		if(null == allCourseSchedules){
 			allCourseSchedules = new ArrayList<>();
@@ -1884,7 +1884,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
         List<String> classDates = courseSchedules.stream().map(courseSchedule -> DateUtil.dateToString(courseSchedule.getClassDate(), "yyyy-MM-dd"))
                 .collect(Collectors.toList());
 
-        List<CourseSchedule> existCourseSchedules = courseScheduleDao.findByClassDate(classDates);
+        List<CourseSchedule> existCourseSchedules = courseScheduleDao.findByClassDate(classDates, TenantContextHolder.getTenantId());
 
         //只需要调整课程信息的课程编号列表
         List<Long> updateCourseScheduleIds = courseSchedules
@@ -2103,369 +2103,6 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
         return true;
     }
 
-    @Override
-    public void checkNewCourseSchedulesWithoutMusicGroup(List<CourseSchedule> courseSchedules, boolean checkExistCourseSchedule) {
-        if (CollectionUtils.isEmpty(courseSchedules)) {
-            return;
-        }
-        List<String> classDates = courseSchedules.stream().map(courseSchedule -> DateUtil.dateToString(courseSchedule.getClassDate(), "yyyy-MM-dd"))
-                .collect(Collectors.toList());
-
-        List<CourseSchedule> existCourseSchedules = courseScheduleDao.findByClassDateWithoutMusicGroup(classDates);
-
-        //只需要调整课程信息的课程编号列表
-        List<Long> updateCourseScheduleIds = courseSchedules
-                .stream()
-                .filter(courseSchedule -> Objects.nonNull(courseSchedule.getId()))
-                .map(CourseSchedule::getId)
-                .collect(Collectors.toList());
-
-        //排除只需调整的课程
-        existCourseSchedules = existCourseSchedules.stream()
-                .filter(courseSchedule -> !updateCourseScheduleIds.contains(courseSchedule.getId()))
-                .collect(Collectors.toList());
-        //新课程对应的班级编号列表
-        List<Integer> newCourseScheduleClassGroupIds = courseSchedules
-                .stream()
-                .map(CourseSchedule::getClassGroupId)
-                .distinct()
-                .collect(Collectors.toList());
-
-        List<Long> existCourseScheduleIds = existCourseSchedules.stream()
-                .map(CourseSchedule::getId)
-                .collect(Collectors.toList());
-
-        HashSet<Long> courseScheduleIdsSet = new HashSet<>(existCourseScheduleIds);
-
-        //合并新课程和已存在的课程
-        List<CourseSchedule> allCourseSchedules;
-        if (!CollectionUtils.isEmpty(existCourseSchedules)) {
-            allCourseSchedules = ListUtils.sum(courseSchedules, existCourseSchedules);
-        } else {
-            allCourseSchedules = courseSchedules;
-        }
-        //所有课程的班级编号
-        List<Integer> classGroupIds = allCourseSchedules
-                .stream()
-                .map(CourseSchedule::getClassGroupId)
-                .distinct()
-                .collect(Collectors.toList());
-        //班级与学生的关联记录
-        List<ClassGroupStudentMapper> classGroupStudentMappers = classGroupStudentMapperDao.findByClassGroups(classGroupIds);
-        Map<Integer, List<ClassGroupStudentMapper>> classGroupStudentsMap = classGroupStudentMappers
-                .stream()
-                .collect(Collectors.groupingBy(ClassGroupStudentMapper::getClassGroupId));
-
-        //根据课程获取助教id关联集合
-        List<IntegerAndIntegerListDto> courseScheduleTeachingTeacherIdList = new ArrayList<>();
-        if (!CollectionUtils.isEmpty(existCourseScheduleIds)) {
-            courseScheduleTeachingTeacherIdList = courseScheduleDao.findCourseScheduleIdAndUserIdsMap(existCourseScheduleIds, TeachTypeEnum.TEACHING.getCode());
-        }
-        Map<Long, IntegerAndIntegerListDto> courseScheduleTeachingTeacherMap = courseScheduleTeachingTeacherIdList.stream()
-                .collect(Collectors.toMap(IntegerAndIntegerListDto::getId, integerAndIntegerListDto -> integerAndIntegerListDto));
-
-        //班级助教关联ID集合
-        List<IntegerAndIntegerListDto> classGroupAndUserIdsMap = courseScheduleDao.findClassGroupAndUserIdsMap(newCourseScheduleClassGroupIds, TeachTypeEnum.TEACHING.getCode());
-        Map<Long, IntegerAndIntegerListDto> classGroupTeachingTeacherMap = classGroupAndUserIdsMap.stream()
-                .collect(Collectors.toMap(IntegerAndIntegerListDto::getId, integerAndIntegerListDto -> integerAndIntegerListDto));
-
-        Set<Long> existCourseScheduleIdsSet=new HashSet<>(existCourseScheduleIds);
-
-        Map<String, List<CourseSchedule>> existClassDateCoursesMap = allCourseSchedules.stream().collect(Collectors.groupingBy(c -> DateUtil.dateToString(c.getClassDate(), "yyyy-MM-dd")));
-        Map<String, List<CourseSchedule>> newClassDateCoursesMap = courseSchedules.stream().collect(Collectors.groupingBy(c -> DateUtil.dateToString(c.getClassDate(), "yyyy-MM-dd")));
-        if (allCourseSchedules.size() > 1) {
-            for (Map.Entry<String, List<CourseSchedule>> classDateCourseEntry : newClassDateCoursesMap.entrySet()) {
-                List<CourseSchedule> existClassDateCourses = existClassDateCoursesMap.get(classDateCourseEntry.getKey());
-                if(CollectionUtils.isEmpty(existClassDateCourses)){
-                    continue;
-                }
-                List<CourseSchedule> newClassDateCourses=classDateCourseEntry.getValue();
-                existClassDateCourses.sort(Comparator.comparing(CourseSchedule::getStartClassTime));
-                newClassDateCourses.sort(Comparator.comparing(CourseSchedule::getStartClassTime));
-                for (CourseSchedule preCourseSchedule : newClassDateCourses) {
-                    for (CourseSchedule backCourseSchedule : existClassDateCourses) {
-
-                        //判断前后两节课是否存在冲突
-                        if (!preCourseSchedule.getStartClassTime().before(backCourseSchedule.getEndClassTime())
-                                ||!preCourseSchedule.getEndClassTime().after(backCourseSchedule.getStartClassTime())) {
-                            continue;
-                        }
-                        if (!checkExistCourseSchedule
-                                && !courseScheduleIdsSet.contains(backCourseSchedule.getId())) {
-                            continue;
-                        }
-
-                        //如果存在时间重叠,则需要判断前后两节课的教师和学生是否存在冲突
-                        //主教冲突检测
-                        if (Objects.nonNull(preCourseSchedule.getActualTeacherId())
-                                && preCourseSchedule.getActualTeacherId().equals(backCourseSchedule.getActualTeacherId())) {
-
-                            throw new BizException(courseCheckInfo(preCourseSchedule, backCourseSchedule, existCourseScheduleIds, 1));
-                        }
-                        //助教冲突检测
-                        if (Objects.isNull(preCourseSchedule.getId())) {
-                            IntegerAndIntegerListDto integerAndIntegerListDto = classGroupTeachingTeacherMap.get(preCourseSchedule.getClassGroupId());
-                            if (Objects.nonNull(integerAndIntegerListDto)) {
-                                preCourseSchedule.setTeachingTeacherIdList(integerAndIntegerListDto.getIds());
-                            }
-                        } else if (existCourseScheduleIdsSet.contains(preCourseSchedule.getId())) {
-                            IntegerAndIntegerListDto integerAndIntegerListDto = courseScheduleTeachingTeacherMap.get(preCourseSchedule.getId());
-                            if (Objects.nonNull(integerAndIntegerListDto)) {
-                                preCourseSchedule.setTeachingTeacherIdList(integerAndIntegerListDto.getIds());
-                            }
-                        }
-                        if (Objects.isNull(backCourseSchedule.getId())) {
-                            IntegerAndIntegerListDto integerAndIntegerListDto = classGroupTeachingTeacherMap.get(backCourseSchedule.getClassGroupId());
-                            if (Objects.nonNull(integerAndIntegerListDto)) {
-                                backCourseSchedule.setTeachingTeacherIdList(integerAndIntegerListDto.getIds());
-                            }
-                        } else if (existCourseScheduleIdsSet.contains(backCourseSchedule.getId())) {
-                            IntegerAndIntegerListDto integerAndIntegerListDto = courseScheduleTeachingTeacherMap.get(backCourseSchedule.getId());
-                            if (Objects.nonNull(integerAndIntegerListDto)) {
-                                backCourseSchedule.setTeachingTeacherIdList(integerAndIntegerListDto.getIds());
-                            }
-                        }
-                        if (!CollectionUtils.isEmpty(preCourseSchedule.getTeachingTeacherIdList())
-                                && !CollectionUtils.isEmpty(backCourseSchedule.getTeachingTeacherIdList())) {
-                            List<Integer> repeatIds = preCourseSchedule.getTeachingTeacherIdList()
-                                    .stream().filter(backCourseSchedule.getTeachingTeacherIdList()::contains)
-                                    .collect(Collectors.toList());
-                            if (!CollectionUtils.isEmpty(repeatIds)) {
-                                throw new BizException(courseCheckInfo(preCourseSchedule, backCourseSchedule, existCourseScheduleIds, 2));
-                            }
-                        }
-                        //学生冲突检测
-                        if (preCourseSchedule.getClassGroupId().equals(backCourseSchedule.getClassGroupId())) {
-                            //如果班级相同,则学生肯定存在冲突
-                            throw new BizException(courseCheckInfo(preCourseSchedule, backCourseSchedule, existCourseScheduleIds, 3));
-                        }
-                        //如果班级不同,则需要检测两个班级是否存在重复的学生
-                        List<ClassGroupStudentMapper> preClassGroupStudents = classGroupStudentsMap.get(preCourseSchedule.getClassGroupId());
-                        List<ClassGroupStudentMapper> backClassGroupStudents = classGroupStudentsMap.get(backCourseSchedule.getClassGroupId());
-                        //如果有一个存在没有学生的班级则不存在冲突
-                        if (CollectionUtils.isEmpty(preClassGroupStudents) || CollectionUtils.isEmpty(backClassGroupStudents)) {
-                            continue;
-                        }
-                        //当前课程所在班级的学生编号列表
-                        List<Integer> preClassGroupStudentIds = preClassGroupStudents.stream()
-                                .map(ClassGroupStudentMapper::getUserId)
-                                .collect(Collectors.toList());
-                        //后面一节课程所在班级的学生编号列表
-                        Set<Integer> backClassGroupStudentIds = backClassGroupStudents.stream()
-                                .map(ClassGroupStudentMapper::getUserId)
-                                .collect(Collectors.toSet());
-                        List<Integer> repeatStudentIds = preClassGroupStudentIds.stream()
-                                .filter(backClassGroupStudentIds::contains)
-                                .collect(Collectors.toList());
-                        if (!CollectionUtils.isEmpty(repeatStudentIds)) {
-                            throw new BizException(courseCheckInfo(preCourseSchedule, backCourseSchedule, existCourseScheduleIds, 3));
-                        }
-                    }
-                }
-            }
-        }
-    }
-
-    @Override
-    @Transactional(rollbackFor = Exception.class)
-    public List<Long> checkSnapCourseShchedules(List<CourseSchedule> courseSchedules) {
-        List<Long> courseScheduleIds = new ArrayList<>();
-        List<CourseScheduleStudentDto> courseScheduleStudents = new ArrayList<>();
-        if (CollectionUtils.isEmpty(courseSchedules)) {
-            return courseScheduleIds;
-        }
-        //第一节课
-        CourseSchedule firstCourseSchedule;
-        //最后一节课
-        CourseSchedule latestCourseSchedule;
-        if (courseSchedules.size() == 1) {
-            firstCourseSchedule = courseSchedules.get(0);
-            latestCourseSchedule = courseSchedules.get(0);
-        } else {
-            firstCourseSchedule = courseSchedules.stream().min(Comparator.comparing(CourseSchedule::getStartClassTime)).get();
-            latestCourseSchedule = courseSchedules.stream().max(Comparator.comparing(CourseSchedule::getEndClassTime)).get();
-        }
-        //获取第一节课和最后一节课所包含的时间段内已存在的课程
-        List<CourseSchedule> existCourseSchedules = courseScheduleDao
-                .findAllCourseByDateZone(firstCourseSchedule.getStartClassTime(), latestCourseSchedule.getEndClassTime());
-
-        if (existCourseSchedules == null || existCourseSchedules.size() == 0) {
-            return null;
-        }
-        //只需要调整课程信息的课程编号列表
-        List<Long> updateCourseScheduleIds = courseSchedules
-                .stream()
-                .filter(courseSchedule -> Objects.nonNull(courseSchedule.getId()))
-                .map(CourseSchedule::getId)
-                .collect(Collectors.toList());
-
-        //排除只需调整的课程
-        existCourseSchedules = existCourseSchedules.stream()
-                .filter(courseSchedule -> !updateCourseScheduleIds.contains(courseSchedule.getId()))
-                .collect(Collectors.toList());
-        if (existCourseSchedules == null || existCourseSchedules.size() == 0) {
-            return null;
-        }
-
-
-        List<Long> existCourseScheduleIds = existCourseSchedules.stream()
-                .map(CourseSchedule::getId)
-                .collect(Collectors.toList());
-
-        //合并新课程和已存在的课程
-        List<CourseSchedule> allCourseSchedules;
-        if (!CollectionUtils.isEmpty(existCourseSchedules)) {
-            allCourseSchedules = ListUtils.sum(courseSchedules, existCourseSchedules);
-        } else {
-            allCourseSchedules = courseSchedules;
-        }
-
-        //新课程对应的班级编号列表
-        List<Integer> newCourseScheduleClassGroupIds = allCourseSchedules
-                .stream()
-                .map(CourseSchedule::getClassGroupId)
-                .distinct()
-                .collect(Collectors.toList());
-
-        //所有课程的班级编号
-        List<Integer> classGroupIds = allCourseSchedules
-                .stream()
-                .map(CourseSchedule::getClassGroupId)
-                .distinct()
-                .collect(Collectors.toList());
-        //班级与学生的关联记录
-        List<CourseScheduleStudentPayment> exitStudentPaymentList = courseScheduleStudentPaymentDao.findByCourseScheduleIds(existCourseScheduleIds);
-
-        List<ClassGroupStudentMapper> classGroupStudentMappers = classGroupStudentMapperDao.findByClassGroups(classGroupIds);
-        Map<Integer, List<ClassGroupStudentMapper>> classGroupStudentsMap = classGroupStudentMappers
-                .stream()
-                .collect(Collectors.groupingBy(ClassGroupStudentMapper::getClassGroupId));
-
-        Map<Long, List<CourseScheduleStudentPayment>> exitStudentPaymentMap = exitStudentPaymentList.stream().collect(Collectors.groupingBy(CourseScheduleStudentPayment::getCourseScheduleId));
-
-        //根据课程获取教师id关联集合
-        List<IntegerAndIntegerListDto> courseScheduleTeachingTeacherIdList = new ArrayList<>();
-        if (!CollectionUtils.isEmpty(existCourseScheduleIds)) {
-            courseScheduleTeachingTeacherIdList = courseScheduleDao.findCourseScheduleIdAndUserIdsMap(existCourseScheduleIds, null);
-        }
-        Map<Long, IntegerAndIntegerListDto> courseScheduleTeacherMap = courseScheduleTeachingTeacherIdList.stream()
-                .collect(Collectors.toMap(IntegerAndIntegerListDto::getId, integerAndIntegerListDto -> integerAndIntegerListDto));
-
-        //班级教师关联ID集合
-        List<IntegerAndIntegerListDto> classGroupAndUserIdsMap = courseScheduleDao.findClassGroupAndUserIdsMap(newCourseScheduleClassGroupIds, null);
-        Map<Long, IntegerAndIntegerListDto> classGroupTeachingTeacherMap = classGroupAndUserIdsMap.stream()
-                .collect(Collectors.toMap(IntegerAndIntegerListDto::getId, integerAndIntegerListDto -> integerAndIntegerListDto));
-
-		allCourseSchedules.sort(Comparator.comparing(CourseSchedule::getStartClassTime));
-        courseSchedules.sort(Comparator.comparing(CourseSchedule::getStartClassTime));
-
-        newNode:
-        for (CourseSchedule newCourseSchedule : courseSchedules) {
-            for (CourseSchedule existCourseSchedule : allCourseSchedules) {
-                if (newCourseSchedule.getEndClassTime().compareTo(existCourseSchedule.getStartClassTime()) <= 0) {
-                    continue newNode;
-                }
-                if (existCourseSchedule.getEndClassTime().compareTo(newCourseSchedule.getStartClassTime()) <= 0) {
-                    continue;
-                }
-
-                if(newCourseSchedule.equals(existCourseSchedule)){
-                	continue;
-				}
-
-                boolean isTeacherRepeat = false;
-                boolean isStudentRepeat = false;
-                //检测老师冲突
-				if (courseScheduleTeacherMap.containsKey(existCourseSchedule.getId())) {
-					existCourseSchedule.setTeachingTeacherIdList(courseScheduleTeacherMap.get(existCourseSchedule.getId()).getIds());
-				} else {
-					existCourseSchedule.setTeachingTeacherIdList(classGroupTeachingTeacherMap.get(existCourseSchedule.getClassGroupId().longValue()).getIds());
-				}
-				newCourseSchedule.setTeachingTeacherIdList(classGroupTeachingTeacherMap.get(newCourseSchedule.getClassGroupId().longValue()).getIds());
-
-                if (!CollectionUtils.isEmpty(newCourseSchedule.getTeachingTeacherIdList())
-                        && !CollectionUtils.isEmpty(existCourseSchedule.getTeachingTeacherIdList())) {
-                    List<Integer> repeatIds = newCourseSchedule.getTeachingTeacherIdList()
-                            .stream().filter(existCourseSchedule.getTeachingTeacherIdList()::contains)
-                            .collect(Collectors.toList());
-                    if (!CollectionUtils.isEmpty(repeatIds)) {
-                        isTeacherRepeat = true;
-                    }
-                }
-
-                //学生冲突检测
-                if (newCourseSchedule.getClassGroupId().equals(existCourseSchedule.getClassGroupId())) {
-                    //如果班级相同,则学生肯定全部存在冲突,当做老师冲突处理
-                    isTeacherRepeat = true;
-                }
-
-                List<Integer> repeatStudentIds = new ArrayList<>();
-                if (!isTeacherRepeat && classGroupStudentsMap.containsKey(newCourseSchedule.getClassGroupId()) && exitStudentPaymentMap.containsKey(existCourseSchedule.getId())) {
-                    //如果班级不同,则需要检测两个班级是否存在重复的学生
-                    List<ClassGroupStudentMapper> preClassGroupStudents = classGroupStudentsMap.get(newCourseSchedule.getClassGroupId());
-                    List<CourseScheduleStudentPayment> backClassGroupStudents = exitStudentPaymentMap.get(existCourseSchedule.getId());
-
-                    //当前课程所在班级的学生编号列表
-                    List<Integer> preClassGroupStudentIds = preClassGroupStudents.stream()
-                            .map(ClassGroupStudentMapper::getUserId)
-                            .collect(Collectors.toList());
-                    //后面一节课程所在班级的学生编号列表
-                    List<Integer> backClassGroupStudentIds = backClassGroupStudents.stream()
-                            .map(CourseScheduleStudentPayment::getUserId)
-                            .collect(Collectors.toList());
-                    repeatStudentIds = preClassGroupStudentIds.stream()
-                            .filter(backClassGroupStudentIds::contains)
-                            .collect(Collectors.toList());
-                    if (!CollectionUtils.isEmpty(repeatStudentIds)) {
-                        isStudentRepeat = true;
-                    }
-
-                    if(isStudentRepeat && (backClassGroupStudentIds.size() == repeatStudentIds.size())){
-                        isStudentRepeat = false;
-                        isTeacherRepeat = true;
-                    }
-                }
-
-                if (!isTeacherRepeat && !isStudentRepeat) {
-                    continue;
-                }
-
-                if (ClassGroupTypeEnum.SNAP.getCode().equals(existCourseSchedule.getClassGroupType()) || ClassGroupTypeEnum.VIP.getCode().equals(existCourseSchedule.getClassGroupType())) {
-                    throw new BizException(courseCheckInfo(newCourseSchedule, existCourseSchedule, existCourseScheduleIds, isTeacherRepeat?1:3));
-                }
-
-                if (!existCourseSchedule.getGroupType().equals(newCourseSchedule.getGroupType()) || !existCourseSchedule.getMusicGroupId().equals(newCourseSchedule.getMusicGroupId())) {
-                    throw new BizException(courseCheckInfo(newCourseSchedule, existCourseSchedule, existCourseScheduleIds, isTeacherRepeat?1:3));
-                }
-
-                if (isTeacherRepeat) {
-                    courseScheduleIds.add(existCourseSchedule.getId());
-                }
-                if (isStudentRepeat) {
-                    CourseScheduleStudentDto courseScheduleStudentDto = new CourseScheduleStudentDto();
-                    courseScheduleStudentDto.setId(existCourseSchedule.getId());
-                    courseScheduleStudentDto.setStudentIds(repeatStudentIds);
-                    courseScheduleStudents.add(courseScheduleStudentDto);
-                }
-
-            }
-        }
-        //老师冲突删除课程课程
-        if (courseScheduleIds.size() > 0) {
-            courseScheduleDao.batchDeleteCourseSchedules(courseScheduleIds);
-            courseScheduleTeacherSalaryDao.batchDeleteByCourseScheduleIds(courseScheduleIds);
-            teacherAttendanceDao.batchDeleteByCourseSchedules(courseScheduleIds);
-            courseScheduleStudentPaymentDao.deleteByCourseSchedule(courseScheduleIds);
-        }
-        //学生冲突删除学生课程
-        if (courseScheduleStudents.size() > 0) {
-            for (CourseScheduleStudentDto courseScheduleStudent : courseScheduleStudents) {
-                courseScheduleStudentPaymentDao.deleteStudentCourseScheduleByUserId(courseScheduleStudent.getId(), courseScheduleStudent.getStudentIds());
-            }
-        }
-        return courseScheduleIds;
-    }
-
     private String courseCheckInfo(CourseSchedule preCourseSchedule, CourseSchedule backCourseSchedule, List<Long> existCourseScheduleIds, Integer type) {
         List<CourseSchedule> courseSchedules=new ArrayList<>();
         courseSchedules.add(preCourseSchedule);
@@ -2552,7 +2189,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
      */
     private void checkCourseSchedule(List<CourseSchedule> courseSchedules) {
         List<Date> classDates = courseSchedules.stream().map(CourseSchedule::getClassDate).collect(Collectors.toList());
-        List<CourseSchedule> byClassGroupAndDate = courseScheduleDao.findByClassGroupAndDate(classDates, null);
+        List<CourseSchedule> byClassGroupAndDate = courseScheduleDao.findByClassGroupAndDate(classDates, null, TenantContextHolder.getTenantId());
         List<CourseSchedule> collect3 = Stream.of(courseSchedules, byClassGroupAndDate).flatMap(Collection::stream).collect(Collectors.toList());
         Map<Date, List<CourseSchedule>> collect = collect3.stream().collect(Collectors.groupingBy(CourseSchedule::getClassDate));
         for (Date keyDate : collect.keySet()) {
@@ -5706,12 +5343,12 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 		CourseSchedule courseSchedule;
 		if(schedule.getGroupType() == MUSIC){
 			//获取当前班级
-			courseScheduleRateDtos = courseScheduleDao.findCourseRate(null,schedule.getGroupType().getCode(),schedule.getClassGroupId());
+			courseScheduleRateDtos = courseScheduleDao.findCourseRate(null,schedule.getGroupType().getCode(),schedule.getClassGroupId(), TenantContextHolder.getTenantId());
 			//获取最近一次已结束的课程
 			courseSchedule = courseScheduleDao.getLastEndCourse(null,schedule.getGroupType().getCode(),schedule.getClassGroupId());
 		}else {
 			//获取课程列表
-			courseScheduleRateDtos = courseScheduleDao.findCourseRate(schedule.getMusicGroupId(),schedule.getGroupType().getCode(),null);
+			courseScheduleRateDtos = courseScheduleDao.findCourseRate(schedule.getMusicGroupId(),schedule.getGroupType().getCode(),null, TenantContextHolder.getTenantId());
 			//获取最近一次已结束的课程
 			courseSchedule = courseScheduleDao.getLastEndCourse(schedule.getMusicGroupId(),schedule.getGroupType().getCode(),null);
 		}

+ 11 - 11
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleTeacherSalaryServiceImpl.java

@@ -224,7 +224,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
         Date date = DateUtil.addMonths(now, -1);
         String startDate = DateUtil.format(DateUtil.getFirstDayOfMonth(date),DateUtil.DEFAULT_PATTERN);
         String endDate = DateUtil.format(DateUtil.getLastDayOfMonth(date),DateUtil.DEFAULT_PATTERN);
-        List<CourseScheduleTeacherSalary> someDayAgoTeacherCourseSalaryNoSettlement = courseScheduleTeacherSalaryDao.findTeacherCourseSalaryNoSettlement(startDate,endDate,"PRACTICE");
+        List<CourseScheduleTeacherSalary> someDayAgoTeacherCourseSalaryNoSettlement = courseScheduleTeacherSalaryDao.findTeacherCourseSalaryNoSettlement(startDate,endDate,"PRACTICE",tenantId);
 
         if(CollectionUtils.isEmpty(someDayAgoTeacherCourseSalaryNoSettlement)){
             return;
@@ -339,14 +339,14 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
         String endDate = DateUtil.format(DateUtil.getLastDayOfMonth(date),DateUtil.DEFAULT_PATTERN);
 
         // 查询需要修改的课酬记录
-        List<TeacherVipSalaryDto> teacherSalaryList = courseScheduleTeacherSalaryDao.queryOnlineCourseByGroupType(startDate, endDate);
+        List<TeacherVipSalaryDto> teacherSalaryList = courseScheduleTeacherSalaryDao.queryOnlineCourseByGroupType(startDate, endDate, tenantId);
 
         Set<Integer> teacherIds = teacherSalaryList.stream().map(TeacherVipSalaryDto::getUserId).collect(Collectors.toSet());
         List<Teacher> teachers = teacherDao.findByTeacherIds(new ArrayList<>(teacherIds));
         Map<Integer, Teacher> idTeacherMap = teachers.stream().collect(Collectors.toMap(Teacher::getId, t -> t, (t1, t2) -> t1));
 
         //获取教师未结算课程记录
-        List<CourseScheduleTeacherSalary> someDayAgoTeacherCourseSalaryNoSettlement = courseScheduleTeacherSalaryDao.findSomeDayAgoTeacherCourseSalaryNoSettlement(startDate,endDate);
+        List<CourseScheduleTeacherSalary> someDayAgoTeacherCourseSalaryNoSettlement = courseScheduleTeacherSalaryDao.findSomeDayAgoTeacherCourseSalaryNoSettlement(startDate,endDate, tenantId);
         if (CollectionUtils.isEmpty(someDayAgoTeacherCourseSalaryNoSettlement)) {
             LOGGER.info("未获取到未结算课酬记录!");
             return;
@@ -677,7 +677,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
         String startDate = DateUtil.format(DateUtil.getFirstDayOfMonth(date),DateUtil.DEFAULT_PATTERN);
         String endDate = DateUtil.format(DateUtil.getLastDayOfMonth(date),DateUtil.DEFAULT_PATTERN);
         //课程教师课酬
-        List<CourseScheduleTeacherSalary> courseScheduleTeacherSalaries = courseScheduleTeacherSalaryDao.findTeacherCourseSalaryNoSettlement(startDate,endDate,"MUSIC");
+        List<CourseScheduleTeacherSalary> courseScheduleTeacherSalaries = courseScheduleTeacherSalaryDao.findTeacherCourseSalaryNoSettlement(startDate,endDate,"MUSIC",tenantId);
 
         if (CollectionUtils.isEmpty(courseScheduleTeacherSalaries)) {
             return;
@@ -685,7 +685,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
         List<Long> courseScheduleIds = courseScheduleTeacherSalaries.stream().map(CourseScheduleTeacherSalary::getCourseScheduleId).collect(Collectors.toList());
 
         //获取上个月的课程计划
-        List<CourseSchedule> yesterdayCourseSchedules = courseScheduleDao.findCourseScheduleWithDate(startDate,endDate);
+        List<CourseSchedule> yesterdayCourseSchedules = courseScheduleDao.findCourseScheduleWithDate(startDate,endDate, tenantId);
 
         Set<Integer> schoolIds = yesterdayCourseSchedules.stream().map(CourseSchedule::getSchoolId).collect(Collectors.toSet());
         Map<Integer, School> idSchoolMap = new HashMap<>();
@@ -1046,7 +1046,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
         if(Objects.isNull(month)){
             month=DateUtil.dateToString(DateUtil.addMonths(new Date(), -1), "yyyy-MM");
         }
-        List<Long> teacherSalaryIds = courseScheduleTeacherSalaryDao.findTeacherSalaryIdsWithMonth(teacherId, month);
+        List<Long> teacherSalaryIds = courseScheduleTeacherSalaryDao.findTeacherSalaryIdsWithMonth(teacherId, month, TenantContextHolder.getTenantId());
         if(CollectionUtils.isEmpty(teacherSalaryIds)){
             return;
         }
@@ -1145,11 +1145,11 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
         if(Objects.isNull(month)){
             month=DateUtil.dateToString(DateUtil.addMonths(new Date(), -1), "yyyy-MM");
         }
-        int i = courseScheduleTeacherSalaryDao.countOpenConfirmSalarysWithMonth(month,null);
+        int i = courseScheduleTeacherSalaryDao.countOpenConfirmSalarysWithMonth(month,null,TenantContextHolder.getTenantId());
         if(i<=0){
             throw new BizException("课酬确认已开启");
         }
-        List<Long> teacherSalaryIds = courseScheduleTeacherSalaryDao.findTeacherSalaryIdsWithMonth(null, month);
+        List<Long> teacherSalaryIds = courseScheduleTeacherSalaryDao.findTeacherSalaryIdsWithMonth(null, month, TenantContextHolder.getTenantId());
         if(CollectionUtils.isEmpty(teacherSalaryIds)){
             return;
         }
@@ -1159,7 +1159,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
         String notifyUrl="8?"+teacherBaseUrl+"/#/remuneration?month=" + month;
         String monthStr = DateUtil.dateToString(DateUtil.stringToDate(month, "yyyy-MM"),"M月");
         String expireDateStr = DateUtil.dateToString(DateUtil.addDays(new Date(), 2), "M月d号");
-        List<Integer> teacherIds = courseScheduleTeacherSalaryDao.findIsSettlementTeacherIdsWithMonth(month);
+        List<Integer> teacherIds = courseScheduleTeacherSalaryDao.findIsSettlementTeacherIdsWithMonth(month, TenantContextHolder.getTenantId());
         Map<Integer, String> userMap = teacherIds.stream().collect(Collectors.toMap(Integer::valueOf, id->String.valueOf(id)));
         sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.TEACHER_PUSH_SALARY_CONFIRM,
                 userMap, null, 0, notifyUrl, "TEACHER", monthStr, expireDateStr);
@@ -1171,7 +1171,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
         if(Objects.isNull(month)){
             month=DateUtil.dateToString(DateUtil.addMonths(new Date(), -1), "yyyy-MM");
         }
-        List<Long> teacherSalaryIds = courseScheduleTeacherSalaryDao.findTeacherSalaryIdsWithMonth(null, month);
+        List<Long> teacherSalaryIds = courseScheduleTeacherSalaryDao.findTeacherSalaryIdsWithMonth(null, month, TenantContextHolder.getTenantId());
         if(CollectionUtils.isEmpty(teacherSalaryIds)){
             return;
         }
@@ -1502,7 +1502,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
         String endDate = DateUtil.format(DateUtil.getLastDayOfMonth(date),DateUtil.DEFAULT_PATTERN);
 
         redisTemplate.delete(CourseScheduleTeacherSalaryService.TASK_KEY);
-        List<CourseScheduleTeacherSalary> salaries = courseScheduleTeacherSalaryDao.getIsSalaryWithDate(startDate, endDate);
+        List<CourseScheduleTeacherSalary> salaries = courseScheduleTeacherSalaryDao.getIsSalaryWithDate(startDate, endDate, tenantId);
         if(CollectionUtils.isEmpty(salaries)){
             return;
         }

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

@@ -14,6 +14,7 @@ import com.ym.mec.biz.service.ExportService;
 import com.ym.mec.biz.service.StudentPaymentOrderService;
 import com.ym.mec.biz.service.StudentService;
 import com.ym.mec.common.exception.BizException;
+import com.ym.mec.common.tenant.TenantContextHolder;
 import com.ym.mec.thirdparty.storage.StoragePluginContext;
 import com.ym.mec.thirdparty.storage.provider.KS3StoragePlugin;
 import com.ym.mec.util.collection.MapUtil;
@@ -891,7 +892,7 @@ public class ExportServiceImpl implements ExportService {
     @Override
     @Async
     public void studentVipPractice(String organId, ManagerDownload managerDownload) throws FileNotFoundException {
-        List<StudentVipPracticeExportDto> studentVipPracticeExportDtos = courseScheduleStudentPaymentDao.exportStudentVipPractice(organId);
+        List<StudentVipPracticeExportDto> studentVipPracticeExportDtos = courseScheduleStudentPaymentDao.exportStudentVipPractice(organId, TenantContextHolder.getTenantId());
         if(studentVipPracticeExportDtos != null && studentVipPracticeExportDtos.size() > 0){
             List<Integer> studentIds = studentVipPracticeExportDtos.stream().map(e -> e.getUserId()).collect(Collectors.toList());
             //获取学员最后一节已结束的vip课的老师以及编号

+ 0 - 66
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ExtracurricularExercisesReplyServiceImpl.java

@@ -246,72 +246,6 @@ public class ExtracurricularExercisesReplyServiceImpl extends BaseServiceImpl<Lo
 
 	@Override
 	@Transactional(rollbackFor = Exception.class)
-	public void exercisesSituationStatistics() {
-		LocalDate nowDate = LocalDateTime.now(DateUtil.zoneId).toLocalDate();
-		if(nowDate.getDayOfWeek()==DayOfWeek.MONDAY){
-			nowDate = nowDate.plusDays(-1);
-			int lastWeekTodayUpdateNum = studentExtracurricularExercisesSituationDao.findLastWeekTodayUpdateNum(nowDate.toString());
-			if(lastWeekTodayUpdateNum>0){
-				nowDate = LocalDateTime.now(DateUtil.zoneId).toLocalDate();
-			}
-		}
-		LocalDate monDayDate = nowDate.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.MONDAY.getValue());
-		LocalDate sunDayDate = nowDate.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.SUNDAY.getValue());
-		List<Practice4ExercisesSituationDto> noPracticeStudents = courseScheduleStudentPaymentDao.findNoPracticeStudentIdsOnWeek(monDayDate.toString(),sunDayDate.toString());
-		if(CollectionUtils.isEmpty(noPracticeStudents)){
-			return;
-		}
-		Map<Integer, List<Practice4ExercisesSituationDto>> studentCourseMap = noPracticeStudents.stream().filter(e->Objects.nonNull(e.getCourseStartTime())).collect(Collectors.groupingBy(Practice4ExercisesSituationDto::getUserId));
-
-		List<ExtracurricularExercisesReply> noPracticeStudentExercisesInWeek = extracurricularExercisesReplyDao.findNoPracticeStudentExercisesInWeek(monDayDate.toString(), sunDayDate.toString());
-		Map<Integer, List<ExtracurricularExercisesReply>> studentExercisesMap = noPracticeStudentExercisesInWeek.stream().collect(Collectors.groupingBy(ExtracurricularExercisesReply::getUserId));
-
-		List<StudentExtracurricularExercisesSituation> results=new ArrayList<>();
-		for (Map.Entry<Integer, List<Practice4ExercisesSituationDto>> studentCourseEntry : studentCourseMap.entrySet()) {
-			StudentExtracurricularExercisesSituation studentExtracurricularExercisesSituation=new StudentExtracurricularExercisesSituation();
-			studentExtracurricularExercisesSituation.setStudentId(studentCourseEntry.getKey());
-			studentCourseEntry.getValue().sort(Comparator.comparing(Practice4ExercisesSituationDto::getCourseStartTime).reversed());
-			studentExtracurricularExercisesSituation.setTeacherId(studentCourseEntry.getValue().get(0).getActualTeacherId());
-			studentExtracurricularExercisesSituation.setExpectExercisesNum(1);
-			studentExtracurricularExercisesSituation.setWeekOfYear(nowDate.get(DateUtil.weekFields.weekOfYear()));
-			studentExtracurricularExercisesSituation.setMonday(DateUtil.stringToDate(monDayDate.toString(), "yyyy-MM-dd"));
-			studentExtracurricularExercisesSituation.setSunday(DateUtil.stringToDate(sunDayDate.toString(), "yyyy-MM-dd"));
-			List<ExtracurricularExercisesReply> studentExercises = studentExercisesMap.get(studentCourseEntry.getKey());
-			if(CollectionUtils.isEmpty(studentExercises)){
-				studentExtracurricularExercisesSituation.setActualExercisesNum(0);
-				studentExtracurricularExercisesSituation.setExercisesReplyNum(0);
-				studentExtracurricularExercisesSituation.setExercisesMessageNum(0);
-				studentExtracurricularExercisesSituation.setExercisesMessageTimelyNum(0);
-				results.add(studentExtracurricularExercisesSituation);
-				continue;
-			}
-			studentExtracurricularExercisesSituation.setActualExercisesNum(1);
-			long replyNum = studentExercises.stream().filter(e -> e.getStatus()==1).count();
-			studentExtracurricularExercisesSituation.setExercisesReplyNum(replyNum>0?1:0);
-			int exercisesMessageNum=0;
-			int exercisesMessageTimelyNum=0;
-			for (ExtracurricularExercisesReply studentExercise : studentExercises) {
-				if(!new Integer(1).equals(studentExercise.getStatus())){
-					continue;
-				}
-				if(!new Integer(1).equals(studentExercise.getIsReplied())){
-					continue;
-				}
-				exercisesMessageNum+=1;
-				if(new Integer(1).equals(studentExercise.getIsRepliedTimely())){
-					exercisesMessageTimelyNum+=1;
-				}
-			}
-			studentExtracurricularExercisesSituation.setExercisesMessageNum(exercisesMessageNum>0?1:0);
-			studentExtracurricularExercisesSituation.setExercisesMessageTimelyNum(exercisesMessageTimelyNum>0?1:0);
-			results.add(studentExtracurricularExercisesSituation);
-		}
-		studentExtracurricularExercisesSituationDao.deleteByMonday(monDayDate.toString(),null);
-		studentExtracurricularExercisesSituationDao.batchInsert(results);
-	}
-
-	@Override
-	@Transactional(rollbackFor = Exception.class)
 	public void exercisesSituationStatistics2(String monday) {
 		LocalDate nowDate = LocalDateTime.now(DateUtil.zoneId).toLocalDate();
 

+ 5 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/PracticeLessonApplyServiceImpl.java

@@ -5,6 +5,7 @@ import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dao.CourseScheduleStudentPaymentDao;
 import com.ym.mec.biz.dal.dto.PracticeSumDto;
 import com.ym.mec.common.exception.BizException;
+
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -13,6 +14,8 @@ import com.ym.mec.biz.dal.entity.PracticeLessonApply;
 import com.ym.mec.biz.service.PracticeLessonApplyService;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
+import com.ym.mec.common.tenant.TenantContextHolder;
+
 import org.springframework.transaction.annotation.Transactional;
 
 import java.util.*;
@@ -39,8 +42,8 @@ public class PracticeLessonApplyServiceImpl extends BaseServiceImpl<Integer, Pra
 
 	@Override
 	public Map<String, Object> practiceSum() {
-		Set<Integer> musicUserIds = scheduleStudentPaymentDao.queryMusicStudentPer();
-		Set<Integer> vipUserIds = scheduleStudentPaymentDao.queryVipStudentPer();
+		Set<Integer> musicUserIds = scheduleStudentPaymentDao.queryMusicStudentPer(TenantContextHolder.getTenantId());
+		Set<Integer> vipUserIds = scheduleStudentPaymentDao.queryVipStudentPer(TenantContextHolder.getTenantId());
 		musicUserIds.addAll(vipUserIds);
 		List<PracticeSumDto> practiceSumDtos = practiceLessonApplyDao.practiceSum(musicUserIds);
 		Integer totalNum = practiceLessonApplyDao.getTotalNum(musicUserIds);

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

@@ -261,7 +261,7 @@ public class StudentServiceImpl extends BaseServiceImpl<Integer, Student> implem
 
     @Override
     public void initTeacherId() {
-        List<StudentTeacherCourseDto> allStudentCourseInfo = courseScheduleStudentPaymentDao.findAllStudentCourseInfo();
+        List<StudentTeacherCourseDto> allStudentCourseInfo = courseScheduleStudentPaymentDao.findAllStudentCourseInfo(TenantContextHolder.getTenantId());
         Map<Integer, List<StudentTeacherCourseDto>> studentCoursesMap = allStudentCourseInfo.stream().collect(Collectors.groupingBy(StudentTeacherCourseDto::getStudentId));
         List<Student> students = new ArrayList<>();
         for (Map.Entry<Integer, List<StudentTeacherCourseDto>> studentCoursesEntry : studentCoursesMap.entrySet()) {

+ 4 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherCourseScheduleServiceImpl.java

@@ -6,6 +6,8 @@ import com.ym.mec.biz.dal.entity.CourseSchedule;
 import com.ym.mec.biz.dal.enums.GroupType;
 import com.ym.mec.biz.service.TeacherCourseScheduleService;
 import com.ym.mec.common.exception.BizException;
+import com.ym.mec.common.tenant.TenantContextHolder;
+
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -26,7 +28,7 @@ public class TeacherCourseScheduleServiceImpl implements TeacherCourseScheduleSe
 
     @Override
     public List<Date> findTeacherHaveClassesDates(Integer teacherId, Date month, String groupId, GroupType type) {
-        return courseScheduleDao.findHaveClassesDatesWithMonth(teacherId,month,groupId,type);
+        return courseScheduleDao.findHaveClassesDatesWithMonth(teacherId,month,groupId,type, TenantContextHolder.getTenantId());
     }
 
     @Override
@@ -35,7 +37,7 @@ public class TeacherCourseScheduleServiceImpl implements TeacherCourseScheduleSe
             throw new BizException("请指定课程");
         }
         CourseSchedule currentCourseSchedule = courseScheduleDao.get(courseScheduleId);
-        List<CourseScheduleDto> teacherCourseSchedulesWithDate = courseScheduleDao.findCourseSchedulesWithDate(null,null,currentCourseSchedule.getMusicGroupId(),currentCourseSchedule.getGroupType());
+        List<CourseScheduleDto> teacherCourseSchedulesWithDate = courseScheduleDao.findCourseSchedulesWithDate(null,null,currentCourseSchedule.getMusicGroupId(),currentCourseSchedule.getGroupType(),TenantContextHolder.getTenantId());
         List<CourseScheduleDto> notStartClasses=new ArrayList<>();
         List<CourseScheduleDto> overClasses=new ArrayList<>();
         CourseScheduleDto currentClasses=null;

+ 30 - 248
mec-biz/src/main/resources/config/mybatis/CourseScheduleMapper.xml

@@ -561,7 +561,7 @@
                 LEFT JOIN music_group mg ON cs.music_group_id_=mg.id_
             </if>
         WHERE
-            (cs.del_flag_ != 1 OR cs.del_flag_ IS NULL) AND cs.pre_course_flag_ = 0
+            (cs.del_flag_ != 1 OR cs.del_flag_ IS NULL) AND cs.pre_course_flag_ = 0 and cs.tenant_id_ = #{tenantId}
             <if test="organIds!=null and organIds.size()>0">
                 AND cs.organ_id_ IN
                 <foreach collection="organIds" item="organId" separator="," open="(" close=")">
@@ -601,7 +601,7 @@
                 LEFT JOIN music_group mg ON cs.music_group_id_=mg.id_
             </if>
         WHERE
-        (cs.del_flag_ != 1 OR cs.del_flag_ IS NULL) AND cs.pre_course_flag_ = 0
+        (cs.del_flag_ != 1 OR cs.del_flag_ IS NULL) AND cs.pre_course_flag_ = 0 and cs.tenant_id_ = #{tenantId}
         AND cs.id_ IS NOT NULL
         <if test="organIds!=null and organIds.size()>0">
             AND cs.organ_id_ IN
@@ -734,7 +734,7 @@
         LEFT JOIN teacher_attendance ta ON cs.id_=ta.course_schedule_id_ AND ta.teacher_id_=#{teacherId}
         WHERE
         (cs.del_flag_ != 1 OR cs.del_flag_ IS NULL)
-        AND (cs.is_lock_=0 OR cs.is_lock_ IS NULL)
+        AND (cs.is_lock_=0 OR cs.is_lock_ IS NULL) and cs.tenant_id_ = #{tenantId}
         <if test="teacherId!=null">
             AND cs.actual_teacher_id_=#{teacherId}
         </if>
@@ -844,7 +844,8 @@
         FROM
         course_schedule cs
         WHERE
-        cs.class_date_ IN
+        cs.tenant_id_ = #{tenantId}
+        and cs.class_date_ IN
         <foreach collection="dates" item="date" open="(" close=")" separator=",">
             DATE_FORMAT(#{date},'%Y-%m-%d')
         </foreach>
@@ -872,7 +873,7 @@
         FROM
         course_schedule cs
         LEFT JOIN course_schedule_teacher_salary csts ON cs.id_ = csts.course_schedule_id_
-        WHERE
+        WHERE cs.tenant_id_ = #{tenantId} and
         cs.class_date_ IN
         <foreach collection="dates" item="date" open="(" close=")" separator=",">
             DATE_FORMAT(#{date},'%Y-%m-%d')
@@ -963,7 +964,7 @@
         WHERE
         (cs.del_flag_ != 1 OR cs.del_flag_ IS NULL)
         AND (cs.is_lock_=0 OR cs.is_lock_ IS NULL)
-        AND cg.del_flag_ = 0
+        AND cg.del_flag_ = 0 and cs.tenant_id_ = #{tenantId}
         <if test="teacherId!=null">
             AND cs.actual_teacher_id_=#{teacherId}
         </if>
@@ -1038,7 +1039,7 @@
                 LEFT JOIN music_group mg ON cs.music_group_id_=mg.id_
             </if>
         WHERE
-            (cs.del_flag_ != 1 OR cs.del_flag_ IS NULL) AND cs.pre_course_flag_ = 0
+            (cs.del_flag_ != 1 OR cs.del_flag_ IS NULL) AND cs.pre_course_flag_ = 0 and cs.tenant_id_ = #{tenantId}
             <if test="organIds!=null and organIds.size()>0">
                 AND cs.organ_id_ IN
                 <foreach collection="organIds" item="organId" separator="," open="(" close=")">
@@ -1237,17 +1238,16 @@
         teach_mode_
         FROM
         course_schedule
-        <where>
-            <if test="classGroupId!=null">
-                AND class_group_id_ = #{classGroupId}
-            </if>
-            <if test="classDates!=null">
-                AND class_date_ IN
-                <foreach collection="classDates" item="classDate" open="(" close=")" separator=",">
-                    #{classDate}
-                </foreach>
-            </if>
-        </where>
+        where tenant_id_ = #{tenantId}
+        <if test="classGroupId!=null">
+            AND class_group_id_ = #{classGroupId}
+        </if>
+        <if test="classDates!=null">
+            AND class_date_ IN
+            <foreach collection="classDates" item="classDate" open="(" close=")" separator=",">
+                #{classDate}
+            </foreach>
+        </if>
     </select>
 
     <select id="findClassTypeByCourse" resultType="string">
@@ -1267,6 +1267,7 @@
                  LEFT JOIN teacher t ON cs.actual_teacher_id_ = t.id_
         WHERE cs.status_ = #{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
           AND date_format(#{monthDate}, '%Y%m') = date_format(cs.class_date_, '%Y%m')
+          and cs.tenant_id_ = #{tenantId}
         GROUP BY vp.organ_id_, cs.actual_teacher_id_
     </select>
 
@@ -1336,7 +1337,7 @@
                 </if>
                 update_time_ = NOW()
             </set>
-            WHERE id_ = #{item.id}
+            WHERE id_ = #{item.id} and tenant_id_ = #{item.tenantId}
         </foreach>
     </update>
     <update id="updateByMusicGroupId">
@@ -1759,55 +1760,6 @@
           AND DATE_FORMAT(#{startTime}, '%H:%i:%S') &lt;= DATE_FORMAT(cs.end_class_time_, '%H:%i:%S')
           AND DATE_FORMAT(#{endTime}, '%H:%i:%S') &gt;= DATE_FORMAT(cs.start_class_time_, '%H:%i:%S')
     </select>
-    <select id="findByDateZone" resultMap="CourseSchedule">
-        SELECT cs.id_,
-               cs.class_group_id_,
-               cs.status_,
-               cs.subsidy_,
-               cs.class_date_,
-               CONCAT(cs.class_date_, ' ', cs.start_class_time_) start_class_time_,
-               CONCAT(cs.class_date_, ' ', cs.end_class_time_)   end_class_time_,
-               cs.teacher_id_,
-               cs.actual_teacher_id_,
-               cs.create_time_,
-               cs.update_time_,
-               cs.teach_mode_,
-               cs.type_,
-               cs.name_,
-               cs.student_num_,
-               cs.leave_student_num_,
-               cs.schoole_id_
-        FROM course_schedule cs
-        WHERE (cs.class_date_ BETWEEN DATE_FORMAT(#{startTime}, '%Y%m%d') AND DATE_FORMAT(#{endTime}, '%Y%m%d'))
-          AND cs.status_ = 'NOT_START'
-    </select>
-    <select id="findAllCourseByDateZone" resultMap="CourseSchedule">
-        SELECT cs.id_,
-               cs.music_group_id_,
-               cs.group_type_,
-               cs.class_group_id_,
-               cs.status_,
-               cs.subsidy_,
-               cs.class_date_,
-               CONCAT(cs.class_date_, ' ', cs.start_class_time_) start_class_time_,
-               CONCAT(cs.class_date_, ' ', cs.end_class_time_)   end_class_time_,
-               cs.teacher_id_,
-               cs.actual_teacher_id_,
-               cs.create_time_,
-               cs.update_time_,
-               cs.teach_mode_,
-               cs.type_,
-               cs.name_,
-               cs.student_num_,
-               cs.leave_student_num_,
-               cs.schoole_id_,
-               cg.type_                                          class_group_type_
-        FROM course_schedule cs
-                 left join class_group cg on cs.class_group_id_ = cg.id_
-        WHERE (cs.class_date_ BETWEEN DATE_FORMAT(#{startTime}, '%Y%m%d') AND DATE_FORMAT(#{endTime}, '%Y%m%d'))
-          AND (cs.del_flag_ IS NULL OR cs.del_flag_ = 0)
-          AND (cg.del_flag_ IS NULL OR cg.del_flag_ = 0)
-    </select>
 
     <select id="findByClassDate" resultMap="CourseSchedule">
         SELECT
@@ -1827,44 +1779,11 @@
             #{classDate}
         </foreach>
         )
+        and cs.tenant_id_ = #{tenantId}
         AND (cs.del_flag_ IS NULL OR cs.del_flag_=0)
         AND (cs.new_course_id_ IS NULL OR cs.new_course_id_=cs.id_)
     </select>
 
-    <select id="findByClassDateWithoutMusicGroup" resultMap="CourseSchedule">
-        SELECT
-        cs.id_,
-        cs.music_group_id_,
-        cs.class_group_id_,
-        cs.class_date_,
-        CONCAT(cs.class_date_,' ',cs.start_class_time_) start_class_time_,
-        CONCAT(cs.class_date_,' ',cs.end_class_time_) end_class_time_,
-        cs.type_,
-        cs.name_,
-        cs.actual_teacher_id_
-        FROM
-        course_schedule cs
-        WHERE
-        cs.group_type_!='MUSIC'
-        AND (cs.class_date_ IN
-        <foreach collection="classDates" item="classDate" open="(" close=")" separator=",">
-            #{classDate}
-        </foreach>
-        )
-        AND (cs.del_flag_ IS NULL OR cs.del_flag_=0)
-    </select>
-
-    <select id="findAllCourseByDateZone2" resultMap="CourseSchedule">
-        SELECT cs.id_,
-               cs.class_group_id_,
-               CONCAT(cs.class_date_, ' ', cs.start_class_time_) start_class_time_,
-               CONCAT(cs.class_date_, ' ', cs.end_class_time_)   end_class_time_,
-               cs.actual_teacher_id_
-        FROM course_schedule cs
-        WHERE (cs.class_date_ BETWEEN DATE_FORMAT(#{startTime}, '%Y%m%d') AND DATE_FORMAT(#{endTime}, '%Y%m%d'))
-          AND (cs.del_flag_ IS NULL OR cs.del_flag_ = 0)
-    </select>
-
     <select id="queryStudentCoursesTimesOfTomorrow" resultMap="Mapper">
         select cssp.user_id_ key_, count(1) value_
         from course_schedule cs
@@ -1957,21 +1876,10 @@
             (cs.new_course_id_ IS NULL OR cs.new_course_id_=cs.id_)
             AND cs.class_date_ BETWEEN #{startDate} AND #{endDate}
           AND cs.group_type_ = 'MUSIC'
+          and cs.tenant_id_ = #{tenantId}
           AND (cs.del_flag_ IS NULL OR cs.del_flag_ = 0) AND cs.pre_course_flag_ = 0
     </select>
 
-    <select id="countIsSalaryGroupTypes" resultType="int">
-        SELECT
-            COUNT(DISTINCT csts.group_type_)
-        FROM
-            course_schedule_teacher_salary csts
-                LEFT JOIN course_schedule cs ON csts.course_schedule_id_ = cs.id_
-        WHERE
-            cs.class_date_ BETWEEN #{startDate} AND #{endDate}
-          AND ( cs.del_flag_ IS NULL OR cs.del_flag_ = 0 )
-          AND csts.settlement_time_ IS NOT NULL
-    </select>
-
     <select id="findByClassGroup" resultMap="CourseSchedule">
         select cs.id_,
                cs.class_group_id_,
@@ -2061,29 +1969,6 @@
         GROUP BY user_id_
     </select>
 
-    <select id="findAllCourseSches" resultMap="CourseSchedule">
-        select cs.id_,
-               cs.class_group_id_,
-               cs.status_,
-               cs.subsidy_,
-               cs.class_date_,
-               CONCAT(cs.class_date_, ' ', cs.start_class_time_) start_class_time_,
-               CONCAT(cs.class_date_, ' ', cs.end_class_time_)   end_class_time_,
-               cs.start_class_time_                              start_class_time_str_,
-               cs.end_class_time_                                end_class_time_str_,
-               cs.teacher_id_,
-               cs.actual_teacher_id_,
-               cs.create_time_,
-               cs.update_time_,
-               cs.teach_mode_,
-               cs.type_,
-               cs.name_,
-               cs.student_num_,
-               cs.leave_student_num_,
-               cs.schoole_id_
-        from course_schedule cs
-    </select>
-
     <select id="findOneCourseScheduleByClassGroupId" resultMap="CourseSchedule">
         SELECT *
         FROM course_schedule
@@ -2188,48 +2073,6 @@
         DELETE FROM course_schedule WHERE music_group_id_ = #{musicGroupId} AND group_type_ = 'MUSIC' AND pre_course_flag_ = 1
     </delete>
 
-    <select id="queryUnsignedStudentList" resultMap="StudentAttendance">
-        SELECT cssp.user_id_,
-               cs.actual_teacher_id_ teacher_id_,
-               cs.id_                course_schedule_id_,
-               cs.class_group_id_,
-               cs.music_group_id_,
-               cs.group_type_,
-               cg.current_class_times_
-        FROM course_schedule_student_payment cssp
-                 LEFT JOIN course_schedule cs ON cssp.course_schedule_id_ = cs.id_
-                 LEFT JOIN class_group cg ON cg.id_ = cs.class_group_id_
-                 LEFT JOIN student_attendance sa
-                           ON sa.course_schedule_id_ = cssp.course_schedule_id_ AND cssp.user_id_ = sa.user_id_
-        WHERE CONCAT(cs.class_date_, ' ', cs.end_class_time_) &lt;= DATE_ADD(NOW(), INTERVAL -1 HOUR)
-          AND sa.id_ IS NULL
-    </select>
-    <select id="getNextCourseSchedule" resultMap="CourseSchedule">
-        SELECT cs.id_,
-               cs.class_group_id_,
-               cs.status_,
-               cs.subsidy_,
-               cs.class_date_,
-               CONCAT(cs.class_date_, ' ', cs.start_class_time_) start_class_time_,
-               CONCAT(cs.class_date_, ' ', cs.end_class_time_)   end_class_time_,
-               cs.start_class_time_                              start_class_time_str_,
-               cs.end_class_time_                                end_class_time_str_,
-               cs.teacher_id_,
-               cs.actual_teacher_id_,
-               cs.create_time_,
-               cs.update_time_,
-               cs.teach_mode_,
-               cs.type_,
-               cs.name_,
-               cs.student_num_,
-               cs.leave_student_num_,
-               cs.schoole_id_
-        FROM course_schedule cs
-        WHERE cs.class_group_id_ = #{classGroupId}
-          AND CONCAT(cs.class_date_, ' ', cs.start_class_time_) &gt; NOW()
-        ORDER BY CONCAT(cs.class_date_, ' ', cs.start_class_time_)
-        LIMIT 1
-    </select>
     <select id="countCurrentTimes" resultType="int">
         SELECT COUNT(*)
         FROM course_schedule
@@ -2516,7 +2359,7 @@
 
     <sql id="endFindCourseSchedulesCondition">
         <where>
-            cs.del_flag_ = 0 AND cs.pre_course_flag_ = 0
+            cs.del_flag_ = 0 AND cs.pre_course_flag_ = 0 and cs.tenant_id_ = #{tenantId}
             <include refid="queryVipCourseScheduleIds"/>
         </where>
     </sql>
@@ -2586,20 +2429,6 @@
         LEFT JOIN course_schedule_teacher_salary csts ON csts.course_schedule_id_ = cs.id_
         <include refid="endFindCourseSchedulesCondition"/>
     </select>
-    <select id="findCourseIdsByStudent" resultType="int">
-        SELECT cssp.course_schedule_id_
-        FROM course_schedule_student_payment cssp
-        LEFT JOIN sys_user su ON cssp.user_id_ = su.id_
-        WHERE su.username_ LIKE CONCAT('%', #{search}, '%')
-           OR su.id_ = #{search}
-    </select>
-    <select id="findCourseIdsByTeacher" resultType="int">
-        SELECT csts.course_schedule_id_
-        FROM course_schedule_teacher_salary csts
-                 LEFT JOIN sys_user su ON csts.user_id_ = su.id_
-        WHERE real_name_ LIKE CONCAT('%', #{search}, '%')
-           OR su.id_ = #{search}
-    </select>
     <select id="findClassGroupCourseSchedulesWithDate" resultMap="CourseSchedule">
         SELECT <include refid="resultSql"/>
         FROM course_schedule cs
@@ -2628,21 +2457,6 @@
         WHERE group_type_ = #{groupType, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
           AND music_group_id_ = #{groupId}
     </select>
-    <select id="queryMusicCourseScheduleIds" resultType="java.lang.Integer">
-        SELECT cs.id_ FROM course_schedule cs
-        LEFT JOIN music_group mg ON cs.music_group_id_ = mg.id_
-        LEFT JOIN class_group cg ON cs.class_group_id_ = cg.id_
-        WHERE cs.group_type_ = 'MUSIC' AND cs.del_flag_ = 0 AND cg.del_flag_ = 0
-        <if test="search != null and search != ''">
-            AND (mg.id_ = #{search} OR mg.name_ LIKE CONCAT('%',#{search},'%')
-            OR cs.id_ = #{search} OR cs.name_ LIKE CONCAT('%',#{search},'%')
-            OR cg.id_ = #{search} OR cg.name_ LIKE CONCAT('%',#{search},'%'))
-        </if>
-        <if test="organIdList != null and organIdList != ''">
-            AND FIND_IN_SET(mg.organ_id_,#{organIdList})
-        </if>
-        <include refid="queryVipCourseScheduleIds"/>
-    </select>
     <sql id="queryVipCourseScheduleIds">
         <if test="mergeCourseType != null and mergeCourseType != ''">
             <if test="mergeCourseType == 'MASTER'">
@@ -2712,6 +2526,9 @@
         <if test="courseIdSearch != null">
             AND cs.id_ = #{courseIdSearch}
         </if>
+        <if test="tenantId != null">
+            AND cs.tenant_id_ = #{tenantId}
+        </if>
         <if test="searchType == 'ERR_ATTENDANCE'">
             AND ta.teacher_id_ = cs.actual_teacher_id_
             AND cs.status_ = 'OVER'
@@ -2737,37 +2554,6 @@
             </foreach>
         </if>
     </sql>
-    <select id="queryPracticeCourseScheduleIds" resultType="java.lang.Integer">
-        SELECT cs.id_ FROM course_schedule cs
-        LEFT JOIN practice_group pg ON cs.music_group_id_ = pg.id_
-        LEFT JOIN class_group cg ON cs.class_group_id_ = cg.id_
-        WHERE cs.group_type_ = 'PRACTICE' AND cs.del_flag_ = 0 AND cg.del_flag_ = 0
-        AND pg.group_status_='NORMAL'
-        <if test="search != null and search != ''">
-            AND (pg.id_ = #{search} OR pg.name_ LIKE CONCAT('%',#{search},'%')
-            OR cs.id_ = #{search} OR cs.name_ LIKE CONCAT('%',#{search},'%')
-            OR cg.id_ = #{search} OR cg.name_ LIKE CONCAT('%',#{search},'%'))
-        </if>
-        <if test="organIdList != null and organIdList != ''">
-            AND FIND_IN_SET(pg.organ_id_,#{organIdList})
-        </if>
-        <include refid="queryVipCourseScheduleIds"/>
-    </select>
-    <select id="queryVipCourseScheduleIds" resultType="java.lang.Integer">
-        SELECT cs.id_ FROM course_schedule cs
-        LEFT JOIN vip_group vg ON cs.music_group_id_ = vg.id_
-        LEFT JOIN class_group cg ON cs.class_group_id_ = cg.id_
-        WHERE cs.group_type_ = 'VIP' AND cs.del_flag_ = 0 AND cg.del_flag_ = 0
-        <if test="search != null and search != ''">
-            AND (vg.id_ = #{search} OR vg.name_ LIKE CONCAT('%',#{search},'%')
-            OR cs.id_ = #{search} OR cs.name_ LIKE CONCAT('%',#{search},'%')
-            OR cg.id_ = #{search} OR cg.name_ LIKE CONCAT('%',#{search},'%'))
-        </if>
-        <if test="organIdList != null and organIdList != ''">
-            AND FIND_IN_SET(vg.organ_id_,#{organIdList})
-        </if>
-        <include refid="queryVipCourseScheduleIds"/>
-    </select>
     <select id="findTeachersCoursesWithDateRange" resultMap="CourseSchedule">
         SELECT
         cs.id_,
@@ -3251,7 +3037,7 @@
         cs.status_
         FROM course_schedule cs
         LEFT JOIN course_schedule_evaluate cse ON cs.id_ = cse.course_schedule_id_
-        WHERE cs.group_type_ = #{groupType} AND cs.pre_course_flag_ = 0
+        WHERE cs.group_type_ = #{groupType} AND cs.pre_course_flag_ = 0 and cs.tenant_id_ = #{tenantId}
         <if test="groupId != null">
             AND cs.music_group_id_ = #{groupId}
         </if>
@@ -3334,12 +3120,10 @@
         WHERE cs.group_type_ = #{groupType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
         AND cs.del_flag_ = 0
         AND (cs.new_course_id_ IS NULL OR cs.new_course_id_ = 0) AND cs.pre_course_flag_ = 0
-        <if test="groupIds!=null and groupIds.size()>0">
-            AND cs.music_group_id_ IN
+        AND cs.music_group_id_ IN
             <foreach collection="groupIds" item="groupId" open="(" close=")" separator=",">
                 #{groupId}
             </foreach>
-        </if>
     </select>
     <select id="queryScheduleByAttendance" resultMap="CourseSchedule">
         SELECT cs.*
@@ -3405,9 +3189,7 @@
             LEFT JOIN `sys_user` edut ON edut.`id_` = vg.`educational_teacher_id_`
         WHERE cssp.`group_type_` = 'VIP'
         AND vg.group_status_!=3
-        <if test="organIds != null and organIds != ''">
-            AND FIND_IN_SET(vg.organ_id_, #{organIds})
-        </if>
+        AND FIND_IN_SET(vg.organ_id_, #{organIds})
         GROUP BY cssp.`user_id_`,o.id_
     </select>
 
@@ -4085,7 +3867,7 @@
         LEFT JOIN course_schedule_student_payment cssp ON s.user_id_ = cssp.user_id_
         LEFT JOIN course_schedule cs ON cs.id_ = cssp.course_schedule_id_ AND cs.group_type_ = #{groupType} AND cs.del_flag_ = 0 AND cs.pre_course_flag_ = 0
         LEFT JOIN sys_user su ON su.id_ = s.user_id_
-        WHERE 1=1
+        WHERE 1=1 and s.tenant_id_ = #{tenantId}
         <if test="hasMember != null">
             <if test="hasMember == 1">
                 AND s.member_rank_setting_id_ IS NOT NULL

+ 6 - 4
mec-biz/src/main/resources/config/mybatis/CourseScheduleModifyLogMapper.xml

@@ -11,6 +11,7 @@
 		<result column="previous_course_schedule_" property="previousCourseSchedule" />
 		<result column="current_course_schedule_" property="currentCourseSchedule" />
 		<result column="create_time_" property="createTime" />
+		<result column="tenant_id_" property="tenantId" />
 	</resultMap>
 
 
@@ -28,19 +29,20 @@
 		<!-- <selectKey resultClass="int" keyProperty="id" > SELECT SEQ_WSDEFINITION_ID.nextval 
 			AS ID FROM DUAL </selectKey> -->
 		INSERT INTO course_schedule_modify_log
-		(id_,course_schedule_id_,operator_id_,previous_course_schedule_,current_course_schedule_,create_time_)
-		VALUES(#{id},#{courseScheduleId},#{operatorId},#{previousCourseSchedule},#{currentCourseSchedule},#{createTime})
+		(id_,course_schedule_id_,operator_id_,previous_course_schedule_,current_course_schedule_,create_time_,tenant_id_)
+		VALUES(#{id},#{courseScheduleId},#{operatorId},#{previousCourseSchedule},#{currentCourseSchedule},#{createTime},#{tenantId})
 	</insert>
     <insert id="batchInsert">
 		INSERT INTO course_schedule_modify_log
-		(course_schedule_id_,operator_id_,previous_course_schedule_,current_course_schedule_,create_time_)
+		(course_schedule_id_,operator_id_,previous_course_schedule_,current_course_schedule_,create_time_,tenant_id_)
 		VALUES
 		<foreach collection="scheduleModifyLogs" item="item" separator=",">
-			(#{item.courseScheduleId},#{item.operatorId},#{item.previousCourseSchedule},#{item.currentCourseSchedule},#{item.createTime})
+			(#{item.courseScheduleId},#{item.operatorId},#{item.previousCourseSchedule},#{item.currentCourseSchedule},#{item.createTime},#{tenantId})
 		</foreach>
 	</insert>
 	<sql id="queryPageSql">
 		<where>
+			tenant_id_ = #{tenantId}
 			<if test="courseScheduleId != null">
 				AND course_schedule_id_ = #{courseScheduleId}
 			</if>

+ 14 - 7
mec-biz/src/main/resources/config/mybatis/CourseScheduleReviewMapper.xml

@@ -26,6 +26,7 @@
         <result column="student_name_" jdbcType="VARCHAR" property="studentName"/>
         <result column="student_avatar_" jdbcType="VARCHAR" property="studentAvatar"/>
         <result column="class_date_" jdbcType="DATE" property="classDate"/>
+		<result column="tenant_id_" property="tenantId" />
     </resultMap>
 
     <select id="get" parameterType="java.lang.Integer" resultMap="CourseScheduleReview">
@@ -58,23 +59,23 @@
         song_, memo_, pronunciation_,
         tempo_, music_theory_, has_liaison_,
         hand_homework_, course_review_, create_time_,
-        update_time_)
+        update_time_,tenant_id_)
         values (#{courseScheduleId,jdbcType=INTEGER}, #{classGroupId,jdbcType=INTEGER}, #{teacherId,jdbcType=INTEGER},
         #{educationalTeacherId,jdbcType=INTEGER}, #{studentId,jdbcType=INTEGER}, #{teachingMaterial,jdbcType=VARCHAR},
         #{song,jdbcType=VARCHAR}, #{memo,jdbcType=VARCHAR}, #{pronunciation,jdbcType=INTEGER},
         #{tempo,jdbcType=INTEGER}, #{musicTheory,jdbcType=INTEGER}, #{hasLiaison,jdbcType=TINYINT},
         #{handHomework,jdbcType=TINYINT}, #{courseReview,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP},
-        #{updateTime,jdbcType=TIMESTAMP})
+        #{updateTime,jdbcType=TIMESTAMP},#{tenantId})
     </insert>
 
     <insert id="batchAdd" parameterType="java.util.List" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
         INSERT INTO course_schedule_review (course_schedule_id_, class_group_id_, teacher_id_, student_id_,
-        teaching_material_,memo_, create_time_,update_time_)
+        teaching_material_,memo_, create_time_,update_time_,tenant_id_)
         VALUE
         <foreach collection="courseScheduleReviews" item="courseScheduleReview" separator=",">
             (#{courseScheduleReview.courseScheduleId,jdbcType=INTEGER},#{courseScheduleReview.classGroupId,jdbcType=INTEGER},
             #{courseScheduleReview.teacherId,jdbcType=INTEGER},#{courseScheduleReview.studentId,jdbcType=INTEGER},
-            #{courseScheduleReview.teachingMaterial,jdbcType=VARCHAR},#{courseScheduleReview.memo,jdbcType=VARCHAR},NOW(),now())
+            #{courseScheduleReview.teachingMaterial,jdbcType=VARCHAR},#{courseScheduleReview.memo,jdbcType=VARCHAR},NOW(),now(),#{tenantId})
         </foreach>
     </insert>
 
@@ -129,7 +130,7 @@
             </if>
             update_time_ = NOW()
         </set>
-        where id_ = #{id,jdbcType=INTEGER}
+        where id_ = #{id,jdbcType=INTEGER} and tenant_id_ = #{tenantId}
     </update>
     <resultMap id="CourseReviewDto" type="com.ym.mec.biz.dal.dto.CourseReviewDto">
         <id column="id_" jdbcType="INTEGER" property="id"/>
@@ -181,6 +182,9 @@
             <if test="subjectId != null">
                 AND pg.subject_id_=#{subjectId}
             </if>
+            <if test="tenantId != null">
+                AND pg.tenant_id_=#{tenantId}
+            </if>
             <if test="teacherId != null">
                 AND cs.actual_teacher_id_=#{teacherId}
             </if>
@@ -288,6 +292,9 @@
             <if test="eduTeacherId != null">
                 AND csr.educational_teacher_id_=#{eduTeacherId}
             </if>
+            <if test="tenantId != null">
+                AND csr.tenant_id_=#{tenantId}
+            </if>
             <if test='hasReview !=null and hasReview=="1"'>
                 AND csr.course_review_ IS NOT NULL
             </if>
@@ -419,7 +426,7 @@
     <sql id="courseReviewsQueryCondition">
         <where>
             AND cs.type_ IN ('PRACTICE','VIP') AND cs.teach_mode_='ONLINE' AND cs.status_='OVER' AND (cs.del_flag_ = 0
-            OR cs.del_flag_ IS NULL)
+            OR cs.del_flag_ IS NULL) and cs.tenant_id_ = #{tenantId}
             <if test="search!=null and search!=''">
                 AND (cs.name_ LIKE CONCAT('%',#{search},'%') OR cs.id_= #{search})
             </if>
@@ -506,7 +513,7 @@
 
     <sql id="vipGroupReviewsQueryCondition">
         <where>
-            AND vg.id_ > 0 AND cs.group_type_='VIP' AND cs.status_='OVER' AND (cs.del_flag_ = 0 OR cs.del_flag_ IS NULL)
+            AND vg.id_ > 0 AND cs.group_type_='VIP' AND cs.status_='OVER' AND (cs.del_flag_ = 0 OR cs.del_flag_ IS NULL) and cs.tenant_id_ = #{tenantId}
             <if test="search!=null and search!=''">
                 AND (cs.name_ LIKE CONCAT('%',#{search},'%') OR cs.id_= #{search})
             </if>

+ 11 - 7
mec-biz/src/main/resources/config/mybatis/CourseScheduleRewardsMapper.xml

@@ -19,6 +19,7 @@
 		<result column="teacher_id_" property="teacherId" />
 		<result column="subject_id_" property="subjectIds" />
 		<result column="subject_name_" property="subjectName" />
+		<result column="tenant_id_" property="tenantId" />
 	</resultMap>
 
 	<!-- 根据主键查询一条记录 -->
@@ -28,7 +29,7 @@
 
 	<!-- 全查询 -->
 	<select id="findAll" resultMap="CourseScheduleRewardsRules">
-		SELECT * FROM course_schedule_rewards_rules ORDER BY id_
+		SELECT * FROM course_schedule_rewards_rules where tenant_id_ = #{tenantId} ORDER BY id_
 	</select>
 
 	<!-- 向数据库增加一条记录 -->
@@ -37,9 +38,9 @@
 		<!-- <selectKey resultClass="int" keyProperty="id" > SELECT SEQ_WSDEFINITION_ID.nextval 
 			AS ID FROM DUAL </selectKey> -->
 		INSERT INTO course_schedule_rewards_rules
-		(id_,name_,course_schedule_type_,reward_mode_,organ_id_,rewards_rules_json_,create_time_,update_time_,vip_group_category_id_list_,teacher_id_,subject_id_)
+		(id_,name_,course_schedule_type_,reward_mode_,organ_id_,rewards_rules_json_,create_time_,update_time_,vip_group_category_id_list_,teacher_id_,subject_id_,tenant_id_)
 		VALUES(#{id},#{name},#{courseScheduleType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
-		#{rewardMode,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{organId},#{rewardsRulesJson},now(),now(),#{vipGroupCategoryIdList},#{teacherId},#{subjectIds})
+		#{rewardMode,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{organId},#{rewardsRulesJson},now(),now(),#{vipGroupCategoryIdList},#{teacherId},#{subjectIds},#{tenantId})
 	</insert>
 
 	<!-- 根据主键查询一条记录 -->
@@ -76,7 +77,7 @@
 				rewards_rules_json_ = #{rewardsRulesJson},
 			</if>
 		</set>
-		WHERE id_ = #{id}
+		WHERE id_ = #{id} and tenant_id_ = #{tenantId}
 	</update>
 
 	<!-- 根据主键删除一条记录 -->
@@ -87,13 +88,13 @@
 	<!-- 分页查询 -->
 	<select id="queryPage" resultMap="CourseScheduleRewardsRules"
 		parameterType="map">
-		SELECT * FROM course_schedule_rewards_rules ORDER BY id_
+		SELECT * FROM course_schedule_rewards_rules where tenant_id_ = #{tenantId} ORDER BY id_
 		<include refid="global.limit" />
 	</select>
 
 	<!-- 查询当前表的总记录数 -->
 	<select id="queryCount" resultType="int">
-		SELECT COUNT(*) FROM course_schedule_rewards_rules
+		SELECT COUNT(*) FROM course_schedule_rewards_rules where tenant_id_ = #{tenantId}
 	</select>
 	
 	<select id="query" resultType="map">
@@ -102,7 +103,7 @@
 	</select>
 	
 	<select id="queryOrganIdList" resultType="java.lang.String">
-		SELECT organ_id_ FROM course_schedule_rewards_rules
+		SELECT organ_id_ FROM course_schedule_rewards_rules where tenant_id_ = #{tenantId}
 	</select>
 	<select id="findByTeacherAndCategory" resultMap="CourseScheduleRewardsRules">
 		SELECT * FROM course_schedule_rewards_rules csrr
@@ -183,6 +184,9 @@
 			<if test="rewardMode">
 				AND csrr.reward_mode_ = #{rewardMode}
 			</if>
+			<if test="tenantId">
+				AND csrr.tenant_id_ = #{tenantId}
+			</if>
 			<if test="vipGroupCategoryId">
 				AND FIND_IN_SET(#{vipGroupCategoryId},csrr.vip_group_category_id_list_)
 			</if>

+ 17 - 40
mec-biz/src/main/resources/config/mybatis/CourseScheduleStudentPaymentMapper.xml

@@ -21,6 +21,7 @@
 		<result column="class_group_id_" property="classGroupId" />
 		<result column="batch_no_" property="batchNo"/>
 		<result column="be_merged_" property="beMerged"/>
+		<result column="tenant_id_" property="tenantId" />
 	</resultMap>
 
 	<resultMap type="com.ym.mec.biz.dal.dto.StudentCourseTimesDto" id="studentCourseTimesDto">
@@ -43,23 +44,23 @@
 
 	<!-- 全查询 -->
 	<select id="findAll" resultMap="CourseScheduleStudentPayment">
-		SELECT * FROM course_schedule_student_payment ORDER BY id_
+		SELECT * FROM course_schedule_student_payment where tenant_id_ = #{tenantId} ORDER BY id_
 	</select>
 
 	<!-- 向数据库增加一条记录 -->
 	<insert id="insert" parameterType="com.ym.mec.biz.dal.entity.CourseScheduleStudentPayment" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
 		INSERT INTO course_schedule_student_payment (id_,group_type_,music_group_id_,course_schedule_id_,user_id_,
-			original_price_,expect_price_,actual_price_,create_time_,update_time_,settlement_time_,class_group_id_,batch_no_,be_merged_)
+			original_price_,expect_price_,actual_price_,create_time_,update_time_,settlement_time_,class_group_id_,batch_no_,be_merged_,tenant_id_)
 		VALUES(#{id},#{groupType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{musicGroupId},#{courseScheduleId},#{userId},
-			#{originalPrice},#{expectPrice},#{actualPrice},#{createTime},NOW(),#{settlementTime},#{classGroupId},#{batchNo},#{beMerged})
+			#{originalPrice},#{expectPrice},#{actualPrice},#{createTime},NOW(),#{settlementTime},#{classGroupId},#{batchNo},#{beMerged},#{tenantId})
 	</insert>
     <insert id="batchInsert" parameterType="java.util.List" useGeneratedKeys="true" keyProperty="id_">
 		INSERT INTO course_schedule_student_payment (id_,group_type_,music_group_id_,course_schedule_id_,user_id_,expect_price_,
-				original_price_,actual_price_,create_time_,update_time_,settlement_time_,class_group_id_,batch_no_,be_merged_)
+				original_price_,actual_price_,create_time_,update_time_,settlement_time_,class_group_id_,batch_no_,be_merged_,tenant_id_)
 		VALUE
 		<foreach collection="list" item="data" separator=",">
 			(#{data.id},#{data.groupType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{data.musicGroupId},#{data.courseScheduleId},#{data.userId},#{data.expectPrice},
-			#{data.originalPrice},#{data.actualPrice},now(),now(),#{data.settlementTime},#{data.classGroupId},#{data.batchNo},#{data.beMerged})
+			#{data.originalPrice},#{data.actualPrice},now(),now(),#{data.settlementTime},#{data.classGroupId},#{data.batchNo},#{data.beMerged},#{data.tenantId})
 		</foreach>
     </insert>
 
@@ -104,7 +105,7 @@
 				be_merged_ = #{beMerged},
 			</if>
 				update_time_ = NOW()
-		</set> WHERE id_ = #{id}
+		</set> WHERE id_ = #{id} and tenant_id_ = #{tenantId}
 	</update>
 
 	<update id="batchUpdate" parameterType="com.ym.mec.biz.dal.entity.CourseScheduleStudentPayment">
@@ -148,7 +149,7 @@
 					be_merged_ = #{courseScheduleStudentPayment.beMerged},
 				</if>
 				update_time_ = NOW()
-			</set> WHERE id_ = #{courseScheduleStudentPayment.id}
+			</set> WHERE id_ = #{courseScheduleStudentPayment.id} and tenant_id_ = #{courseScheduleStudentPayment.tenantId}
 		</foreach>
 	</update>
     <update id="adjustPlayMidi">
@@ -182,12 +183,12 @@
 
 	<!-- 分页查询 -->
 	<select id="queryPage" resultMap="CourseScheduleStudentPayment" parameterType="map">
-		SELECT * FROM course_schedule_student_payment ORDER BY id_ <include refid="global.limit"/>
+		SELECT * FROM course_schedule_student_payment where tenant_id_ = #{tenantId} ORDER BY id_ <include refid="global.limit"/>
 	</select>
 
 	<!-- 查询当前表的总记录数 -->
 	<select id="queryCount" resultType="int">
-		SELECT COUNT(*) FROM course_schedule_student_payment
+		SELECT COUNT(*) FROM course_schedule_student_payment where tenant_id_ = #{tenantId}
 	</select>
 
     <select id="findByCourseScheduleIds" resultMap="CourseScheduleStudentPayment">
@@ -290,13 +291,13 @@
 		SELECT cssp.user_id_ FROM course_schedule_student_payment cssp
 		LEFT JOIN music_group mg ON cssp.music_group_id_ = mg.id_ AND cssp.group_type_ = 'MUSIC'
 		LEFT JOIN student_registration sr ON cssp.user_id_ = sr.user_id_ AND cssp.music_group_id_ = sr.music_group_id_
-		WHERE mg.status_ = 'PROGRESS' AND sr.music_group_status_ != 'QUIT'
+		WHERE mg.status_ = 'PROGRESS' AND sr.music_group_status_ != 'QUIT' and cssp.tenant_id_ = #{tenantId}
 		GROUP BY cssp.user_id_
 	</select>
     <select id="queryVipStudentPer" resultType="java.lang.Integer">
 		SELECT cssp.user_id_ FROM course_schedule_student_payment cssp
 		LEFT JOIN vip_group vg ON cssp.music_group_id_ = vg.id_
-		WHERE vg.group_status_ IN (2,4) AND cssp.group_type_ = 'VIP'
+		WHERE vg.group_status_ IN (2,4) AND cssp.group_type_ = 'VIP' and cssp.tenant_id_ = #{tenantId}
 		GROUP BY cssp.user_id_
 	</select>
     <select id="countCourseStudentNum" resultType="java.util.Map">
@@ -365,31 +366,6 @@
 		<result property="actualTeacherId" column="actual_teacher_id_"/>
 	</resultMap>
 
-    <select id="findNoPracticeStudentIdsOnWeek" resultMap="Practice4ExercisesSituationDto">
-		SELECT
-			cssp.user_id_,
-			CONCAT(cs.class_date_, ' ', cs.start_class_time_) start_class_time_,
-			pg.user_id_ actual_teacher_id_
-		FROM
-			course_schedule_student_payment cssp
-			LEFT JOIN course_schedule cs ON cssp.course_schedule_id_ = cs.id_
-			LEFT JOIN practice_group pg ON cssp.music_group_id_=pg.id_
-			LEFT JOIN student s ON cssp.user_id_=s.user_id_
-		WHERE
-			cssp.group_type_ = 'PRACTICE'
-			AND s.service_tag_=1
-			AND cssp.user_id_ NOT IN (
-			SELECT
-				cssp1.user_id_
-			FROM
-				course_schedule_student_payment cssp1
-				LEFT JOIN course_schedule cs1 ON cssp1.course_schedule_id_ = cs1.id_
-			WHERE cssp1.group_type_ = 'PRACTICE'
-				AND cs1.class_date_ BETWEEN #{monday} AND #{sunday}
-			)
-		ORDER BY
-			cssp.user_id_
-	</select>
 	<select id="findNoPracticeStudentTeacherId" resultType="java.lang.Integer">
 		SELECT cs.actual_teacher_id_
 		FROM course_schedule_student_payment cssp
@@ -466,7 +442,7 @@
 			LEFT JOIN course_schedule_student_payment cssp ON s.user_id_=cssp.user_id_
 			LEFT JOIN course_schedule cs ON cssp.course_schedule_id_ = cs.id_
 			LEFT JOIN class_group_teacher_mapper cgtm ON cssp.class_group_id_=cgtm.class_group_id_
-		WHERE cs.type_ IN ('PRACTICE', 'VIP', 'SINGLE', 'MIX') AND cs.pre_course_flag_ = 0 AND cgtm.teacher_role_='BISHOP';
+		WHERE cs.type_ IN ('PRACTICE', 'VIP', 'SINGLE', 'MIX') AND cs.pre_course_flag_ = 0 AND cgtm.teacher_role_='BISHOP' and s.tenant_id_ = #{tenantId};
 	</select>
     <select id="findCoursePayment" resultType="map">
 		SELECT
@@ -602,8 +578,9 @@
 
 	<sql id="queryAllCondition">
 		<where>
+			teannt_id_ = #{tenantId}
 			<if test="courseScheduleId != null">
-				course_schedule_id_ = #{courseScheduleId}
+				and course_schedule_id_ = #{courseScheduleId}
 			</if>
 		</where>
 	</sql>
@@ -837,7 +814,7 @@
 		SELECT CASE WHEN s.user_id_ = NULL THEN 0 ELSE 1 END hasCourse FROM student s
 		LEFT JOIN sys_user su ON s.user_id_ = su.id_
 		LEFT JOIN course_schedule_student_payment cssp FORCE INDEX(group_type_) ON cssp.user_id_ = s.user_id_
-		WHERE cssp.group_type_ IN ('VIP','PRACTICE')
+		WHERE cssp.group_type_ IN ('VIP','PRACTICE') and cssp.tenant_id_ = #{tenantId}
 		<if test="organId != null and organId != ''">
 			AND FIND_IN_SET(su.organ_id_,#{organId})
 		</if>
@@ -871,7 +848,7 @@
 		LEFT JOIN organization o ON o.id_ = su.organ_id_
 		LEFT JOIN `subject` sb ON sb.id_ = s.subject_id_list_
 		LEFT JOIN sys_user_cash_account uca ON uca.user_id_ = s.user_id_
-		WHERE cssp.group_type_ IN ('VIP','PRACTICE')
+		WHERE cssp.group_type_ IN ('VIP','PRACTICE') and cssp.tenant_id_ = #{tenantId}
 		<if test="organId != null">
 			AND FIND_IN_SET(su.organ_id_,#{organId})
 		</if>

+ 24 - 32
mec-biz/src/main/resources/config/mybatis/CourseScheduleTeacherSalaryMapper.xml

@@ -34,6 +34,7 @@
 		<result column="deduction_reason_" property="deductionReason"/>
 		<result column="belong_to_daya_" property="belongToDaya" />
 		<result column="enable_change_salary_" property="enableChangeSalary" />
+		<result column="tenant_id_" property="tenantId" />
 	</resultMap>
 	
 	<resultMap type="com.ym.mec.biz.dal.dto.TeacherVipSalaryDto" id="teacherVipSalaryDto" extends="CourseScheduleTeacherSalary">
@@ -50,28 +51,28 @@
 	
 	<!-- 全查询 -->
 	<select id="findAll" resultMap="CourseScheduleTeacherSalary">
-		SELECT * FROM course_schedule_teacher_salary ORDER BY id_
+		SELECT * FROM course_schedule_teacher_salary where tenant_id_ = #{tenantId} ORDER BY id_
 	</select>
 	
 	<!-- 向数据库增加一条记录 -->
 	<insert id="insert" parameterType="com.ym.mec.biz.dal.entity.CourseScheduleTeacherSalary" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
 		INSERT INTO course_schedule_teacher_salary (id_,group_type_,music_group_id_,course_schedule_id_,teacher_role_,
 		user_id_,expect_salary_,create_time_,update_time_,subsidy_,actual_salary_,settlement_time_,class_group_id_,
-		reduce_salary,confirm_status_,memo_,enable_change_salary_)
+		reduce_salary,confirm_status_,memo_,enable_change_salary_,tenant_id_)
 		VALUES(#{id},#{groupType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{musicGroupId},#{courseScheduleId},
 		#{teacherRole},#{userId},#{expectSalary},now(),now(),#{subsidy},#{actualSalary},#{settlementTime},#{classGroupId},
-		#{reduceSalary},#{confirmStatus,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{memo},#{enableChangeSalary})
+		#{reduceSalary},#{confirmStatus,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{memo},#{enableChangeSalary},#{tenantId})
 	</insert>
     <insert id="batchInsert" parameterType="java.util.List" useGeneratedKeys="true" keyProperty="id_">
 		INSERT INTO course_schedule_teacher_salary (id_,group_type_,music_group_id_,course_schedule_id_,teacher_role_,
 		user_id_,expect_salary_,create_time_,update_time_,subsidy_,actual_salary_,settlement_time_,class_group_id_,
-		reduce_salary,confirm_status_,memo_,enable_change_salary_)
+		reduce_salary,confirm_status_,memo_,enable_change_salary_,tenant_id_)
 		VALUES
 		<foreach collection="list" item="data" separator=",">
 			(#{data.id},#{data.groupType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{data.musicGroupId},#{data.courseScheduleId},
 			#{data.teacherRole},#{data.userId},#{data.expectSalary},now(),now(),#{data.subsidy},#{data.actualSalary},#{data.settlementTime},
 			#{data.classGroupId},#{data.reduceSalary},#{data.confirmStatus,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{data.memo},
-			#{data.enableChangeSalary})
+			#{data.enableChangeSalary},#{data.tenantId})
 		</foreach>
     </insert>
 
@@ -130,7 +131,7 @@
 			<if test="enableChangeSalary != null">
 				enable_change_salary_ = #{enableChangeSalary},
 			</if>
-		</set> WHERE id_ = #{id} 
+		</set> WHERE id_ = #{id} and tenant_id_ = #{tenantId}
 	</update>
 
 	<update id="batchUpdateTeacherExpectSalarys">
@@ -207,18 +208,21 @@
 			<if test="teacherId != null">
 				AND csts.user_id_ = #{teacherId}
 			</if>
+			<if test="tenantId != null">
+				AND csts.tenant_id_ = #{tenantId}
+			</if>
 		</where>
 	</sql>
 
     <!-- 分页查询 -->
 	<select id="queryPage" resultMap="CourseScheduleTeacherSalary" parameterType="map">
-		SELECT * FROM course_schedule_teacher_salary
+		SELECT * FROM course_schedule_teacher_salary where tenant_id_ = #{tenantId}
 		<include refid="global.limit"/>
 	</select>
 	
 	<!-- 查询当前表的总记录数 -->
 	<select id="queryCount" resultType="int">
-		SELECT COUNT(id_) FROM course_schedule_teacher_salary
+		SELECT COUNT(id_) FROM course_schedule_teacher_salary where tenant_id_ = #{tenantId}
 	</select>
 
 	<select id="countSalaries" resultType="java.lang.Integer">
@@ -301,7 +305,7 @@
 			course_schedule_teacher_salary csts
 			LEFT JOIN course_schedule cs ON cs.id_ = csts.course_schedule_id_
 			LEFT JOIN vip_group vg ON vg.id_ = cs.music_group_id_
-		WHERE 1=1
+		WHERE csts.tenant_id_ = #{tenantId}
 		<if test="startDate != null">
 			AND cs.class_date_ BETWEEN #{startDate} AND #{endDate}
 		</if>
@@ -309,18 +313,6 @@
 		AND csts.settlement_time_ IS NULL
 		AND (cs.del_flag_ IS NULL OR cs.del_flag_=0)
     </select>
-	<select id="findTemp" resultMap="CourseScheduleTeacherSalary">
-		SELECT
-		cs.class_date_,
-		csts.*
-		FROM
-		course_schedule_teacher_salary csts
-		LEFT JOIN course_schedule cs ON cs.id_ = csts.course_schedule_id_
-		WHERE
-		cs.id_ IN (961473)
-		AND csts.settlement_time_ IS NULL
-		AND (cs.del_flag_ IS NULL OR cs.del_flag_=0)
-	</select>
     <select id="findTeacherCourseSalaryNoSettlement" resultMap="CourseScheduleTeacherSalary">
 		SELECT
 		cs.class_date_,
@@ -331,7 +323,7 @@
 		FROM
 			course_schedule_teacher_salary csts
 			LEFT JOIN course_schedule cs ON cs.id_ = csts.course_schedule_id_
-		WHERE 1=1
+		WHERE csts.tenant_id_ = #{tenantId}
 		<if test="startDate != null">
 			AND cs.class_date_ BETWEEN #{startDate} AND #{endDate}
 		</if>
@@ -570,7 +562,7 @@
 				<if test="bean.enableChangeSalary != null">
 					enable_change_salary_ = #{bean.enableChangeSalary},
 				</if>
-			</set> WHERE id_ = #{bean.id}
+			</set> WHERE id_ = #{bean.id} and tenant_id_ = #{bean.tenantId}
 		</foreach>
 	</update>
 
@@ -767,7 +759,7 @@
 		LEFT JOIN organization mgo ON mgo.id_ = mg.organ_id_
 		LEFT JOIN charge_type ct ON ct.id_ = mg.charge_type_id_
 		WHERE cs.class_date_ BETWEEN #{firstDayOfMonth} AND #{lastDayOfMonth} AND cs.`del_flag_` != 1 AND cs.group_type_ = 'MUSIC' AND ts.settlement_time_ IS NOT NULL
-		AND t.is_settlement_salary_ = 1
+		AND t.is_settlement_salary_ = 1 and ts.tenant_id_ = #{tenantId}
 		<if test="courseTypeList != null">
 			and cs.type_ in (#{courseTypeList})
 		</if>
@@ -808,7 +800,7 @@
 		left join vip_group_category vgc on vgc.id_ = vg.vip_group_category_id_
 		WHERE vg.organ_id_ != 41 AND cs.class_date_ BETWEEN #{firstDayOfMonth} AND #{lastDayOfMonth} AND cs.`del_flag_` != 1
 		AND cs.group_type_ = 'VIP' AND ts.settlement_time_ IS NOT NULL
-		AND t.is_settlement_salary_ = 1
+		AND t.is_settlement_salary_ = 1 and ts.tenant_id_ = #{tenantId}
 		<if test="courseTypeList != null">
 			and cs.type_ in (#{courseTypeList})
 		</if>
@@ -848,7 +840,7 @@
 		LEFT JOIN practice_group pg ON (pg.id_ = ts.music_group_id_ AND ts.group_type_ = 'PRACTICE')
 		LEFT JOIN organization pgo ON pgo.id_ = pg.organ_id_
 		WHERE cs.class_date_ BETWEEN #{firstDayOfMonth} AND #{lastDayOfMonth} AND cs.`del_flag_` != 1 AND cs.group_type_ = 'PRACTICE' AND ts.settlement_time_ IS NOT NULL
-		AND t.is_settlement_salary_ = 1
+		AND t.is_settlement_salary_ = 1 and ts.tenant_id_ = #{tenantId}
 		<if test="courseTypeList != null">
 			and cs.type_ in (#{courseTypeList})
 		</if>
@@ -863,7 +855,7 @@
 		left join teacher t on t.id_ = csts.user_id_ 
 		WHERE cs.`group_type_` = 'VIP'
 		  AND csts.settlement_time_ IS NULL
-		  and cs.class_date_ between #{startDate} and #{endDate}
+		  and cs.class_date_ between #{startDate} and #{endDate} and csts.tenant_id_ = #{tenantId}
 	</select>
 
     <select id="isTeacher" resultType="java.lang.Boolean">
@@ -905,7 +897,7 @@
 			(cs.del_flag_ IS NULL OR cs.del_flag_=0)
             AND csts.group_type_!='COMM'
 			AND csts.settlement_time_ IS NOT NULL
-			AND t.is_settlement_salary_ = 1
+			AND t.is_settlement_salary_ = 1 and csts.tenant_id_ = #{tenantId}
 			<if test="teacherId!=null">
 				AND csts.user_id_=#{teacherId}
 			</if>
@@ -1050,7 +1042,7 @@
 		WHERE
 			( cs.del_flag_ IS NULL OR cs.del_flag_ = 0 )
 			AND csts.group_type_!='COMM'
-			AND csts.settlement_time_ IS NOT NULL
+			AND csts.settlement_time_ IS NOT NULL and csts.tenant_id_ = #{tenantId}
 			<if test="teacherId!=null">
 				AND csts.user_id_ = #{teacherId}
 			</if>
@@ -1065,7 +1057,7 @@
         WHERE
         	( cs.del_flag_ IS NULL OR cs.del_flag_ = 0 )
 			AND csts.group_type_!='COMM'
-        	AND csts.settlement_time_ IS NOT NULL
+        	AND csts.settlement_time_ IS NOT NULL and csts.tenant_id_ = #{tenantId}
         	AND DATE_FORMAT( cs.class_date_, '%Y-%m' ) = #{month}
     </select>
 
@@ -1078,7 +1070,7 @@
 		WHERE
 			DATE_FORMAT( cs.class_date_, '%Y-%m' ) = #{month}
 			AND csts.group_type_!='COMM'
-			AND csts.settlement_time_ IS NOT NULL
+			AND csts.settlement_time_ IS NOT NULL and csts.tenant_id_ = #{tenantId}
 			<if test="confirmStatus!=null">
 				AND csts.confirm_status_=#{confirmStatus,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
 			</if>
@@ -1148,7 +1140,7 @@
 		WHERE
 			cs.class_date_ BETWEEN #{startDate} AND #{endDate}
 		  AND ( cs.del_flag_ IS NULL OR cs.del_flag_ = 0 )
-		  AND csts.settlement_time_ IS NOT NULL
+		  AND csts.settlement_time_ IS NOT NULL and csts.tenant_id_ = #{tenantId}
 	</select>
 
     <select id="getTeacherSalaryOverview" resultType="com.ym.mec.biz.dal.dto.TeacherIncomeReviewDto">

+ 7 - 6
mec-biz/src/main/resources/config/mybatis/CoursesGroupMapper.xml

@@ -27,6 +27,7 @@
 		<result column="create_time_" property="createTime" />
 		<result column="update_time_" property="updateTime" />
 		<result column="educational_teacher_id_" property="educationalTeacherId" />
+		<result column="tenant_id_" property="tenantId" />
 	</resultMap>
 
 	<resultMap id="CourseGroupExtendDto" type="com.ym.mec.biz.dal.dto.CourseGroupExtendDto" extends="CoursesGroup">
@@ -44,18 +45,18 @@
 	
 	<!-- 全查询 -->
 	<select id="findAll" resultMap="CoursesGroup">
-		SELECT * FROM courses_group ORDER BY id_
+		SELECT * FROM courses_group where tenant_id_ = #{tanentId} ORDER BY id_
 	</select>
 	
 	<!-- 向数据库增加一条记录 -->
 	<insert id="insert" parameterType="com.ym.mec.biz.dal.entity.CoursesGroup" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
 		INSERT INTO courses_group (id_,name_,subject_id_,courses_start_date_,courses_end_date_,teaching_arrangement_,
 		organ_id_,single_class_minutes_,status_,memo_,teacher_id_,max_student_num_,apply_closing_date_,
-		teaching_plan_,teacher_salary_settlement_method_,total_courses_price_,total_course_discount_price_,create_time_,update_time_,educational_teacher_id_)
+		teaching_plan_,teacher_salary_settlement_method_,total_courses_price_,total_course_discount_price_,create_time_,update_time_,educational_teacher_id_, tenant_id_)
 		VALUES(#{id},#{name},#{subjectId},#{coursesStartDate},#{coursesEndDate},#{teachingArrangement},
 		#{organId},#{singleClassMinutes},#{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
 		#{memo},#{teacherId},#{maxStudentNum},#{applyClosingDate},#{teachingPlan},#{teacherSalarySettlementMethod},
-		#{totalCoursesPrice},#{totalCourseDiscountPrice},NOW(),NOW(),#{educationalTeacherId})
+		#{totalCoursesPrice},#{totalCourseDiscountPrice},NOW(),NOW(),#{educationalTeacherId},#{tenantId})
 	</insert>
 	
 	<!-- 根据主键查询一条记录 -->
@@ -120,7 +121,7 @@
 				single_class_minutes_ = #{singleClassMinutes},
 			</if>
 			update_time_ = NOW()
-		</set> WHERE id_ = #{id}
+		</set> WHERE id_ = #{id} and tenant_id_ = #{tenantId}
 	</update>
 	<update id="updateGroupStatus">
 		UPDATE courses_group SET status_=#{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler} WHERE id_ IN
@@ -136,12 +137,12 @@
 	
 	<!-- 分页查询 -->
 	<select id="queryPage" resultMap="CoursesGroup" parameterType="map">
-		SELECT * FROM courses_group ORDER BY id_ <include refid="global.limit"/>
+		SELECT * FROM courses_group where tenant_id_  = #{tenantId} ORDER BY id_ <include refid="global.limit"/>
 	</select>
 	
 	<!-- 查询当前表的总记录数 -->
 	<select id="queryCount" resultType="int">
-		SELECT COUNT(*) FROM courses_group
+		SELECT COUNT(*) FROM courses_group where tenant_id_ = #{tenantId}
 	</select>
 
     <select id="findTeacherCourseGroups" resultMap="CoursesGroup">

+ 5 - 4
mec-biz/src/main/resources/config/mybatis/CoursesGroupModifyLogDao.xml

@@ -14,6 +14,7 @@
         <result column="previous_group_" property="previousGroup"/>
         <result column="current_group_" property="currentGroup"/>
         <result column="create_time_" property="createTime"/>
+		<result column="tenant_id_" property="tenantId" />
     </resultMap>
 
     <!-- 根据主键查询一条记录 -->
@@ -23,14 +24,14 @@
 
     <!-- 全查询 -->
     <select id="findAll" resultMap="CoursesGroupModifyLog">
-		SELECT * FROM courses_group_modify_log ORDER BY id_
+		SELECT * FROM courses_group_modify_log where tenant_id_ = #{tenantId} ORDER BY id_
 	</select>
 
     <!-- 向数据库增加一条记录 -->
     <insert id="insert" parameterType="com.ym.mec.biz.dal.entity.CoursesGroupModifyLog" useGeneratedKeys="true" keyColumn="id"
             keyProperty="id">
-        INSERT INTO courses_group_modify_log (group_id_,group_type_,operator_id_,previous_group_,current_group_,create_time_)
-        VALUES(#{groupId},#{groupType},#{operatorId},#{previousGroup},#{currentGroup},now())
+        INSERT INTO courses_group_modify_log (group_id_,group_type_,operator_id_,previous_group_,current_group_,create_time_,tenant_id_)
+        VALUES(#{groupId},#{groupType},#{operatorId},#{previousGroup},#{currentGroup},now(),#{tenantId})
     </insert>
 
     <!-- 根据主键查询一条记录 -->
@@ -53,7 +54,7 @@
                 current_group_ = #{currentGroup},
             </if>
         </set>
-        WHERE id_ = #{id}
+        WHERE id_ = #{id} and tenant_id_ = #{tenantId}
     </update>
 
     <!-- 根据主键删除一条记录 -->

+ 9 - 8
mec-biz/src/main/resources/config/mybatis/courseScheduleStudentMusicScoreMapper.xml

@@ -21,6 +21,7 @@
         <result column="music_score_name_" property="musicScoreName"/>
         <result column="create_time_" property="createTime"/>
         <result column="update_time_" property="updateTime"/>
+		<result column="tenant_id_" property="tenantId" />
     </resultMap>
 
     <!-- 根据主键查询一条记录 -->
@@ -30,20 +31,20 @@
 
     <!-- 全查询 -->
     <select id="findAll" resultMap="CourseScheduleStudentMusicScore">
-		SELECT * FROM course_schedule_student_music_score ORDER BY id_
+		SELECT * FROM course_schedule_student_music_score where tenant_id_ = #{tenantId} ORDER BY id_
 	</select>
 
     <!-- 向数据库增加一条记录 -->
     <insert id="insert" parameterType="com.ym.mec.biz.dal.entity.CourseScheduleStudentMusicScore" useGeneratedKeys="true" keyColumn="id"
             keyProperty="id">
-        INSERT INTO course_schedule_student_music_score (course_schedule_id_,user_id_,user_type_,down_status_,music_score_accompaniment_id_,play_status_,accompaniment_play_status_,speed_,create_time_,update_time_)
-        VALUES(#{courseScheduleId},#{userId},#{userType},#{downStatus},#{musicScoreAccompanimentId},#{playStatus},#{accompanimentPlayStatus},#{speed},now(),now())
+        INSERT INTO course_schedule_student_music_score (course_schedule_id_,user_id_,user_type_,down_status_,music_score_accompaniment_id_,play_status_,accompaniment_play_status_,speed_,create_time_,update_time_,tenant_id_)
+        VALUES(#{courseScheduleId},#{userId},#{userType},#{downStatus},#{musicScoreAccompanimentId},#{playStatus},#{accompanimentPlayStatus},#{speed},now(),now(),#{tenantId})
     </insert>
     <insert id="batchInsert">
-        INSERT INTO course_schedule_student_music_score (course_schedule_id_,user_id_,user_type_,down_status_,music_score_accompaniment_id_,play_status_,accompaniment_play_status_,speed_,create_time_,update_time_)
+        INSERT INTO course_schedule_student_music_score (course_schedule_id_,user_id_,user_type_,down_status_,music_score_accompaniment_id_,play_status_,accompaniment_play_status_,speed_,create_time_,update_time_,tenant_id_)
         VALUE
         <foreach collection="scheduleStudentMusicScores" item="item" separator=",">
-            (#{item.courseScheduleId},#{item.userId},#{item.userType},#{item.downStatus},#{item.musicScoreAccompanimentId},#{item.playStatus},#{item.accompanimentPlayStatus},#{item.speed},now(),now())
+            (#{item.courseScheduleId},#{item.userId},#{item.userType},#{item.downStatus},#{item.musicScoreAccompanimentId},#{item.playStatus},#{item.accompanimentPlayStatus},#{item.speed},now(),now(),#{item.tenantId})
         </foreach>
     </insert>
 
@@ -65,7 +66,7 @@
             </if>
             update_time_ = NOW()
         </set>
-        WHERE id_ = #{id}
+        WHERE id_ = #{id} and tenant_id_ = #{tenantId}
     </update>
     <update id="closePlayStatus">
         UPDATE course_schedule_student_music_score SET play_status_ = 0,accompaniment_play_status_ = 0,update_time_ = NOW()
@@ -100,13 +101,13 @@
 
     <!-- 分页查询 -->
     <select id="queryPage" resultMap="CourseScheduleStudentMusicScore" parameterType="map">
-        SELECT * FROM course_schedule_student_music_score
+        SELECT * FROM course_schedule_student_music_score where tenant_id_ = #{tenantId}
         <include refid="global.limit" />
     </select>
 
     <!-- 查询当前表的总记录数 -->
     <select id="queryCount" resultType="int">
-		SELECT COUNT(*) FROM course_schedule_student_music_score
+		SELECT COUNT(*) FROM course_schedule_student_music_score where tenant_id_ = #{tenantId}
 	</select>
     <select id="queryByScoreIdAndCourseId"
             resultMap="CourseScheduleStudentMusicScore">