fartak/src/discount/dto/discount.dto.ts

53 lines
2.1 KiB
TypeScript

import { IsNotEmpty,IsDateString, IsNumberString, IsString,ArrayMinSize, Matches,Length,ArrayNotEmpty, IsOptional,IsArray,ValidateNested,Validate, IsDate} from 'class-validator';
import { Type } from 'class-transformer';
export class CreateDiscountDto {
@IsNotEmpty({ message: 'شناسه فروشگاه نباید خالی باشد' })
@IsString({ message: 'شناسه فروشگاه باید شامل متن باشد' })
Shop: string;
@IsNotEmpty({ message: 'نوع تخفیف نباید خالی باشد' })
@IsString({ message: 'نوع تخفیف باید شامل متن باشد' })
Type: string;
@IsNotEmpty({ message: 'شناسه محصول نباید خالی باشد' })
@IsString({ message: 'شناسه محصول باید شامل متن باشد' })
Product: string;
@IsNotEmpty({ message: 'توضیحات تخفیف نباید خالی باشد' })
@IsString({ message: 'توضیحات تخفیف باید شامل متن باشد' })
@Length(0, 250, { message: 'طول توضیحات تخفیف حداکثر 250 حرف می تواند باشد' })
Description: string;
@IsNotEmpty({ message: 'تاریخ شروع نباید خالی باشد' })
@IsDateString({},{ message: 'تاریخ شروع باید به فرمت تاریخ باشد' })
Start: string;
@IsNotEmpty({ message: 'تاریخ پایان نباید خالی باشد' })
@IsDateString({},{ message: 'تاریخ پایان باید به فرمت تاریخ باشد' })
End: string;
@IsNotEmpty({ message: 'ساعت شروع نباید خالی باشد' })
@Matches(/^([01]\d|2[0-3]):([0-5]\d)$/, {
message: 'فرمت تایم شروع صحیح نیست',
})
StartTime: string;
@IsNotEmpty({ message: 'ساعت پایان نباید خالی باشد' })
@Matches(/^([01]\d|2[0-3]):([0-5]\d)$/, {
message: 'فرمت تایم پایان صحیح نیست',
})
EndTime: string;
@IsNotEmpty({ message: 'شعاع ارسال اعلان نباید خالی باشد' })
@IsNumberString({},{ message: 'شعاع ارسال اعلان باید شامل عدد باشد' })
Radius: number;
}