This commit is contained in:
2025-12-02 20:01:07 +03:30
parent e43727f1c6
commit 40442686be
24 changed files with 420 additions and 490 deletions
@@ -0,0 +1,44 @@
import { IsNumber, IsBoolean, IsOptional, IsString, Min, IsEnum } from 'class-validator';
import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger';
import { Type } from 'class-transformer';
import { DeliveryName } from '../interface/delivery';
export class CreateDeliveryDto {
@ApiProperty({ example: 'dineIn', description: 'Delivery method name', enum: DeliveryName })
@IsEnum(DeliveryName)
name!: DeliveryName;
@ApiProperty({ example: 'سرو در رستوران', description: 'Delivery method title' })
@IsString()
title!: string;
@ApiProperty({ example: 5000, description: 'Delivery fee' })
@IsNumber()
@Min(0)
@Type(() => Number)
deliveryFee!: number;
@ApiProperty({ example: 100000, description: 'Minimum order price for free delivery' })
@IsNumber()
@Min(0)
@Type(() => Number)
minOrderPrice!: number;
@ApiPropertyOptional({ example: 'توضیحات روش ارسال', description: 'Delivery method description' })
@IsOptional()
@IsString()
description?: string;
@ApiPropertyOptional({ example: true, description: 'Is this delivery method enabled?' })
@IsOptional()
@IsBoolean()
@Type(() => Boolean)
enabled?: boolean;
@ApiPropertyOptional({ example: 0, description: 'Display order for sorting delivery methods' })
@IsOptional()
@IsNumber()
@Type(() => Number)
order?: number;
}