java110
2023-04-07 bc8750e55ae35a58e3e282198fe47d13e8727023
service-common/src/main/java/com/java110/common/cmd/attendanceClasses/CheckInCmd.java
@@ -193,9 +193,15 @@
            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;
        }
@@ -210,8 +216,13 @@
        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("考勤失败");
        }
@@ -230,23 +241,32 @@
        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 = "打开迟到";
            msg = "打卡迟到";
        }
        if (AttendanceClassesTaskDetailDto.STATE_LEAVE.equals(attendanceClassesTaskDetailPo.getState())) {
            msg = "打开早退";
            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);
    }
    /**
     * 考勤状态计算
     *