import { ApiProperty, ApiPropertyOptional } from "@nestjs/swagger"; import { IsNotEmpty, IsOptional, IsString, IsUUID } from "class-validator"; import { FinancialMessage } from "../../../common/enums/message.enum"; export class CreateLegalUserDto { @ApiProperty({ description: "Economic code" }) @IsOptional() @IsString({ message: FinancialMessage.ECONOMIC_CODE_INVALID }) economicCode?: string; @ApiProperty({ description: "Company registered name" }) @IsOptional() @IsString({ message: FinancialMessage.ECONOMIC_CODE_INVALID }) companyRegisteredName?: string; @ApiProperty({ description: "Registration ID" }) @IsOptional() @IsString({ message: FinancialMessage.REGISTRATION_ID_INVALID }) registrationId?: string; @ApiProperty({ description: "national Id" }) @IsOptional() @IsString({ message: FinancialMessage.NATIONAL_ID_INVALID }) nationalId?: string; @ApiPropertyOptional({ description: "number" }) @IsOptional() @IsString({ message: FinancialMessage.FIXED_PHONE_INVALID }) number?: string; @ApiPropertyOptional({ description: "postalCode" }) @IsOptional() @IsString({ message: FinancialMessage.NATIONAL_ID_INVALID }) postalCode?: string; @ApiPropertyOptional({ description: "address" }) @IsOptional() @IsString({ message: FinancialMessage.NATIONAL_ID_INVALID }) address?: string; @ApiPropertyOptional({ description: "User id", example: "123e4567-e89b-12d3-a456-426614174000" }) @IsOptional() @IsNotEmpty({ message: FinancialMessage.USER_ID_REQUIRED }) @IsUUID("4", { message: FinancialMessage.USER_ID_SHOULD_BE_A_UUID }) userId: string; @ApiPropertyOptional({ description: "City id", example: "1" }) @IsOptional() @IsNotEmpty({ message: FinancialMessage.CITY_ID_REQUIRED }) cityId: string; }