|
@@ -174,29 +174,46 @@ public final class EventSearch {
|
|
|
StudentAttendanceDO ST = studentAttendanceService.getStudentAttendanceOne(employeeNo,parsedTime);//获取这个学生对应的这个考勤记录
|
|
|
AdminUserDO user = adminUserService.findUserByUserNumber(employeeNo);//找到这个学生
|
|
|
//插入到attendance表
|
|
|
+ LocalDate localDate = LocalDate.now();
|
|
|
if (ST==null) { // 如果不存在,则进行打卡记录的创建
|
|
|
if (employeeNo != null && !employeeNo.equals("0")) {
|
|
|
if (user != null &&"1".equals(user.getUserType())) {//在校生
|
|
|
- StudentAttendancePageReqVO attendanceReqVO = new StudentAttendancePageReqVO();
|
|
|
- LocalDate localDate = LocalDate.now();
|
|
|
if (localDate.equals(date)) {
|
|
|
- attendanceReqVO.setDate(localDate);
|
|
|
- attendanceReqVO.setUserNumber(user.getUserNumber());
|
|
|
- attendance.setClockInStatus("1");
|
|
|
- List<StudentAttendanceDO> result = studentAttendanceService.getStudentAttendanceAllList(attendanceReqVO);//找到这天的未打卡记录
|
|
|
- if (result!=null&&!result.isEmpty()) {//有未打卡记录更新未打卡记录
|
|
|
- StudentAttendanceDO re = result.get(0);
|
|
|
- if ("1".equals(re.getClockInStatus())) {//找到未打卡的
|
|
|
- re.setClockInStatus("0");//变成正常
|
|
|
- re.setClockInTime(parsedTime);//更新打卡时间
|
|
|
- re.setCreateTime(parsedTime);
|
|
|
- re.setUpdateTime(parsedTime);//更新时间
|
|
|
- if (photoUrl != null) {
|
|
|
- re.setPhoto(photoUrl); //
|
|
|
- }
|
|
|
- studentAttendance.add(re);//
|
|
|
- studentAttendanceService.updateStudentAttendance(BeanUtils.toBean(re, StudentAttendanceSaveReqVO.class));
|
|
|
+ StudentAttendanceDO re = studentAttendanceService.getOneErrorOrExcusedStudentAttendance(user.getUserNumber(),localDate,"1");//找到这天的未打卡记录
|
|
|
+ if (re!=null) {//有未打卡记录更新未打卡记录
|
|
|
+ re.setClockInStatus("0");//变成正常
|
|
|
+ re.setClockInTime(parsedTime);//更新打卡时间
|
|
|
+ re.setCreateTime(parsedTime);
|
|
|
+ re.setUpdateTime(parsedTime);//更新时间
|
|
|
+ if (photoUrl != null) {
|
|
|
+ re.setPhoto(photoUrl); //
|
|
|
}
|
|
|
+ studentAttendance.add(re);//
|
|
|
+ studentAttendanceService.updateStudentAttendance(BeanUtils.toBean(re, StudentAttendanceSaveReqVO.class));
|
|
|
+ }else {//无未打卡记录直接插入
|
|
|
+ attendance.setStudentName(user.getNickname()); // 昵称
|
|
|
+ attendance.setStudentId(user.getId()); // 学生id
|
|
|
+ attendance.setDeptId(user.getDeptId()); // 工作间id
|
|
|
+ attendance.setSupervisorId(user.getSupervisorId()); // 导师id
|
|
|
+ attendance.setClockInStatus(transformClockStatus(parsedTime)); // 打卡状态
|
|
|
+ attendance.setClockInTime(parsedTime);//打卡时间
|
|
|
+ attendance.setCreateTime(parsedTime);
|
|
|
+ attendance.setUpdateTime(parsedTime);
|
|
|
+ studentAttendance.add(attendance);
|
|
|
+ studentAttendanceService.createStudentAttendance(BeanUtils.toBean(attendance, StudentAttendanceSaveReqVO.class));
|
|
|
+ }
|
|
|
+ }else if (yesterday.equals(date)){//前一天的以免没有加载
|
|
|
+ StudentAttendanceDO re = studentAttendanceService.getOneErrorOrExcusedStudentAttendance(user.getUserNumber(),yesterday,"1");//找到前一天的未打卡记录
|
|
|
+ if (re!=null) {//有未打卡记录更新未打卡记录
|
|
|
+ re.setClockInStatus("0");
|
|
|
+ re.setClockInTime(parsedTime);
|
|
|
+ re.setCreateTime(parsedTime);
|
|
|
+ re.setUpdateTime(parsedTime);
|
|
|
+ if (photoUrl != null) {
|
|
|
+ re.setPhoto(photoUrl);
|
|
|
+ }
|
|
|
+ studentAttendance.add(re);
|
|
|
+ studentAttendanceService.updateStudentAttendance(BeanUtils.toBean(re, StudentAttendanceSaveReqVO.class));
|
|
|
}else {//无未打卡记录直接插入
|
|
|
attendance.setStudentName(user.getNickname()); // 昵称
|
|
|
attendance.setStudentId(user.getId()); // 学生id
|
|
@@ -209,17 +226,6 @@ public final class EventSearch {
|
|
|
studentAttendance.add(attendance);
|
|
|
studentAttendanceService.createStudentAttendance(BeanUtils.toBean(attendance, StudentAttendanceSaveReqVO.class));
|
|
|
}
|
|
|
- }else {//前一天的以免没有加载
|
|
|
- attendance.setStudentName(user.getNickname()); // 昵称
|
|
|
- attendance.setStudentId(user.getId()); // 学生id
|
|
|
- attendance.setDeptId(user.getDeptId()); // 工作间id
|
|
|
- attendance.setSupervisorId(user.getSupervisorId()); // 导师id
|
|
|
- attendance.setClockInStatus(transformClockStatus(parsedTime)); // 打卡状态
|
|
|
- attendance.setClockInTime(parsedTime);//打卡时间
|
|
|
- attendance.setCreateTime(parsedTime);
|
|
|
- attendance.setUpdateTime(parsedTime);
|
|
|
- studentAttendance.add(attendance);
|
|
|
- studentAttendanceService.createStudentAttendance(BeanUtils.toBean(attendance, StudentAttendanceSaveReqVO.class));
|
|
|
}
|
|
|
} else {
|
|
|
System.out.println("没有找到该用户" + employeeNo);
|