liu
10 小时以前 5611b19e904ec0daa96ea5f648500cf6205c9385
yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/attendance/HrmAttendanceRecordService.java
@@ -1,6 +1,8 @@
package cn.iocoder.yudao.module.hrm.service.attendance;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.hrm.controller.admin.attendance.vo.HrmAttendanceMyStatusRespVO;
import cn.iocoder.yudao.module.hrm.controller.admin.attendance.vo.HrmAttendanceClockReqVO;
import cn.iocoder.yudao.module.hrm.controller.admin.attendance.vo.HrmAttendanceRecordPageReqVO;
import cn.iocoder.yudao.module.hrm.dal.dataobject.attendance.HrmAttendanceRecordDO;
import cn.iocoder.yudao.module.hrm.dal.dataobject.attendance.HrmAttendanceExceptionDO;
@@ -37,6 +39,15 @@
     */
    HrmAttendanceRecordDO getAttendanceRecordByUserIdAndDate(Long userId, LocalDate date);
    /**
     * 获得当前登录人的考勤状态:考勤规则 + 指定日期的打卡状态
     *
     * @param loginUserId 登录用户ID(系统用户ID,不是员工ID)
     * @param date        考勤日期,为空时取服务器当天
     * @return 我的考勤状态
     */
    HrmAttendanceMyStatusRespVO getMyStatus(Long loginUserId, LocalDate date);
    /** 创建导入的考勤记录 */
    void createImportedRecord(HrmAttendanceRecordDO record);
@@ -48,20 +59,24 @@
     *
     * @param userId 员工ID
     * @param clockTime 打卡时间
     * @param location 打卡地点
     * @return 考勤记录
     * @param reqVO 定位原始数据
     * @param legacyLocation 旧客户端传入的地点文本,仅在未启用定位范围时兼容使用
     * @return 打卡结果
     */
    HrmAttendanceRecordDO clockIn(Long userId, LocalDateTime clockTime, String location);
    HrmAttendanceClockResult clockIn(Long userId, LocalDateTime clockTime,
                                     HrmAttendanceClockReqVO reqVO, String legacyLocation);
    /**
     * 打卡(下班打卡)
     *
     * @param userId 员工ID
     * @param clockTime 打卡时间
     * @param location 打卡地点
     * @return 考勤记录
     * @param reqVO 定位原始数据
     * @param legacyLocation 旧客户端传入的地点文本,仅在未启用定位范围时兼容使用
     * @return 打卡结果
     */
    HrmAttendanceRecordDO clockOut(Long userId, LocalDateTime clockTime, String location);
    HrmAttendanceClockResult clockOut(Long userId, LocalDateTime clockTime,
                                      HrmAttendanceClockReqVO reqVO, String legacyLocation);
    /**
     * 补卡审批通过后更新考勤记录
@@ -70,4 +85,4 @@
     */
    void supplementClockIn(HrmAttendanceExceptionDO exception);
}
}