| | |
| | | import org.apache.ibatis.annotations.Mapper; |
| | | |
| | | import java.time.LocalDateTime; |
| | | import java.util.Collection; |
| | | import java.util.List; |
| | | |
| | | /** |
| | |
| | | .le(HrmLeaveApplicationDO::getEndTime, endTime)); |
| | | } |
| | | |
| | | /** |
| | | * 查询多个员工在指定时间范围内已审批通过的请假记录(与时间范围有交集即命中) |
| | | * |
| | | * @param userIds 系统用户ID集合 |
| | | * @param startTime 区间开始时间 |
| | | * @param endTime 区间结束时间 |
| | | * @return 请假记录列表 |
| | | */ |
| | | default List<HrmLeaveApplicationDO> selectApprovedListByUserIdsAndTimeRange(Collection<Long> userIds, |
| | | LocalDateTime startTime, |
| | | LocalDateTime endTime) { |
| | | return selectList(new LambdaQueryWrapperX<HrmLeaveApplicationDO>() |
| | | .in(HrmLeaveApplicationDO::getUserId, userIds) |
| | | .eq(HrmLeaveApplicationDO::getStatus, HrmAuditStatusEnum.APPROVE.getStatus()) |
| | | .le(HrmLeaveApplicationDO::getStartTime, endTime) |
| | | .ge(HrmLeaveApplicationDO::getEndTime, startTime) |
| | | .orderByAsc(HrmLeaveApplicationDO::getStartTime)); |
| | | } |
| | | |
| | | } |