|
@@ -5,11 +5,14 @@ import com.ym.mec.biz.dal.entity.MusicGroupPaymentStudentMemberCourseDetail;
|
|
|
import com.ym.mec.biz.dal.entity.MusicGroupSchoolTermCourseDetail;
|
|
|
import com.ym.mec.biz.dal.entity.MusicGroupSchoolTermStudentCourseDetail;
|
|
|
import com.ym.mec.biz.service.MusicGroupSchoolTermCourseDetailService;
|
|
|
+import com.ym.mec.common.controller.BaseController;
|
|
|
import com.ym.mec.common.dal.BaseDAO;
|
|
|
+import com.ym.mec.common.entity.HttpResponseResult;
|
|
|
import com.ym.mec.common.exception.BizException;
|
|
|
import com.ym.mec.common.service.impl.BaseServiceImpl;
|
|
|
import com.ym.mec.util.date.DateUtil;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.http.HttpStatus;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
@@ -44,7 +47,7 @@ public class MusicGroupSchoolTermCourseDetailServiceImpl extends BaseServiceImpl
|
|
|
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
- public MusicGroupSchoolTermCourseDetail upset(MusicGroupSchoolTermCourseDetail musicGroupSchoolTermCourseDetail) {
|
|
|
+ public HttpResponseResult upset(MusicGroupSchoolTermCourseDetail musicGroupSchoolTermCourseDetail) {
|
|
|
Date startCourseDate = musicGroupSchoolTermCourseDetail.getStartCourseDate();
|
|
|
String musicGroupId = musicGroupSchoolTermCourseDetail.getMusicGroupId();
|
|
|
//校验当前乐团是否所有学员都在班
|
|
@@ -62,25 +65,30 @@ public class MusicGroupSchoolTermCourseDetailServiceImpl extends BaseServiceImpl
|
|
|
if(startCourseDate != null){
|
|
|
//如果是重新选择的预排课时间
|
|
|
if(DateUtil.daysBetween(startCourseDate, courseDetail.getStartCourseDate()) != 0){
|
|
|
- //删除乐团预排的课程
|
|
|
- courseScheduleStudentPaymentDao.deletePreCourse(musicGroupId);
|
|
|
- courseScheduleTeacherSalaryDao.deletePreCourse(musicGroupId);
|
|
|
- courseScheduleDao.deletePreCourse(musicGroupId);
|
|
|
- courseDetail.setStartCourseDate(startCourseDate);
|
|
|
- getCourseDetail(courseDetail);
|
|
|
- musicGroupSchoolTermCourseDetailDao.update(courseDetail);
|
|
|
- //删除学员排课时长
|
|
|
- musicGroupSchoolTermStudentCourseDetailDao.deleteByDetailId(courseDetail.getId());
|
|
|
- //生成学员可排课时长
|
|
|
- MusicGroupSchoolTermStudentCourseDetail studentCourseDetail = new MusicGroupSchoolTermStudentCourseDetail();
|
|
|
- studentCourseDetail.setMusicGroupSchoolTermCourseDetailId(courseDetail.getId());
|
|
|
- studentCourseDetail.setMemberCourseMinutes(courseDetail.getTotalCourseTime());
|
|
|
- //获取乐团所有在读学员
|
|
|
- List<Integer> studentIds = studentRegistrationDao.queryNormalUser(musicGroupId);
|
|
|
- if(studentIds == null || studentIds.size() == 0){
|
|
|
- throw new BizException("操作失败:该乐团没有在读学员");
|
|
|
+ //清空预排课
|
|
|
+ if(musicGroupSchoolTermCourseDetail.getCleanPreCourseFlag()){
|
|
|
+ //删除乐团预排的课程
|
|
|
+ courseScheduleStudentPaymentDao.deletePreCourse(musicGroupId);
|
|
|
+ courseScheduleTeacherSalaryDao.deletePreCourse(musicGroupId);
|
|
|
+ courseScheduleDao.deletePreCourse(musicGroupId);
|
|
|
+ courseDetail.setStartCourseDate(startCourseDate);
|
|
|
+ getCourseDetail(courseDetail);
|
|
|
+ musicGroupSchoolTermCourseDetailDao.update(courseDetail);
|
|
|
+ //删除学员排课时长
|
|
|
+ musicGroupSchoolTermStudentCourseDetailDao.deleteByDetailId(courseDetail.getId());
|
|
|
+ //生成学员可排课时长
|
|
|
+ MusicGroupSchoolTermStudentCourseDetail studentCourseDetail = new MusicGroupSchoolTermStudentCourseDetail();
|
|
|
+ studentCourseDetail.setMusicGroupSchoolTermCourseDetailId(courseDetail.getId());
|
|
|
+ studentCourseDetail.setMemberCourseMinutes(courseDetail.getTotalCourseTime());
|
|
|
+ //获取乐团所有在读学员
|
|
|
+ List<Integer> studentIds = studentRegistrationDao.queryNormalUser(musicGroupId);
|
|
|
+ if(studentIds == null || studentIds.size() == 0){
|
|
|
+ throw new BizException("操作失败:该乐团没有在读学员");
|
|
|
+ }
|
|
|
+ musicGroupSchoolTermStudentCourseDetailDao.init(studentCourseDetail,studentIds);
|
|
|
+ }else {
|
|
|
+ return BaseController.failed(HttpStatus.MULTI_STATUS, "修改开课日期会清空预排课,请再次确认");
|
|
|
}
|
|
|
- musicGroupSchoolTermStudentCourseDetailDao.init(studentCourseDetail,studentIds);
|
|
|
}
|
|
|
}else {
|
|
|
//如果所选时间小于当前时间
|
|
@@ -108,7 +116,7 @@ public class MusicGroupSchoolTermCourseDetailServiceImpl extends BaseServiceImpl
|
|
|
musicGroupSchoolTermStudentCourseDetailDao.init(studentCourseDetail,studentIds);
|
|
|
}
|
|
|
}
|
|
|
- return courseDetail;
|
|
|
+ return BaseController.succeed(courseDetail);
|
|
|
}
|
|
|
|
|
|
private MusicGroupSchoolTermCourseDetail getCourseDetail(MusicGroupSchoolTermCourseDetail courseDetail){
|