Sfoglia il codice sorgente

Merge remote-tracking branch 'origin/master'

# Conflicts:
#	mec-biz/src/main/resources/config/mybatis/CourseScheduleMapper.xml
zouxuan 4 anni fa
parent
commit
1fc2c57c5c

+ 13 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/SimpleUserDto.java

@@ -1,5 +1,8 @@
 package com.ym.mec.biz.dal.dto;
 package com.ym.mec.biz.dal.dto;
 
 
+import com.ym.mec.auth.api.entity.SysUser;
+import io.swagger.annotations.ApiModelProperty;
+
 import java.math.BigDecimal;
 import java.math.BigDecimal;
 
 
 /**
 /**
@@ -16,6 +19,8 @@ public class SimpleUserDto {
 
 
     private String avatar;
     private String avatar;
 
 
+    private Integer gender;
+
     private String subjectNames;
     private String subjectNames;
 
 
     private String introduction;
     private String introduction;
@@ -95,4 +100,12 @@ public class SimpleUserDto {
     public void setUserName(String userName) {
     public void setUserName(String userName) {
         this.userName = userName;
         this.userName = userName;
     }
     }
+
+    public Integer getGender() {
+        return gender;
+    }
+
+    public void setGender(Integer gender) {
+        this.gender = gender;
+    }
 }
 }

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

@@ -5169,11 +5169,13 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 		List<CourseRepeatCheckDto> courseRepeatCheckInfos = courseScheduleDao.getCourseRepeatCheckInfos();
 		List<CourseRepeatCheckDto> courseRepeatCheckInfos = courseScheduleDao.getCourseRepeatCheckInfos();
 		courseRepeatCheckInfos.sort(Comparator.comparing(CourseRepeatCheckDto::getStartClassTime));
 		courseRepeatCheckInfos.sort(Comparator.comparing(CourseRepeatCheckDto::getStartClassTime));
 		Map<Date, List<CourseRepeatCheckDto>> dayCourseMap = courseRepeatCheckInfos.stream().collect(Collectors.groupingBy(CourseRepeatCheckDto::getClassDate));
 		Map<Date, List<CourseRepeatCheckDto>> dayCourseMap = courseRepeatCheckInfos.stream().collect(Collectors.groupingBy(CourseRepeatCheckDto::getClassDate));
-		Map<Long, List<Long>> courseRepeatIdMap = new HashMap<>();
+		Map<Long, Map<String, Object>> courseRepeatIdMap = new HashMap<>();
 		int needAdjustCourseNum = 0;
 		int needAdjustCourseNum = 0;
 		for (CourseRepeatCheckDto cs1 : courseRepeatCheckInfos) {
 		for (CourseRepeatCheckDto cs1 : courseRepeatCheckInfos) {
 			if(!courseRepeatIdMap.containsKey(cs1.getCourseId())){
 			if(!courseRepeatIdMap.containsKey(cs1.getCourseId())){
-				courseRepeatIdMap.put(cs1.getCourseId(), new ArrayList<>());
+				Map<String, Object> result = new HashMap<>();
+				result.put("repeatCourseId", new ArrayList<>());
+				courseRepeatIdMap.put(cs1.getCourseId(), result);
 //				courseRepeatIdMap.get(cs1.getCourseId()).add(cs1.getCourseId());
 //				courseRepeatIdMap.get(cs1.getCourseId()).add(cs1.getCourseId());
 			}else{
 			}else{
 				continue;
 				continue;
@@ -5186,11 +5188,14 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 				if(cs2.getEndClassTime().compareTo(cs1.getStartClassTime())<=0){
 				if(cs2.getEndClassTime().compareTo(cs1.getStartClassTime())<=0){
 					continue;
 					continue;
 				}
 				}
-				if(courseRepeatIdMap.containsKey(cs2.getCourseId())&&courseRepeatIdMap.get(cs2.getCourseId()).contains(cs1.getCourseId())){
+
+				if(courseRepeatIdMap.containsKey(cs2.getCourseId())
+						&&((List<Long>)courseRepeatIdMap.get(cs2.getCourseId()).get("repeatCourseId")).contains(cs1.getCourseId())){
 					continue;
 					continue;
 				}
 				}
 				if(cs2.getStartClassTime().compareTo(cs1.getEndClassTime())>=0){
 				if(cs2.getStartClassTime().compareTo(cs1.getEndClassTime())>=0){
-					if(CollectionUtils.isEmpty(courseRepeatIdMap.get(cs1.getCourseId()))){
+					List<Long> repeatCourseId = (List<Long>) courseRepeatIdMap.get(cs1.getCourseId()).get("repeatCourseId");
+					if(CollectionUtils.isEmpty(((List<Long>)courseRepeatIdMap.get(cs1.getCourseId()).get("repeatCourseId")))){
 						courseRepeatIdMap.remove(cs1.getCourseId());
 						courseRepeatIdMap.remove(cs1.getCourseId());
 					}
 					}
 					break;
 					break;
@@ -5198,23 +5203,23 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 				if(cs1.getStartClassTime().compareTo(cs2.getEndClassTime())>=0||cs1.getEndClassTime().compareTo(cs2.getStartClassTime())<=0){
 				if(cs1.getStartClassTime().compareTo(cs2.getEndClassTime())>=0||cs1.getEndClassTime().compareTo(cs2.getStartClassTime())<=0){
 					continue;
 					continue;
 				}
 				}
-				long repeatTeacherNums = cs1.getTeacherIds().stream().filter(teacherId -> cs2.getTeacherIds().contains(teacherId)).count();
-				if(repeatTeacherNums>0){
-					System.out.println(cs1.getCourseId() + "," + cs2.getCourseId());
-					courseRepeatIdMap.get(cs1.getCourseId()).add(cs2.getCourseId());
+				Set<Integer> repeatTeacherIds = cs1.getTeacherIds().stream().filter(teacherId -> cs2.getTeacherIds().contains(teacherId)).collect(Collectors.toSet());
+				if(repeatTeacherIds.size()>0){
+					courseRepeatIdMap.get(cs1.getCourseId()).put("cause", "冲突教师编号:"+StringUtils.join(repeatTeacherIds));
+					((List<Long>)courseRepeatIdMap.get(cs1.getCourseId()).get("repeatCourseId")).add(cs2.getCourseId());
 					needAdjustCourseNum++;
 					needAdjustCourseNum++;
 					continue;
 					continue;
 				}
 				}
 
 
-				long repeatStudentNums = cs1.getStudentIds().stream().filter(studentId -> cs2.getStudentIds().contains(studentId)).count();
-				if(repeatStudentNums>0){
-					System.out.println(cs1.getCourseId() + "," + cs2.getCourseId());
-					courseRepeatIdMap.get(cs1.getCourseId()).add(cs2.getCourseId());
+				Set<Integer> repeatStudentIds = cs1.getStudentIds().stream().filter(studentId -> cs2.getStudentIds().contains(studentId)).collect(Collectors.toSet());
+				if(repeatStudentIds.size()>0){
+					courseRepeatIdMap.get(cs1.getCourseId()).put("cause", "学生冲突:"+StringUtils.join(repeatStudentIds));
+					((List<Long>)courseRepeatIdMap.get(cs1.getCourseId()).get("repeatCourseId")).add(cs2.getCourseId());
 					needAdjustCourseNum++;
 					needAdjustCourseNum++;
 					continue;
 					continue;
 				}
 				}
 			}
 			}
-			if(CollectionUtils.isEmpty(courseRepeatIdMap.get(cs1.getCourseId()))){
+			if(courseRepeatIdMap.containsKey(cs1.getCourseId())&&CollectionUtils.isEmpty(((List<Long>)courseRepeatIdMap.get(cs1.getCourseId()).get("repeatCourseId")))){
 				courseRepeatIdMap.remove(cs1.getCourseId());
 				courseRepeatIdMap.remove(cs1.getCourseId());
 			}
 			}
 		}
 		}
@@ -5223,6 +5228,18 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 		System.out.println("重复课程数量:" + courseRepeatIdMap.size());
 		System.out.println("重复课程数量:" + courseRepeatIdMap.size());
 	}
 	}
 
 
+	public static void main(String[] args) {
+		CourseRepeatCheckDto c = new CourseRepeatCheckDto();
+		c.setCourseId((long) 1);
+		Map<Long, Map<String, Object>> courseRepeatIdMap = new HashMap<>();
+		Map<String, Object> result = new HashMap<>();
+		result.put("repeatCourseId", new ArrayList<>());
+		courseRepeatIdMap.put(c.getCourseId(), result);
+		if(CollectionUtils.isEmpty(((List<Long>)courseRepeatIdMap.get(c.getCourseId()).get("repeatCourseId")))){
+			courseRepeatIdMap.remove(c.getCourseId());
+		}
+	}
+
 	@Override
 	@Override
 	@Transactional(rollbackFor = Exception.class)
 	@Transactional(rollbackFor = Exception.class)
 	public void courseMerge(CourseMergeDto courseMergeInfo) {
 	public void courseMerge(CourseMergeDto courseMergeInfo) {

+ 4 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupServiceImpl.java

@@ -34,6 +34,7 @@ import com.ym.mec.biz.dal.dao.ClassGroupDao;
 import com.ym.mec.biz.dal.dao.ClassGroupStudentMapperDao;
 import com.ym.mec.biz.dal.dao.ClassGroupStudentMapperDao;
 import com.ym.mec.biz.dal.dao.CooperationOrganDao;
 import com.ym.mec.biz.dal.dao.CooperationOrganDao;
 import com.ym.mec.biz.dal.dao.CourseScheduleDao;
 import com.ym.mec.biz.dal.dao.CourseScheduleDao;
+import com.ym.mec.biz.dal.dao.CourseScheduleStudentPaymentDao;
 import com.ym.mec.biz.dal.dao.CourseScheduleTeacherSalaryDao;
 import com.ym.mec.biz.dal.dao.CourseScheduleTeacherSalaryDao;
 import com.ym.mec.biz.dal.dao.EmployeeDao;
 import com.ym.mec.biz.dal.dao.EmployeeDao;
 import com.ym.mec.biz.dal.dao.MusicGroupBuildLogDao;
 import com.ym.mec.biz.dal.dao.MusicGroupBuildLogDao;
@@ -205,6 +206,9 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
     private CourseScheduleTeacherSalaryDao courseScheduleTeacherSalaryDao;
     private CourseScheduleTeacherSalaryDao courseScheduleTeacherSalaryDao;
 
 
     @Autowired
     @Autowired
+    private CourseScheduleStudentPaymentDao courseScheduleStudentPaymentDao;
+
+    @Autowired
     private CourseScheduleStudentPaymentService courseScheduleStudentPaymentService;
     private CourseScheduleStudentPaymentService courseScheduleStudentPaymentService;
 
 
     @Autowired
     @Autowired

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

@@ -3318,7 +3318,7 @@
             LEFT JOIN course_schedule_student_payment cssp ON cs.id_=cssp.course_schedule_id_
             LEFT JOIN course_schedule_student_payment cssp ON cs.id_=cssp.course_schedule_id_
             LEFT JOIN course_schedule_teacher_salary csts ON cs.id_=csts.course_schedule_id_
             LEFT JOIN course_schedule_teacher_salary csts ON cs.id_=csts.course_schedule_id_
             LEFT JOIN organization o ON cs.organ_id_=o.id_
             LEFT JOIN organization o ON cs.organ_id_=o.id_
-        WHERE cs.organ_id_!=41 AND cs.del_flag_=0 AND cs.create_time_>'2020-11-01 00:00:00'
+        WHERE cs.organ_id_!=41 AND cs.del_flag_=0 AND cs.class_date_ >= '2020-11-01'
     </select>
     </select>
 
 
     <select id="countCourseMergeTime" resultType="int">
     <select id="countCourseMergeTime" resultType="int">

+ 1 - 0
mec-biz/src/main/resources/config/mybatis/TeacherMapper.xml

@@ -394,6 +394,7 @@
             su.id_ userId,
             su.id_ userId,
             su.username_ nickName,
             su.username_ nickName,
             su.real_name_ userName,
             su.real_name_ userName,
+            su.gender_ gender,
             su.phone_ phone
             su.phone_ phone
         FROM sys_user su
         FROM sys_user su
         <where>
         <where>

+ 8 - 0
mec-web/src/main/java/com/ym/mec/web/controller/ExportController.java

@@ -50,6 +50,7 @@ import com.ym.mec.biz.dal.dto.CourseScheduleEndDto;
 import com.ym.mec.biz.dal.dto.ExportStudentAttendanceDto;
 import com.ym.mec.biz.dal.dto.ExportStudentAttendanceDto;
 import com.ym.mec.biz.dal.dto.ExportTeacherSalaryDto;
 import com.ym.mec.biz.dal.dto.ExportTeacherSalaryDto;
 import com.ym.mec.biz.dal.dto.ExtraExerciseStudentsDto;
 import com.ym.mec.biz.dal.dto.ExtraExerciseStudentsDto;
+import com.ym.mec.biz.dal.dto.MusicGroupPaymentCalenderAuditDto;
 import com.ym.mec.biz.dal.dto.MusicGroupRegisterDto;
 import com.ym.mec.biz.dal.dto.MusicGroupRegisterDto;
 import com.ym.mec.biz.dal.dto.MusicGroupStudentsDto;
 import com.ym.mec.biz.dal.dto.MusicGroupStudentsDto;
 import com.ym.mec.biz.dal.dto.MusicalListDetailDto;
 import com.ym.mec.biz.dal.dto.MusicalListDetailDto;
@@ -75,6 +76,7 @@ import com.ym.mec.biz.dal.entity.Goods;
 import com.ym.mec.biz.dal.entity.MusicGroupBuildLog;
 import com.ym.mec.biz.dal.entity.MusicGroupBuildLog;
 import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalenderDetail;
 import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalenderDetail;
 import com.ym.mec.biz.dal.entity.School;
 import com.ym.mec.biz.dal.entity.School;
+import com.ym.mec.biz.dal.entity.SellOrder;
 import com.ym.mec.biz.dal.entity.SporadicChargeInfo;
 import com.ym.mec.biz.dal.entity.SporadicChargeInfo;
 import com.ym.mec.biz.dal.entity.Student;
 import com.ym.mec.biz.dal.entity.Student;
 import com.ym.mec.biz.dal.entity.StudentPaymentOrderDetail;
 import com.ym.mec.biz.dal.entity.StudentPaymentOrderDetail;
@@ -83,12 +85,14 @@ import com.ym.mec.biz.dal.entity.TeacherCourseReward;
 import com.ym.mec.biz.dal.entity.TeacherSalaryComplaints;
 import com.ym.mec.biz.dal.entity.TeacherSalaryComplaints;
 import com.ym.mec.biz.dal.entity.TenantPaymentOrder;
 import com.ym.mec.biz.dal.entity.TenantPaymentOrder;
 import com.ym.mec.biz.dal.entity.VipGroup;
 import com.ym.mec.biz.dal.entity.VipGroup;
+import com.ym.mec.biz.dal.enums.AccountType;
 import com.ym.mec.biz.dal.enums.CourseStatusEnum;
 import com.ym.mec.biz.dal.enums.CourseStatusEnum;
 import com.ym.mec.biz.dal.enums.GroupType;
 import com.ym.mec.biz.dal.enums.GroupType;
 import com.ym.mec.biz.dal.enums.KitGroupPurchaseTypeEnum;
 import com.ym.mec.biz.dal.enums.KitGroupPurchaseTypeEnum;
 import com.ym.mec.biz.dal.enums.MusicGroupStatusEnum;
 import com.ym.mec.biz.dal.enums.MusicGroupStatusEnum;
 import com.ym.mec.biz.dal.enums.OrderDetailTypeEnum;
 import com.ym.mec.biz.dal.enums.OrderDetailTypeEnum;
 import com.ym.mec.biz.dal.enums.OrderTypeEnum;
 import com.ym.mec.biz.dal.enums.OrderTypeEnum;
+import com.ym.mec.biz.dal.enums.PaymentChannelEnum;
 import com.ym.mec.biz.dal.enums.SporadicChargeTypeEnum;
 import com.ym.mec.biz.dal.enums.SporadicChargeTypeEnum;
 import com.ym.mec.biz.dal.enums.StudentMusicGroupStatusEnum;
 import com.ym.mec.biz.dal.enums.StudentMusicGroupStatusEnum;
 import com.ym.mec.biz.dal.enums.YesOrNoEnum;
 import com.ym.mec.biz.dal.enums.YesOrNoEnum;
@@ -102,8 +106,10 @@ import com.ym.mec.biz.dal.page.ExportStudentAttendanceQueryInfo;
 import com.ym.mec.biz.dal.page.ExportTeacherSalaryQueryInfo;
 import com.ym.mec.biz.dal.page.ExportTeacherSalaryQueryInfo;
 import com.ym.mec.biz.dal.page.ExtraExercilseReplyQueryInfo;
 import com.ym.mec.biz.dal.page.ExtraExercilseReplyQueryInfo;
 import com.ym.mec.biz.dal.page.MusicCalenderDetailQueryInfo;
 import com.ym.mec.biz.dal.page.MusicCalenderDetailQueryInfo;
+import com.ym.mec.biz.dal.page.MusicGroupPaymentCalenderQueryInfo;
 import com.ym.mec.biz.dal.page.MusicGroupStudentQueryInfo;
 import com.ym.mec.biz.dal.page.MusicGroupStudentQueryInfo;
 import com.ym.mec.biz.dal.page.PracticeGroupQueryInfo;
 import com.ym.mec.biz.dal.page.PracticeGroupQueryInfo;
+import com.ym.mec.biz.dal.page.SellOrderQueryInfo;
 import com.ym.mec.biz.dal.page.SporadicChargeInfoQueryInfo;
 import com.ym.mec.biz.dal.page.SporadicChargeInfoQueryInfo;
 import com.ym.mec.biz.dal.page.StudentBuyPracticeQueryInfo;
 import com.ym.mec.biz.dal.page.StudentBuyPracticeQueryInfo;
 import com.ym.mec.biz.dal.page.StudentExercisesSituationQueryInfo;
 import com.ym.mec.biz.dal.page.StudentExercisesSituationQueryInfo;
@@ -123,7 +129,9 @@ import com.ym.mec.biz.service.CourseScheduleTeacherSalaryService;
 import com.ym.mec.biz.service.DegreeRegistrationService;
 import com.ym.mec.biz.service.DegreeRegistrationService;
 import com.ym.mec.biz.service.ExtracurricularExercisesReplyService;
 import com.ym.mec.biz.service.ExtracurricularExercisesReplyService;
 import com.ym.mec.biz.service.MusicGroupPaymentCalenderDetailService;
 import com.ym.mec.biz.service.MusicGroupPaymentCalenderDetailService;
+import com.ym.mec.biz.service.MusicGroupPaymentCalenderService;
 import com.ym.mec.biz.service.PracticeGroupService;
 import com.ym.mec.biz.service.PracticeGroupService;
+import com.ym.mec.biz.service.SellOrderService;
 import com.ym.mec.biz.service.SporadicChargeInfoService;
 import com.ym.mec.biz.service.SporadicChargeInfoService;
 import com.ym.mec.biz.service.StudentAttendanceService;
 import com.ym.mec.biz.service.StudentAttendanceService;
 import com.ym.mec.biz.service.StudentExtracurricularExercisesSituationService;
 import com.ym.mec.biz.service.StudentExtracurricularExercisesSituationService;