浏览代码

Merge branch 'Joburgess'

Joburgess 5 年之前
父节点
当前提交
3ee023727f
共有 1 个文件被更改,包括 28 次插入22 次删除
  1. 28 22
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

+ 28 - 22
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -1905,7 +1905,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
             throw new BizException("排课起始时间不能小于当前时间");
         }
 
-        boolean needSchoolId = Objects.nonNull(vipGroupCourseAdjustInfo.getTeachMode()) && vipGroupCourseAdjustInfo.getTeachMode().equals(TeachModeEnum.OFFLINE) && Objects.isNull(vipGroupCourseAdjustInfo.getTeachMode());
+        boolean needSchoolId = Objects.nonNull(vipGroupCourseAdjustInfo.getTeachMode()) && vipGroupCourseAdjustInfo.getTeachMode().equals(TeachModeEnum.OFFLINE) && Objects.isNull(vipGroupCourseAdjustInfo.getSchoolId());
         if (needSchoolId) {
             throw new BizException("请设置教学点");
         }
@@ -2032,8 +2032,9 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
                     courseSchedules.get(courseStartDates.size() - 1).setEndClassTime(courseEndTime);
                     if (Objects.nonNull(vipGroupCourseAdjustInfo.getTeachMode())) {
                         if(courseSchedules.get(courseStartDates.size() - 1).getTeachMode().equals(TeachModeEnum.ONLINE)
-                            &&vipGroupCourseAdjustInfo.getTeachMode().equals(TeachModeEnum.OFFLINE)){
-                            throw new BizException("暂不支持线上课程转为线下课");
+                            &&vipGroupCourseAdjustInfo.getTeachMode().equals(TeachModeEnum.OFFLINE)
+							&&Objects.isNull(vipGroupCourseAdjustInfo.getSchoolId())){
+                            throw new BizException("请选择教学点");
                         }
                         courseSchedules.get(courseStartDates.size() - 1).setTeachMode(vipGroupCourseAdjustInfo.getTeachMode());
                         if (vipGroupCourseAdjustInfo.getTeachMode().equals(TeachModeEnum.OFFLINE)) {
@@ -2080,7 +2081,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
         if(vipGroupCourseAdjustInfo.getCourseCreateStartTime().after(now)){
             teacherAttendanceDao.batchCleanCourseTeacherSignInfo(courseScheduleIds);
         }
-		// 删除作业
+		//删除作业
 		courseHomeworkService.delHomwworkByCourseScheduleId(courseScheduleIds);
 		//删除评论
 		courseScheduleReviewDao.delByCourseScheduleIds(courseScheduleIds);
@@ -2361,10 +2362,10 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
                 newCourseSchedule.setTeachMode(oldCourseSchedule.getTeachMode());
             }
 
-			if (newCourseSchedule.getGroupType() == GroupType.VIP) {
-				if (newCourseSchedule.getTeachMode() != oldCourseSchedule.getTeachMode() && newCourseSchedule.getTeachMode() == TeachModeEnum.OFFLINE) {
-					throw new BizException("不允许将线上课调整为线下课");
-				}
+			if (newCourseSchedule.getTeachMode() != oldCourseSchedule.getTeachMode()
+					&& newCourseSchedule.getTeachMode() == TeachModeEnum.OFFLINE
+					&& Objects.isNull(newCourseSchedule.getSchoolId())) {
+				throw new BizException("请设置教学点");
 			}
 
             if (Objects.isNull(newCourseSchedule.getSchoolId())) {
@@ -2555,7 +2556,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 				}
 
 				// 所有老师默认vip课酬
-				/*List<TeacherDefaultVipGroupSalary> teacherDefaultVipGroupSalaries = teacherDefaultVipGroupSalaryDao.queryByUserIdList(newTeacherIdList);
+				List<TeacherDefaultVipGroupSalary> teacherDefaultVipGroupSalaries = teacherDefaultVipGroupSalaryDao.queryByUserIdList(newTeacherIdList);
 				Map<Integer, Map<Integer, TeacherDefaultVipGroupSalary>> vipGroupSalaryMap = new HashMap<Integer, Map<Integer, TeacherDefaultVipGroupSalary>>();
 				for (TeacherDefaultVipGroupSalary tdvs : teacherDefaultVipGroupSalaries) {
 					Map<Integer, TeacherDefaultVipGroupSalary> map = vipGroupSalaryMap.get(tdvs.getUserId());
@@ -2566,7 +2567,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 					vipGroupSalaryMap.put(tdvs.getUserId(), map);
 				}
 
-				VipGroup vipGroup = vipGroupDao.findByCourseSchedule(courseScheduleId);*/
+				VipGroup vipGroup = vipGroupDao.findByCourseSchedule(courseScheduleId);
 
 				// 删除课酬
 				List<Long> courseScheduleIdList = new ArrayList<Long>();
@@ -2671,7 +2672,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 						}
 
 					} else if (newCourseSchedule.getGroupType() == GroupType.VIP) {
-						/*Map<Integer, TeacherDefaultVipGroupSalary> map = vipGroupSalaryMap.get(teacherId);
+						Map<Integer, TeacherDefaultVipGroupSalary> map = vipGroupSalaryMap.get(teacherId);
 						if (map == null) {
 							throw new BizException("老师[]没有设置默认课酬,请先设置", teacherId);
 						}
@@ -2682,20 +2683,25 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 						if (tdvs == null) {
 							throw new BizException("老师[]没有设置默认课酬,请先设置", teacherId);
 						}
+						Map<String, BigDecimal> costInfo = vipGroupService.countVipGroupPredictFee(vipGroup,
+								teacherId,
+								vipGroup.getOnlineClassesUnitPrice(),
+								vipGroup.getOfflineClassesUnitPrice(),
+								false,true);
 						if (newCourseSchedule.getTeachMode() == TeachModeEnum.OFFLINE) {
-							ts.setExpectSalary(tdvs.getOfflineClassesSalary());
+							ts.setExpectSalary(costInfo.get("offlineTeacherSalary"));
 						} else {
-							ts.setExpectSalary(tdvs.getOnlineClassesSalary());
-						}*/
-
-						ts.setExpectSalary(new BigDecimal(0));
-						Map<Integer, CourseScheduleTeacherSalary> tsMap = courseScheduleTeacherSalaryMap.get(courseScheduleId);
-						if(tsMap != null){
-							CourseScheduleTeacherSalary oldTS = tsMap.get(teacherId);
-							if(oldTS != null){
-								ts.setExpectSalary(oldTS.getExpectSalary());
-							}
+							ts.setExpectSalary(costInfo.get("onlineTeacherSalary"));
 						}
+
+//						ts.setExpectSalary(new BigDecimal(0));
+//						Map<Integer, CourseScheduleTeacherSalary> tsMap = courseScheduleTeacherSalaryMap.get(courseScheduleId);
+//						if(tsMap != null){
+//							CourseScheduleTeacherSalary oldTS = tsMap.get(teacherId);
+//							if(oldTS != null){
+//								ts.setExpectSalary(oldTS.getExpectSalary());
+//							}
+//						}
 					} else if (newCourseSchedule.getGroupType() == PRACTICE) {
 						List<TeacherDefaultPracticeGroupSalary> teacherDefaultPracticeGroupSalaryList = teacherDefaultPracticeGroupSalaryDao
 								.queryByUserId(teacherId);