Browse Source

Merge remote-tracking branch 'origin/master'

周箭河 5 years ago
parent
commit
2509510b16

+ 11 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/VipGroupCourseAdjustInfoDto.java

@@ -37,6 +37,17 @@ public class VipGroupCourseAdjustInfoDto {
     @ApiModelProperty(value = "是否跳过节假日 true-跳过 false-不跳过")
     @ApiModelProperty(value = "是否跳过节假日 true-跳过 false-不跳过")
     private boolean isHoliday;
     private boolean isHoliday;
 
 
+    @ApiModelProperty(value = "教学点")
+    private Integer schoolId;
+
+    public Integer getSchoolId() {
+        return schoolId;
+    }
+
+    public void setSchoolId(Integer schoolId) {
+        this.schoolId = schoolId;
+    }
+
     public BigDecimal getSingleClassPrice() {
     public BigDecimal getSingleClassPrice() {
         return singleClassPrice;
         return singleClassPrice;
     }
     }

+ 27 - 6
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -382,12 +382,12 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 			studentNumCourseMap=MapUtil.convertIntegerMap(studentNumCourseMaps);
 			studentNumCourseMap=MapUtil.convertIntegerMap(studentNumCourseMaps);
 		}
 		}
 		for (CourseScheduleDto courseScheduleDto : teacherCourseSchedulesWithDate) {
 		for (CourseScheduleDto courseScheduleDto : teacherCourseSchedulesWithDate) {
-			Long studentNum=studentNumCourseMap.get(courseScheduleDto.getId());
-			if(Objects.nonNull(studentNum)){
-				courseScheduleDto.setStudentAttendanceIsFirstTime(studentNum>0?0:1);
-			}else{
-				courseScheduleDto.setStudentAttendanceIsFirstTime(1);
-			}
+//			Long studentNum=studentNumCourseMap.get(courseScheduleDto.getId());
+//			if(Objects.nonNull(studentNum)){
+//				courseScheduleDto.setStudentAttendanceIsFirstTime(studentNum>0?0:1);
+//			}else{
+//				courseScheduleDto.setStudentAttendanceIsFirstTime(1);
+//			}
 
 
 			if(now.before(courseScheduleDto.getStartClassTime())){
 			if(now.before(courseScheduleDto.getStartClassTime())){
 				courseScheduleDto.setStatus(CourseStatusEnum.NOT_START);
 				courseScheduleDto.setStatus(CourseStatusEnum.NOT_START);
@@ -939,6 +939,11 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 			throw new BizException("排课起始时间不能小于当前时间");
 			throw new BizException("排课起始时间不能小于当前时间");
 		}
 		}
 
 
+		boolean needSchoolId=Objects.nonNull(vipGroupCourseAdjustInfo.getTeachMode())&&vipGroupCourseAdjustInfo.getTeachMode().equals(TeachModeEnum.OFFLINE)&&Objects.isNull(vipGroupCourseAdjustInfo.getTeachMode());
+		if(needSchoolId){
+			throw new BizException("请设置教学点");
+		}
+
 		VipGroup vipGroup=vipGroupDao.get(vipGroupCourseAdjustInfo.getVipGroupId().longValue());
 		VipGroup vipGroup=vipGroupDao.get(vipGroupCourseAdjustInfo.getVipGroupId().longValue());
 		if(Objects.isNull(vipGroup)){
 		if(Objects.isNull(vipGroup)){
 			throw new BizException("指定课程不存在");
 			throw new BizException("指定课程不存在");
@@ -1029,6 +1034,12 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 					courseSchedules.get(courseStartDates.size()-1).setClassDate(courseStartTime);
 					courseSchedules.get(courseStartDates.size()-1).setClassDate(courseStartTime);
 					courseSchedules.get(courseStartDates.size()-1).setStartClassTime(courseStartTime);
 					courseSchedules.get(courseStartDates.size()-1).setStartClassTime(courseStartTime);
 					courseSchedules.get(courseStartDates.size()-1).setEndClassTime(courseEndTime);
 					courseSchedules.get(courseStartDates.size()-1).setEndClassTime(courseEndTime);
+					if(Objects.nonNull(vipGroupCourseAdjustInfo.getTeachMode())){
+						courseSchedules.get(courseStartDates.size()-1).setTeachMode(vipGroupCourseAdjustInfo.getTeachMode());
+						if(vipGroupCourseAdjustInfo.getTeachMode().equals(TeachModeEnum.OFFLINE)){
+							courseSchedules.get(courseStartDates.size()-1).setSchoolId(vipGroupCourseAdjustInfo.getSchoolId());
+						}
+					}
 				}
 				}
 				if(courseStartDates.size()==courseScheduleIds.size()){
 				if(courseStartDates.size()==courseScheduleIds.size()){
 					break;
 					break;
@@ -1307,6 +1318,16 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 				boolean teacherIsChange=oldTeacherIsNull||(!newTeacherIsNull&&!oldCourseSchedule.getActualTeacherId().equals(newCourseSchedule.getActualTeacherId()));
 				boolean teacherIsChange=oldTeacherIsNull||(!newTeacherIsNull&&!oldCourseSchedule.getActualTeacherId().equals(newCourseSchedule.getActualTeacherId()));
 				boolean schoolIsChange=oldSchoolIsNull||(newSchoolIsNull&&!oldCourseSchedule.getSchoolId().equals(newCourseSchedule.getSchoolId()));
 				boolean schoolIsChange=oldSchoolIsNull||(newSchoolIsNull&&!oldCourseSchedule.getSchoolId().equals(newCourseSchedule.getSchoolId()));
 
 
+				boolean needSchoolId = Objects.nonNull(newCourseSchedule.getTeachMode())&&newCourseSchedule.getTeachMode().equals(TeachModeEnum.OFFLINE)&&Objects.isNull(newCourseSchedule.getSchoolId());
+
+				if(needSchoolId){
+					throw new BizException("请设置教学点");
+				}
+
+				if(Objects.nonNull(newCourseSchedule.getTeachMode())){
+					oldCourseSchedule.setTeachMode(newCourseSchedule.getTeachMode());
+				}
+
 				if(schoolIsChange){
 				if(schoolIsChange){
 					oldCourseSchedule.setSchoolId(newCourseSchedule.getSchoolId());
 					oldCourseSchedule.setSchoolId(newCourseSchedule.getSchoolId());
 				}
 				}

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentAttendanceServiceImpl.java

@@ -87,7 +87,7 @@ public class StudentAttendanceServiceImpl extends BaseServiceImpl<Long, StudentA
 		SysConfig attendanceTimeRange = sysConfigService.findByParamName(SysConfigService.ENABLE_STUDENT_ATTENDANCE_TIME_RANGE);
 		SysConfig attendanceTimeRange = sysConfigService.findByParamName(SysConfigService.ENABLE_STUDENT_ATTENDANCE_TIME_RANGE);
 		int courseEndTime = DateUtil.minutesBetween(courseSchedule.getEndClassTime(), date);
 		int courseEndTime = DateUtil.minutesBetween(courseSchedule.getEndClassTime(), date);
 		if(date.after(courseSchedule.getEndClassTime())&&courseEndTime>attendanceTimeRange.getParanValue(Integer.class)){
 		if(date.after(courseSchedule.getEndClassTime())&&courseEndTime>attendanceTimeRange.getParanValue(Integer.class)){
-			throw new BizException("程结束一小时后禁止点名");
+			throw new BizException("程结束一小时后禁止点名");
 		}
 		}
 		studentAttendanceDao.deleteStudentAttendancesByCourse(courseScheduleId);
 		studentAttendanceDao.deleteStudentAttendancesByCourse(courseScheduleId);
 		int classTimes=courseScheduleDao.countClassTimes(courseSchedule.getClassGroupId().longValue(),courseSchedule.getStartClassTime());
 		int classTimes=courseScheduleDao.countClassTimes(courseSchedule.getClassGroupId().longValue(),courseSchedule.getStartClassTime());

+ 17 - 8
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentRegistrationServiceImpl.java

@@ -16,6 +16,8 @@ import java.util.stream.Collectors;
 import javax.annotation.Resource;
 import javax.annotation.Resource;
 
 
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.annotation.Transactional;
@@ -96,6 +98,8 @@ import com.ym.mec.util.http.HttpUtil;
 @Service
 @Service
 public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, StudentRegistration> implements StudentRegistrationService {
 public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, StudentRegistration> implements StudentRegistrationService {
 
 
+	private static final Logger LOGGER = LoggerFactory.getLogger(StudentRegistrationServiceImpl.class);
+	
     @Resource
     @Resource
     private StudentRegistrationDao studentRegistrationDao;
     private StudentRegistrationDao studentRegistrationDao;
     @Autowired
     @Autowired
@@ -851,14 +855,19 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
                     studentRegistration.getParentsName(), studentPaymentOrder.getActualAmount());
                     studentRegistration.getParentsName(), studentPaymentOrder.getActualAmount());
 
 
 //            //生成课程协议
 //            //生成课程协议
-            contractService.transferMusicGroupCoursesContract(studentRegistration.getUserId(),studentRegistration.getMusicGroupId());
-            //商品协议(租赁时候有)
-            if(musicOneSubjectClassPlan.getKitGroupPurchaseType().equals(KitGroupPurchaseTypeEnum.LEASE)){
-                StudentPaymentOrderDetail applyOrderMusical = studentPaymentOrderDetailService.findApplyOrderMusical(studentPaymentOrder.getId());
-                if(applyOrderMusical != null && applyOrderMusical.getGoodsIdList() != null && !applyOrderMusical.getGoodsIdList().equals("")){
-                    contractService.transferGoodsContract(studentPaymentOrder.getUserId(),studentPaymentOrder.getMusicGroupId(),applyOrderMusical.getGoodsIdList(),musicOneSubjectClassPlan.getKitGroupPurchaseType());
-                }
-            }
+			try {
+				contractService.transferMusicGroupCoursesContract(studentRegistration.getUserId(), studentRegistration.getMusicGroupId());
+				// 商品协议(租赁时候有)
+				if (musicOneSubjectClassPlan.getKitGroupPurchaseType().equals(KitGroupPurchaseTypeEnum.LEASE)) {
+					StudentPaymentOrderDetail applyOrderMusical = studentPaymentOrderDetailService.findApplyOrderMusical(studentPaymentOrder.getId());
+					if (applyOrderMusical != null && applyOrderMusical.getGoodsIdList() != null && !applyOrderMusical.getGoodsIdList().equals("")) {
+						contractService.transferGoodsContract(studentPaymentOrder.getUserId(), studentPaymentOrder.getMusicGroupId(),
+								applyOrderMusical.getGoodsIdList(), musicOneSubjectClassPlan.getKitGroupPurchaseType());
+					}
+				}
+			} catch (Exception e) {
+				LOGGER.error("协议生成失败",e);
+			}
         }
         }
 
 
 
 

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

@@ -195,6 +195,9 @@
             <if test="schoolId != null">
             <if test="schoolId != null">
                 schoole_id_ = #{schoolId},
                 schoole_id_ = #{schoolId},
             </if>
             </if>
+            <if test="teachMode != null">
+                teach_mode_ = #{teachMode,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
+            </if>
             update_time_ = NOW()
             update_time_ = NOW()
         </set>
         </set>
         WHERE id_ = #{id}
         WHERE id_ = #{id}
@@ -1023,6 +1026,9 @@
                 <if test="item.schoolId != null">
                 <if test="item.schoolId != null">
                     schoole_id_ = #{item.schoolId},
                     schoole_id_ = #{item.schoolId},
                 </if>
                 </if>
+                <if test="item.teachMode != null">
+                    teach_mode_ = #{item.teachMode,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
+                </if>
                 update_time_ = NOW()
                 update_time_ = NOW()
             </set>
             </set>
             WHERE id_ = #{item.id}
             WHERE id_ = #{item.id}