| | |
| | | } |
| | | |
| | | /** |
| | | * 查询员工在指定时间范围内已审批通过的请假记录 |
| | | * 查询员工与指定时间范围有交集的已审批通过的请假记录 |
| | | * |
| | | * 注意:按「交集」而不是「完全包含」查询。跨月请假(如 10-28 ~ 11-03)两端都不满足完全包含, |
| | | * 会被整条漏掉;是否按天分摊由调用方处理。 |
| | | * |
| | | * @param userId 员工ID(系统用户ID) |
| | | * @param startTime 开始时间 |
| | | * @param endTime 结束时间 |
| | | * @param startTime 范围开始时间 |
| | | * @param endTime 范围结束时间 |
| | | * @return 请假记录列表 |
| | | */ |
| | | default List<HrmLeaveApplicationDO> selectApprovedListByUserIdAndTimeRange(Long userId, LocalDateTime startTime, LocalDateTime endTime) { |
| | | return selectList(new LambdaQueryWrapperX<HrmLeaveApplicationDO>() |
| | | .eq(HrmLeaveApplicationDO::getUserId, userId) |
| | | .eq(HrmLeaveApplicationDO::getStatus, HrmAuditStatusEnum.APPROVE.getStatus()) |
| | | .ge(HrmLeaveApplicationDO::getStartTime, startTime) |
| | | .le(HrmLeaveApplicationDO::getEndTime, endTime)); |
| | | .le(HrmLeaveApplicationDO::getStartTime, endTime) |
| | | .ge(HrmLeaveApplicationDO::getEndTime, startTime)); |
| | | } |
| | | |
| | | } |