|
@@ -6,6 +6,9 @@ import com.ym.mec.web.dal.dao.CourseScheduleDao;
|
|
|
import com.ym.mec.web.dal.dao.TeacherAttendanceDao;
|
|
|
import com.ym.mec.web.dal.entity.CourseSchedule;
|
|
|
import com.ym.mec.web.dal.entity.TeacherAttendance;
|
|
|
+import com.ym.mec.web.dal.enums.CourseStatusEnum;
|
|
|
+import com.ym.mec.web.dal.enums.ParamEnum;
|
|
|
+import com.ym.mec.web.dal.enums.YesOrNoEnum;
|
|
|
import com.ym.mec.web.service.TeacherAttendanceService;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
@@ -30,18 +33,29 @@ public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherA
|
|
|
@Override
|
|
|
public void addTeacherAttendanceRecord(TeacherAttendance teacherAttendance) {
|
|
|
CourseSchedule courseSchedule = courseScheduleDao.get(teacherAttendance.getCourseScheduleId());
|
|
|
- StringBuilder startClassDateTimeString=new StringBuilder(new SimpleDateFormat("yyyy-MM-dd").format(courseSchedule.getClassDate()));
|
|
|
- startClassDateTimeString.append(" ");
|
|
|
- startClassDateTimeString.append(new SimpleDateFormat("HH:mm:dd").format(courseSchedule.getStartClassTime()));
|
|
|
- Date startClassTime = null;
|
|
|
- try {
|
|
|
- startClassTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:dd")
|
|
|
- .parse(startClassDateTimeString.toString());
|
|
|
- } catch (ParseException e) {
|
|
|
- e.printStackTrace();
|
|
|
- }
|
|
|
Date date = new Date();
|
|
|
- Long temp=(date.getTime()-startClassTime.getTime())/1000/60;
|
|
|
+ if(teacherAttendance.getStatus()!= YesOrNoEnum.YES_QUIT){
|
|
|
+ StringBuilder startClassDateTimeString=new StringBuilder(new SimpleDateFormat("yyyy-MM-dd").format(courseSchedule.getClassDate()));
|
|
|
+ startClassDateTimeString.append(" ");
|
|
|
+ startClassDateTimeString.append(new SimpleDateFormat("HH:mm:ss").format(courseSchedule.getStartClassTime()));
|
|
|
+ Date startClassTime = null;
|
|
|
+ try {
|
|
|
+ startClassTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
|
|
|
+ .parse(startClassDateTimeString.toString());
|
|
|
+ } catch (ParseException e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ Long timeGap=(date.getTime()-startClassTime.getTime())/1000/60;
|
|
|
+ if(timeGap<= ParamEnum.TEACHER_ATTENDANCE_TIME_GAP.getCode()){
|
|
|
+ teacherAttendance.setStatus(YesOrNoEnum.YES);
|
|
|
+ }else{
|
|
|
+ teacherAttendance.setStatus(YesOrNoEnum.NO);
|
|
|
+ }
|
|
|
+ courseSchedule.setStatus(CourseStatusEnum.UNDERWAY);
|
|
|
+ }else{
|
|
|
+ courseSchedule.setStatus(CourseStatusEnum.OVER);
|
|
|
+ }
|
|
|
+ courseScheduleDao.update(courseSchedule);
|
|
|
teacherAttendance.setSignInTime(date);
|
|
|
teacherAttendance.setCreateTime(date);
|
|
|
teacherAttendanceDao.insert(teacherAttendance);
|