返回 AiToEarn
date-range.validator.ts
根目录 / project / aitoearn-electron / server / src / common / validators / date-range.validator.ts
1 import {
2 ValidationArguments,
3 ValidatorConstraint,
4 ValidatorConstraintInterface,
5 } from 'class-validator';
6
7 @ValidatorConstraint({ name: 'isDateRange', async: false })
8 export class IsDateRange implements ValidatorConstraintInterface {
9 validate(propertyValue: Date, args: ValidationArguments) {
10 const [relatedPropertyName] = args.constraints;
11 const relatedValue = (args.object as any)[relatedPropertyName];
12
13 if (!propertyValue || !relatedValue) return true;
14
15 return propertyValue < relatedValue;
16 }
17
18 defaultMessage(args: ValidationArguments) {
19 const [relatedPropertyName] = args.constraints;
20 return `${args.property}必须早于${relatedPropertyName}`;
21 }
22 }
23
23 lines TYPESCRIPT