Browse Source

Merge remote-tracking branch 'origin/master'

周箭河 5 years ago
parent
commit
0539b6f454

+ 0 - 4
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -1385,10 +1385,6 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 
             oldCourseSchedules.put(newCourseSchedule.getId(), oldCourseSchedule);
 
-            if (oldCourseSchedule.getStartClassTime().before(now) && sysUser.getUserType().contains("TEACHER")) {
-                throw new BizException("不能调整今天及以前的课程");
-            }
-
             if (newCourseSchedule.getStartClassTime().after(now)){
                 teacherAttendanceDao.cleanCourseTeacherSignInfo(newCourseSchedule.getId());
             }

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

@@ -284,7 +284,7 @@ public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherA
 			boolean isSign = false;
 			if(yesOrNoEnum == YesOrNoEnum.YES){
 				isSign = true;
-			}else if(DateUtil.minutesBetween(date,classStartDateTime) > 0){
+			}else if(DateUtil.minutesBetween(date,classStartDateTime) >= 0){
 				//正常签到范围(开始之前)
 				isSign = true;
 			}else if(DateUtil.minutesBetween(classStartDateTime,date) > 0){
@@ -313,6 +313,8 @@ public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherA
 				//异常签退时间段,并且没有签退状态
 			}else if(DateUtil.minutesBetween(classEndDateAdd60Minutes,date) > 0 && teacherAttendance.getSignOutStatus() == null){
 				teacherAttendance.setSignOutStatus(YesOrNoEnum.NO);
+			}else if(DateUtil.minutesBetween(classStartDateTime,date) > 0 && DateUtil.minutesBetween(date,classEndDateCut10Minutes) > 0){
+				teacherAttendance.setSignOutStatus(YesOrNoEnum.NO);
 			}else {
 				return;
 			}

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

@@ -1383,6 +1383,10 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 
         BigDecimal surplusCourseFee = courseScheduleStudentPaymentDao.countSurplusCourseFee(classGroup.getId(), studentId);
 
+		if(Objects.isNull(surplusCourseFee)){
+			surplusCourseFee=new BigDecimal(0);
+		}
+
 		Map<String, Object> pauseInfos = new HashMap<>();
 		//学生剩余课时
         List<StudentCourseInfoDto> userSurplusCourseInfoByGroup = courseScheduleDao.findUserSurplusCourseInfoByGroup(GroupType.VIP, vipGroupId.toString(), studentId);
@@ -1417,7 +1421,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 		}
 
 		int studentCourseNum = classGroupStudentMapperDao.countClassGroupNormalStudentNum(classGroup.getId());
-		if(studentCourseNum<=0){
+		if(studentCourseNum<=0&&classGroup.getStudentNum().equals(classGroup.getExpectStudentNum())){
 			vipGroup.setStatus(VipGroupStatusEnum.PAUSE);
 			if(!CollectionUtils.isEmpty(courseScheduleIds)){
 				courseScheduleTeacherSalaryDao.batchDeleteByCourseScheduleIds(courseScheduleIds);

+ 1 - 0
mec-biz/src/main/resources/config/mybatis/StudentAttendanceMapper.xml

@@ -373,6 +373,7 @@
             <foreach collection="courseScheduleIds" item="courseScheduleId" open="(" close=")" separator=",">
                 #{courseScheduleId}
             </foreach>
+            AND update_time_!='1970-01-01 00:00:00'
         GROUP BY
             course_schedule_id_
     </select>