| | |
| | | attendanceLogPo.setStoreId(storeUserDtos.get(0).getStoreId()); |
| | | attendanceLogPo.setStaffId(reqJson.getString("staffId")); |
| | | attendanceLogPo.setClockTime(reqJson.getString("checkTime")); |
| | | attendanceLogPo.setDepartmentId(attendanceClassesDto.getClassesObjId()); |
| | | attendanceLogPo.setDepartmentName(attendanceClassesDto.getClassesObjName()); |
| | | attendanceLogPo.setDepartmentId(attendanceClassesDto.getClassesId()); |
| | | attendanceLogPo.setDepartmentName(attendanceClassesDto.getClassesName()); |
| | | attendanceLogPo.setStaffName(userDtos.get(0).getName()); |
| | | attendanceLogPo.setFacePath(photo); |
| | | |
| | |
| | | attendanceClassesTaskDetailDto.setNowCheckTime(reqJson.getString("checkTime")); |
| | | attendanceClassesTaskDetailDto.setClassId(attendanceClassesDto.getClassesId()); |
| | | attendanceClassesTaskDetailDto.setStaffId(reqJson.getString("staffId")); |
| | | attendanceClassesTaskDetailDto.setState(AttendanceClassesTaskDetailDto.STATE_WAIT); |
| | | List<AttendanceClassesTaskDetailDto> attendanceClassesTaskDetailDtos = attendanceClassesTaskDetailInnerServiceSMOImpl.queryAttendanceClassesTaskDetails(attendanceClassesTaskDetailDto); |
| | | |
| | | if (attendanceClassesTaskDetailDtos == null || attendanceClassesTaskDetailDtos.size() < 1) { |
| | | context.setResponseEntity(ResultVo.error("不是考勤范围内")); |
| | | attendanceClassesTaskDetailDto = new AttendanceClassesTaskDetailDto(); |
| | | attendanceClassesTaskDetailDto.setNowCheckTime(reqJson.getString("checkTime")); |
| | | attendanceClassesTaskDetailDto.setClassId(attendanceClassesDto.getClassesId()); |
| | | attendanceClassesTaskDetailDto.setStaffId(reqJson.getString("staffId")); |
| | | attendanceClassesTaskDetailDtos = attendanceClassesTaskDetailInnerServiceSMOImpl.queryAttendanceClassesTaskDetails(attendanceClassesTaskDetailDto); |
| | | |
| | | if (attendanceClassesTaskDetailDtos != null || attendanceClassesTaskDetailDtos.size() > 0) { |
| | | String specName = "上班:"; |
| | | if (!AttendanceClassesTaskDetailDto.SPEC_CD_START.equals(attendanceClassesTaskDetailDtos.get(0).getSpecCd())) { |
| | | specName = "下班:"; |
| | | } |
| | | updateAttendanceLogRemark(attendanceLogPo.getLogId(), specName + "重复打卡"); |
| | | context.setResponseEntity(ResultVo.error("重复打卡")); |
| | | return; |
| | | } |
| | | updateAttendanceLogRemark(attendanceLogPo.getLogId(), "未到时间"); |
| | | context.setResponseEntity(ResultVo.error("未到时间")); |
| | | return; |
| | | } |
| | | |
| | |
| | | attendanceClassesTaskDetailPo.setState(getState(nowAttendanceClassesTaskDetailDto, DateUtil.getDateFromStringA(reqJson.getString("checkTime")))); |
| | | attendanceClassesTaskDetailPo.setFacePath(photo); |
| | | flag = attendanceClassesTaskDetailInnerServiceSMOImpl.updateAttendanceClassesTaskDetail(attendanceClassesTaskDetailPo); |
| | | String specName = "上班:"; |
| | | if (!AttendanceClassesTaskDetailDto.SPEC_CD_START.equals(nowAttendanceClassesTaskDetailDto.getSpecCd())) { |
| | | specName = "下班:"; |
| | | } |
| | | |
| | | if (flag < 1) { |
| | | updateAttendanceLogRemark(attendanceLogPo.getLogId(), specName + "考勤失败"); |
| | | throw new CmdException("考勤失败"); |
| | | } |
| | | |
| | |
| | | |
| | | flag = attendanceClassesTaskInnerServiceSMOImpl.updateAttendanceClassesTask(attendanceClassesTaskPo); |
| | | |
| | | if (flag < 1) { |
| | | throw new CmdException("考勤失败"); |
| | | // if (flag < 1) { |
| | | // updateAttendanceLogRemark(attendanceLogPo.getLogId(), specName + "考勤失败"); |
| | | // throw new CmdException("考勤失败"); |
| | | // } |
| | | |
| | | String msg = "打卡成功"; |
| | | if (AttendanceClassesTaskDetailDto.STATE_LATE.equals(attendanceClassesTaskDetailPo.getState())) { |
| | | msg = "打卡迟到"; |
| | | } |
| | | |
| | | if (AttendanceClassesTaskDetailDto.STATE_LEAVE.equals(attendanceClassesTaskDetailPo.getState())) { |
| | | msg = "打卡早退"; |
| | | } |
| | | updateAttendanceLogRemark(attendanceLogPo.getLogId(), specName + msg); |
| | | context.setResponseEntity(ResultVo.createResponseEntity(ResultVo.CODE_OK, msg)); |
| | | |
| | | } |
| | | |
| | | private void updateAttendanceLogRemark(String logId, String remark) { |
| | | |
| | | AttendanceLogPo attendanceLogPo = new AttendanceLogPo(); |
| | | attendanceLogPo.setLogId(logId); |
| | | attendanceLogPo.setRemark(remark.length() > 1000 ? remark.substring(0, 1000) : remark); |
| | | attendanceLogInnerServiceSMOImpl.updateAttendanceLog(attendanceLogPo); |
| | | } |
| | | |
| | | /** |