| | |
| | | import cn.iocoder.yudao.module.system.api.dept.DeptApi; |
| | | import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO; |
| | | import jakarta.annotation.Resource; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | import org.springframework.validation.annotation.Validated; |
| | |
| | | */ |
| | | @Service |
| | | @Validated |
| | | @Slf4j |
| | | public class HrmAttendanceRecordServiceImpl implements HrmAttendanceRecordService { |
| | | |
| | | @Resource |
| | |
| | | } |
| | | LocalDate exceptionDate = exception.getExceptionDate(); |
| | | LocalDateTime exceptionTime = exception.getExceptionTime(); |
| | | // 补卡时间缺失时无法回填考勤记录,记录日志并跳过,避免空指针 |
| | | if (exceptionTime == null) { |
| | | log.warn("[supplementClockIn] 补卡申请({}) 补卡时间为空,跳过考勤记录回填", exception.getId()); |
| | | return; |
| | | } |
| | | Long userId = exception.getUserId(); |
| | | HrmEmployeeDO employee = employeeService.getEmployee(userId); |
| | | HrmAttendanceRuleDO rule = employee == null ? null |