|
@@ -346,11 +346,12 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
|
|
|
if (Objects.isNull(sysUser.getOrganId())) {
|
|
|
throw new BizException("未找到用户分部属性");
|
|
|
}
|
|
|
+ Map result = new HashMap();
|
|
|
List<TeacherBasicDto> organAndSubjectTeachers = teacherDao.findTeaTeachersByOrganAndSubject(sysUser.getOrganId(), subjectId);
|
|
|
if (CollectionUtils.isEmpty(organAndSubjectTeachers)) {
|
|
|
- throw new BizException("未找到合适教师");
|
|
|
+ result.put("teacherFreeDates",new ArrayList<>());
|
|
|
+ return result;
|
|
|
}
|
|
|
- Map result = new HashMap();
|
|
|
SysConfig practiceCourseMinutesConfig = sysConfigService.findByParamName(SysConfigService.PRACTICE_COURSE_MINUTES);
|
|
|
Integer practiceCourseMinutes=practiceCourseMinutesConfig.getParanValue(Integer.class);
|
|
|
List<Integer> teacherIds = organAndSubjectTeachers.stream().map(TeacherBasicDto::getId).collect(Collectors.toList());
|
|
@@ -516,7 +517,8 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
|
|
|
if (Objects.isNull(subject)) {
|
|
|
throw new BizException("声部不存在");
|
|
|
}
|
|
|
- practiceGroup.setName(subject.getName() + "•陪练课");
|
|
|
+ SysUser sysUser = sysUserFeignService.queryUserById(practiceGroup.getStudentId());
|
|
|
+ practiceGroup.setName("陪练课•" + sysUser.getUsername());
|
|
|
practiceGroup.setSingleClassMinutes(practiceCourseMinutes);
|
|
|
practiceGroupDao.insert(practiceGroup);
|
|
|
|
|
@@ -651,12 +653,22 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
|
|
|
studentDao.update(student);
|
|
|
}
|
|
|
|
|
|
- List<ImGroupMember> imGroupMemberList = new ArrayList<>();
|
|
|
- imGroupMemberList.add(new ImGroupMember(practiceGroup.getUserId().toString()));
|
|
|
- imGroupMemberList.add(new ImGroupMember(practiceGroup.getStudentId().toString()));
|
|
|
- ImGroupMember[] imGroupMembers = imGroupMemberList.toArray(new ImGroupMember[imGroupMemberList.size()]);
|
|
|
- // 创建群组
|
|
|
- imFeignService.groupCreate(new ImGroupModel(classGroup.getId().toString(), imGroupMembers, classGroup.getName()));
|
|
|
+ List<CourseSchedule> studentRepeatCourse1=courseScheduleDao.findStudentCoursesWithIncludeDateRange(practiceGroup.getStudentId(),allCourseDates.get(0),DateUtil.addMinutes(allCourseDates.get(2),practiceCourseMinutes));
|
|
|
+ if(CollectionUtils.isEmpty(studentRepeatCourse1)){
|
|
|
+ throw new BizException("您在预约的时间段内有其他课程");
|
|
|
+ }
|
|
|
+ List<CourseSchedule> studentRepeatCourse2=courseScheduleDao.findStudentCoursesWithIncludeDateRange(practiceGroup.getStudentId(),allCourseDates.get(1),DateUtil.addMinutes(allCourseDates.get(3),practiceCourseMinutes));
|
|
|
+ if(CollectionUtils.isEmpty(studentRepeatCourse2)){
|
|
|
+ throw new BizException("您在预约的时间段内有其他课程");
|
|
|
+ }
|
|
|
+ List<CourseSchedule> studentRepeatCourse3=courseScheduleDao.findStudentCoursesWithIncludeDateRange(practiceGroup.getStudentId(),allCourseDates.get(2),DateUtil.addMinutes(allCourseDates.get(3),practiceCourseMinutes));
|
|
|
+ if(CollectionUtils.isEmpty(studentRepeatCourse3)){
|
|
|
+ throw new BizException("您在预约的时间段内有其他课程");
|
|
|
+ }
|
|
|
+ List<CourseSchedule> studentRepeatCourse4=courseScheduleDao.findStudentCoursesWithIncludeDateRange(practiceGroup.getStudentId(),allCourseDates.get(3),DateUtil.addMinutes(allCourseDates.get(3),practiceCourseMinutes));
|
|
|
+ if(CollectionUtils.isEmpty(studentRepeatCourse4)){
|
|
|
+ throw new BizException("您在预约的时间段内有其他课程");
|
|
|
+ }
|
|
|
|
|
|
//推送
|
|
|
List<CourseSchedule> courseSchedules1=courseScheduleDao.findTeacherCoursesWithIncludeDateRange(teacherId,allCourseDates.get(2),DateUtil.addMinutes(allCourseDates.get(2),practiceCourseMinutes));
|
|
@@ -669,10 +681,12 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
|
|
|
courseSchedules2=new ArrayList<>();
|
|
|
}
|
|
|
courseSchedules1.addAll(courseSchedules2);
|
|
|
- SysUser sysUser = sysUserFeignService.queryUserById(practiceGroup.getStudentId());
|
|
|
String[] courseDates=new String[courseSchedules1.size()];
|
|
|
String[] courseNames=new String[courseSchedules1.size()];
|
|
|
for (int i=0;i<courseSchedules1.size();i++) {
|
|
|
+ if(courseSchedules1.get(i).getGroupType().equals(GroupType.PRACTICE)){
|
|
|
+ throw new BizException("指派的老师在预约的时间段内存在陪练课");
|
|
|
+ }
|
|
|
courseDates[i]=DateUtil.dateToString(courseSchedules1.get(i).getStartClassTime(),"yyyy-MM-dd HH:mm:ss");
|
|
|
courseNames[i]=courseSchedules1.get(i).getName();
|
|
|
}
|
|
@@ -684,6 +698,13 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
|
|
|
teacherMap,null,0,null,"TEACHER",Objects.isNull(sysUser.getUsername())?sysUser.getPhone():sysUser.getUsername(),courseDatesStr,courseNamesStr,courseNamesStr);
|
|
|
}
|
|
|
|
|
|
+ List<ImGroupMember> imGroupMemberList = new ArrayList<>();
|
|
|
+ imGroupMemberList.add(new ImGroupMember(practiceGroup.getUserId().toString()));
|
|
|
+ imGroupMemberList.add(new ImGroupMember(practiceGroup.getStudentId().toString()));
|
|
|
+ ImGroupMember[] imGroupMembers = imGroupMemberList.toArray(new ImGroupMember[imGroupMemberList.size()]);
|
|
|
+ // 创建群组
|
|
|
+ imFeignService.groupCreate(new ImGroupModel(classGroup.getId().toString(), imGroupMembers, classGroup.getName()));
|
|
|
+
|
|
|
Map result = new HashMap();
|
|
|
result.put("teacherName", teacher.getRealName());
|
|
|
result.put("enableApply", applyTimes < 1 ? 1 : 0);
|