|
@@ -256,7 +256,7 @@ public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherA
|
|
|
teacherAttendance.setTeacherId(userId);
|
|
|
teacherAttendance.setClassGroupId(classGroup.getId());
|
|
|
teacherAttendance.setMusicGroupId(classGroup.getMusicGroupId());
|
|
|
- int advanceSignMinutes = Integer.parseInt(sysConfigDao.findConfigValue(SysConfigService.ADVANCE_SIGN_IN_MINUTES));
|
|
|
+// int advanceSignMinutes = Integer.parseInt(sysConfigDao.findConfigValue(SysConfigService.ADVANCE_SIGN_IN_MINUTES));
|
|
|
Date date = new Date();
|
|
|
String classDate = DateUtil.format(courseSchedule.getClassDate(), DateUtil.DEFAULT_PATTERN);
|
|
|
String startClassTime = DateUtil.format(courseSchedule.getStartClassTime(), DateUtil.EXPANDED_TIME_FORMAT);
|
|
@@ -265,7 +265,8 @@ public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherA
|
|
|
Date classStartDateTime = DateUtil.stringToDate(classDate + " " + startClassTime, DateUtil.EXPANDED_DATE_TIME_FORMAT);
|
|
|
Date classEndDateTime = DateUtil.stringToDate(classDate + " " + endClassTime, DateUtil.EXPANDED_DATE_TIME_FORMAT);
|
|
|
Date classEndDateAdd60Minutes = DateUtil.addMinutes(classEndDateTime, 60);
|
|
|
- Date add20Minutes = DateUtil.addMinutes(classStartDateTime, advanceSignMinutes * -1);
|
|
|
+ Date classEndDateCut10Minutes = DateUtil.addMinutes(classEndDateTime, -10);
|
|
|
+// Date add20Minutes = DateUtil.addMinutes(classStartDateTime, advanceSignMinutes * -1);
|
|
|
Date add60Minutes = DateUtil.addMinutes(classStartDateTime, -60);
|
|
|
//签到
|
|
|
if(teacherAttendance.getSignInTime() == null && SignStatusEnum.SIGN_IN.equals(signStatus)){
|
|
@@ -280,11 +281,11 @@ public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherA
|
|
|
boolean isSign = false;
|
|
|
if(yesOrNoEnum == YesOrNoEnum.YES){
|
|
|
isSign = true;
|
|
|
- }else if(DateUtil.minutesBetween(add60Minutes,date) > 0 && DateUtil.minutesBetween(date,add20Minutes) > 0){
|
|
|
- //正常签到范围(开始前60分钟 ~ 开始之前20分钟)
|
|
|
+ }else if(DateUtil.minutesBetween(add60Minutes,date) > 0 && DateUtil.minutesBetween(date,classStartDateTime) > 0){
|
|
|
+ //正常签到范围(开始前60分钟 ~ 开始之前)
|
|
|
isSign = true;
|
|
|
- }else if(DateUtil.minutesBetween(add20Minutes,date) > 0){
|
|
|
- //异常签到范围(开始之前20分钟)
|
|
|
+ }else if(DateUtil.minutesBetween(classStartDateTime,date) > 0){
|
|
|
+ //异常签到范围(开始之后)
|
|
|
isSign = true;
|
|
|
teacherAttendance.setSignInStatus(YesOrNoEnum.NO);
|
|
|
}
|
|
@@ -303,8 +304,8 @@ public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherA
|
|
|
}
|
|
|
//签退
|
|
|
if(teacherAttendance.getSignOutTime() == null && SignStatusEnum.SIGN_OUT.equals(signStatus)){
|
|
|
- //正常签退范围(课程结束后,1小时内)
|
|
|
- if(DateUtil.minutesBetween(classEndDateTime,date) > 0 && DateUtil.minutesBetween(date,classEndDateAdd60Minutes) > 0){
|
|
|
+ //正常签退范围(课程结束前10分钟,1小时内)
|
|
|
+ if(DateUtil.minutesBetween(classEndDateCut10Minutes,date) > 0 && DateUtil.minutesBetween(date,classEndDateAdd60Minutes) > 0){
|
|
|
teacherAttendance.setSignOutStatus(YesOrNoEnum.YES);
|
|
|
}else if(DateUtil.minutesBetween(classEndDateAdd60Minutes,date) > 0){
|
|
|
teacherAttendance.setSignOutStatus(YesOrNoEnum.NO);
|