Total Complexity | 1 |
Complexity/F | 1 |
Lines of Code | 22 |
Function Count | 1 |
Duplicated Lines | 0 |
Ratio | 0 % |
Changes | 0 |
1 | import { Inject } from '@nestjs/common'; |
||
2 | import { IEventRepository } from '../Repository/IEventRepository'; |
||
3 | import { User } from 'src/Domain/HumanResource/User/User.entity'; |
||
4 | import { ILeaveRepository } from 'src/Domain/HumanResource/Leave/Repository/ILeaveRepository'; |
||
5 | |||
6 | export class DoesLeaveExistForPeriod { |
||
7 | constructor( |
||
8 | @Inject('ILeaveRepository') |
||
9 | private readonly leaveRepository: ILeaveRepository |
||
10 | ) {} |
||
11 | |||
12 | public async isSatisfiedBy( |
||
13 | user: User, |
||
14 | startDate: string, |
||
15 | endDate: string |
||
16 | ): Promise<boolean> { |
||
17 | const leaves = await this.leaveRepository.countLeavesByUserAndPeriod(user, startDate, endDate) |
||
18 | |||
19 | return leaves > 0; |
||
20 | } |
||
21 | } |
||
22 |