|  | @@ -310,6 +310,7 @@ public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherA
 | 
	
		
			
				|  |  |  		if(SignStatusEnum.SIGN_OUT.equals(signStatus)){
 | 
	
		
			
				|  |  |  			if(DateUtil.minutesBetween(classEndDateTime,date) >= 0){
 | 
	
		
			
				|  |  |  				teacherAttendance.setSignOutStatus(YesOrNoEnum.YES);
 | 
	
		
			
				|  |  | +				Date signInTime = teacherAttendance.getSignInTime();
 | 
	
		
			
				|  |  |  				List<CourseSchedule> courseSchedules = new ArrayList<>();
 | 
	
		
			
				|  |  |  				CourseSchedule cs = courseSchedule;
 | 
	
		
			
				|  |  |  				while (true){
 | 
	
	
		
			
				|  | @@ -333,27 +334,27 @@ public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherA
 | 
	
		
			
				|  |  |  					totalMinutes -= firstMinutes;
 | 
	
		
			
				|  |  |  					if(totalMinutes > 0){
 | 
	
		
			
				|  |  |  						String courseClassDate;
 | 
	
		
			
				|  |  | -						String courseStartDateTime;
 | 
	
		
			
				|  |  | +//						String courseStartDateTime;
 | 
	
		
			
				|  |  |  						String courseEndDateTime;
 | 
	
		
			
				|  |  |  						for (int i = 0; i < courseSchedules.size(); i++) {
 | 
	
		
			
				|  |  |  							courseClassDate = DateUtil.format(courseSchedules.get(i).getClassDate(), DateUtil.DEFAULT_PATTERN);
 | 
	
		
			
				|  |  | -							courseStartDateTime = DateUtil.format(courseSchedules.get(i).getStartClassTime(), DateUtil.EXPANDED_TIME_FORMAT);
 | 
	
		
			
				|  |  | +//							courseStartDateTime = DateUtil.format(courseSchedules.get(i).getStartClassTime(), DateUtil.EXPANDED_TIME_FORMAT);
 | 
	
		
			
				|  |  |  							courseEndDateTime = DateUtil.format(courseSchedules.get(i).getEndClassTime(), DateUtil.EXPANDED_TIME_FORMAT);
 | 
	
		
			
				|  |  | -							Date startDateTime = DateUtil.stringToDate(courseClassDate + " " + courseStartDateTime, DateUtil.EXPANDED_DATE_TIME_FORMAT);
 | 
	
		
			
				|  |  | +//							Date startDateTime = DateUtil.stringToDate(courseClassDate + " " + courseStartDateTime, DateUtil.EXPANDED_DATE_TIME_FORMAT);
 | 
	
		
			
				|  |  |  							Date endDateTime = DateUtil.stringToDate(courseClassDate + " " + courseEndDateTime, DateUtil.EXPANDED_DATE_TIME_FORMAT);
 | 
	
		
			
				|  |  | -							Date signOutTime = date;
 | 
	
		
			
				|  |  | -							if(i < courseSchedules.size() - 1 && date.after(endDateTime)){
 | 
	
		
			
				|  |  | +//							Date signOutTime = date;
 | 
	
		
			
				|  |  | +//							if(i < courseSchedules.size() - 1 && date.after(endDateTime)){
 | 
	
		
			
				|  |  |  								//不是最后一节连堂课,并且签退时间大于课程结束时间,签退时间等于课程结束时间
 | 
	
		
			
				|  |  | -								signOutTime = endDateTime;
 | 
	
		
			
				|  |  | -							}
 | 
	
		
			
				|  |  | +//								signOutTime = endDateTime;
 | 
	
		
			
				|  |  | +//							}
 | 
	
		
			
				|  |  |  							//如果签退时间大于课程结束时间
 | 
	
		
			
				|  |  |  							if(date.after(endDateTime)){
 | 
	
		
			
				|  |  | -								teacherAttendanceDao.cuntinueCourseSign(courseSchedules.get(i).getId(),startDateTime,signOutTime,1);
 | 
	
		
			
				|  |  | +								teacherAttendanceDao.cuntinueCourseSign(courseSchedules.get(i).getId(),signInTime,date,1);
 | 
	
		
			
				|  |  |  							}else if (date.equals(endDateTime)){
 | 
	
		
			
				|  |  | -								teacherAttendanceDao.cuntinueCourseSign(courseSchedules.get(i).getId(),startDateTime,signOutTime,1);
 | 
	
		
			
				|  |  | +								teacherAttendanceDao.cuntinueCourseSign(courseSchedules.get(i).getId(),signInTime,date,1);
 | 
	
		
			
				|  |  |  								break;
 | 
	
		
			
				|  |  |  							}else {
 | 
	
		
			
				|  |  | -								teacherAttendanceDao.cuntinueCourseSign(courseSchedules.get(i).getId(),startDateTime,signOutTime,0);
 | 
	
		
			
				|  |  | +								teacherAttendanceDao.cuntinueCourseSign(courseSchedules.get(i).getId(),signInTime,date,0);
 | 
	
		
			
				|  |  |  								break;
 | 
	
		
			
				|  |  |  							}
 | 
	
		
			
				|  |  |  						}
 |