import { ApiProperty } from '@nestjs/swagger';
import { IsEmail, IsNotEmpty, IsOptional, IsString } from 'class-validator';

export class CreateInquiryDto {
  @IsString()
  @IsNotEmpty({ message: `Inquiry can't be empty.` })
  @ApiProperty({
    required: true,
    type: String,
    description: 'Inquiry',
  })
  inquiry: string;

  @IsString()
  @IsNotEmpty({ message: `Equipments can't be empty.` })
  @ApiProperty({
    required: true,
    type: String,
    description: 'Equipments',
  })
  equipments: string;

  @IsString()
  @IsNotEmpty({ message: `Name can't be empty.` })
  @ApiProperty({
    required: true,
    type: String,
    description: 'Name',
  })
  name: string;

  @IsOptional()
  @IsEmail()
  @ApiProperty({
    required: false,
    type: String,
    description: 'Email',
  })
  email: string;

  @IsString()
  @IsNotEmpty({ message: `Commodity can't be empty.` })
  @ApiProperty({
    required: true,
    type: String,
    description: 'Commodity',
  })
  commodity: string;

  @IsString()
  @IsNotEmpty({ message: `Mobile number can't be empty.` })
  @ApiProperty({
    required: true,
    type: String,
    description: 'Phone Number',
  })
  phone_number: string;

  @IsString()
  @IsNotEmpty()
  @ApiProperty({
    required: true,
    type: String,
    description: 'Country Code',
  })
  country_phone_code: string;

  @IsString()
  @IsNotEmpty({ message: `Pickup place can't be empty.` })
  @ApiProperty({
    required: true,
    type: String,
    description: 'PickUp Place',
  })
  pickup: string;

  @IsString()
  @IsNotEmpty({ message: `Delivery place can't be empty.` })
  @ApiProperty({
    required: true,
    type: String,
    description: 'Delivery',
  })
  delivery: string;

  @IsString()
  @IsNotEmpty({ message: `Request can't be empty.` })
  @ApiProperty({
    required: true,
    type: String,
    description: 'Request',
  })
  request: string;
}
