|
@@ -155,7 +155,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
|
|
|
@Autowired
|
|
|
private VipGroupActivityDao vipGroupActivityDao;
|
|
|
@Autowired
|
|
|
- private StudentDao studentDao;
|
|
|
+ private ActivityUserMapperDao activityUserMapperDao;
|
|
|
@Autowired
|
|
|
private MusicGroupTrainPlanService musicGroupTrainPlanService;
|
|
|
|
|
@@ -2770,15 +2770,27 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
|
|
|
courseSchedules.get(courseStartDates.size() - 1).setClassDate(courseStartTime);
|
|
|
courseSchedules.get(courseStartDates.size() - 1).setStartClassTime(courseStartTime);
|
|
|
courseSchedules.get(courseStartDates.size() - 1).setEndClassTime(courseEndTime);
|
|
|
- if (Objects.nonNull(vipGroupCourseAdjustInfo.getTeachMode())) {
|
|
|
+
|
|
|
+ Integer allowOnlineToOffline = 0;
|
|
|
+ if(Objects.nonNull(vipGroupActivity)){
|
|
|
+ allowOnlineToOffline = vipGroupActivity.getAllowOnlineToOffline();
|
|
|
+ ActivityUserMapper activityUserMapper = activityUserMapperDao.findVipUserMapper(vipGroup.getId(), "VIP");
|
|
|
+ if(activityUserMapper != null){
|
|
|
+ if(vipGroup.getId().equals(activityUserMapper.getGiveVipGroupId())){
|
|
|
+ allowOnlineToOffline = vipGroupActivity.getGiveAllowOnlineToOffline();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ if (Objects.nonNull(vipGroupCourseAdjustInfo.getTeachMode())) {
|
|
|
boolean onlineToOffline = courseSchedules.get(courseStartDates.size() - 1).getTeachMode().equals(TeachModeEnum.ONLINE)
|
|
|
&&vipGroupCourseAdjustInfo.getTeachMode().equals(TeachModeEnum.OFFLINE);
|
|
|
boolean offlineToOnline = courseSchedules.get(courseStartDates.size() - 1).getTeachMode().equals(TeachModeEnum.OFFLINE)
|
|
|
&&vipGroupCourseAdjustInfo.getTeachMode().equals(TeachModeEnum.ONLINE);
|
|
|
- if(onlineToOffline&&Objects.nonNull(vipGroupActivity)&&(vipGroupActivity.getAllowOnlineToOffline()==0||vipGroupActivity.getAllowOnlineToOffline()==3)){
|
|
|
+ if(onlineToOffline && Objects.nonNull(vipGroupActivity) && (allowOnlineToOffline == 0 || allowOnlineToOffline == 3)){
|
|
|
throw new BizException("此VIP课活动不支持线上课调整为线下课");
|
|
|
}
|
|
|
- if(offlineToOnline&&Objects.nonNull(vipGroupActivity)&&(vipGroupActivity.getAllowOnlineToOffline()==2||vipGroupActivity.getAllowOnlineToOffline()==3)){
|
|
|
+ if(offlineToOnline&&Objects.nonNull(vipGroupActivity) && (allowOnlineToOffline == 2 || allowOnlineToOffline == 3)){
|
|
|
throw new BizException("此VIP课活动不支持线下课调整为线上课");
|
|
|
}
|
|
|
if(onlineToOffline&&Objects.isNull(vipGroupCourseAdjustInfo.getSchoolId())){
|
|
@@ -2974,12 +2986,22 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
|
|
|
throw new BizException("课程组信息不存在");
|
|
|
}
|
|
|
VipGroupActivity vipGroupActivity = vipGroupActivityDao.get(vipGroup.getVipGroupActivityId());
|
|
|
+ Integer allowOnlineToOffline = 0;
|
|
|
+ if(Objects.nonNull(vipGroupActivity)){
|
|
|
+ allowOnlineToOffline = vipGroupActivity.getAllowOnlineToOffline();
|
|
|
+ ActivityUserMapper activityUserMapper = activityUserMapperDao.findVipUserMapper(vipGroup.getId(), "VIP");
|
|
|
+ if(activityUserMapper != null){
|
|
|
+ if(vipGroup.getId().equals(activityUserMapper.getGiveVipGroupId())){
|
|
|
+ allowOnlineToOffline = vipGroupActivity.getGiveAllowOnlineToOffline();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
boolean onlineToOffline = TeachModeEnum.ONLINE.equals(oldCourses.get(i).getTeachMode())&&TeachModeEnum.OFFLINE.equals(courseAdjustInfo.getTeachMode());
|
|
|
boolean offlineToOnline = TeachModeEnum.OFFLINE.equals(oldCourses.get(i).getTeachMode())&&TeachModeEnum.ONLINE.equals(courseAdjustInfo.getTeachMode());
|
|
|
- if(onlineToOffline&&Objects.nonNull(vipGroupActivity)&&(vipGroupActivity.getAllowOnlineToOffline()==0||vipGroupActivity.getAllowOnlineToOffline()==3)){
|
|
|
+ if(onlineToOffline&&Objects.nonNull(vipGroupActivity)&&(allowOnlineToOffline == 0 || allowOnlineToOffline == 3)){
|
|
|
throw new BizException("此VIP课活动不支持线上课调整为线下课");
|
|
|
}
|
|
|
- if(offlineToOnline&&Objects.nonNull(vipGroupActivity)&&(vipGroupActivity.getAllowOnlineToOffline()==2||vipGroupActivity.getAllowOnlineToOffline()==3)){
|
|
|
+ if(offlineToOnline&&Objects.nonNull(vipGroupActivity)&&(allowOnlineToOffline == 2 || allowOnlineToOffline == 3)){
|
|
|
throw new BizException("此VIP课活动不支持线下课调整为线上课");
|
|
|
}
|
|
|
}
|
|
@@ -3418,12 +3440,22 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
|
|
|
throw new BizException("课程组信息不存在");
|
|
|
}
|
|
|
VipGroupActivity vipGroupActivity = vipGroupActivityDao.get(vipGroup.getVipGroupActivityId());
|
|
|
+ Integer allowOnlineToOffline = 0;
|
|
|
+ if(Objects.nonNull(vipGroupActivity)){
|
|
|
+ allowOnlineToOffline = vipGroupActivity.getAllowOnlineToOffline();
|
|
|
+ ActivityUserMapper activityUserMapper = activityUserMapperDao.findVipUserMapper(vipGroup.getId(), "VIP");
|
|
|
+ if(activityUserMapper != null){
|
|
|
+ if(vipGroup.getId().equals(activityUserMapper.getGiveVipGroupId())){
|
|
|
+ allowOnlineToOffline = vipGroupActivity.getGiveAllowOnlineToOffline();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
boolean onlineToOffline = TeachModeEnum.OFFLINE.equals(newCourseSchedule.getTeachMode())&&TeachModeEnum.ONLINE.equals(oldCourseSchedule.getTeachMode());
|
|
|
- if(onlineToOffline&&Objects.nonNull(vipGroupActivity)&&(vipGroupActivity.getAllowOnlineToOffline()==0||vipGroupActivity.getAllowOnlineToOffline()==3)){
|
|
|
+ if(onlineToOffline&&Objects.nonNull(vipGroupActivity)&&(allowOnlineToOffline==0||allowOnlineToOffline==3)){
|
|
|
throw new BizException("此VIP课活动不支持线上课调整为线下课");
|
|
|
}
|
|
|
boolean offlineToOnline = TeachModeEnum.ONLINE.equals(newCourseSchedule.getTeachMode())&&TeachModeEnum.OFFLINE.equals(oldCourseSchedule.getTeachMode());
|
|
|
- if(offlineToOnline&&Objects.nonNull(vipGroupActivity)&&(vipGroupActivity.getAllowOnlineToOffline()==2||vipGroupActivity.getAllowOnlineToOffline()==3)){
|
|
|
+ if(offlineToOnline&&Objects.nonNull(vipGroupActivity)&&(allowOnlineToOffline==2||allowOnlineToOffline==3)){
|
|
|
throw new BizException("此VIP课活动不支持线下课调整为线上课");
|
|
|
}
|
|
|
}
|