File: /var/www/api-parametros/src/shared/dto/items.dto.ts
import {
IsMongoId,
IsNotEmpty,
IsOptional,
IsString,
MaxLength,
} from 'class-validator';
import { ApiProperty } from '@nestjs/swagger';
import validationMessages from '../messages/validationMessages';
import { Types } from 'mongoose';
export class ItemDto {
@ApiProperty({ description: 'ID del parĂ¡metro padre', type: String })
@IsMongoId({
message: (args) => validationMessages.isMongoId(args.property),
})
@IsNotEmpty({
message: (args) => validationMessages.required(args.property),
})
_id: Types.ObjectId;
@ApiProperty({ description: 'Nombre' })
@IsString({
message: (args) => validationMessages.string(args.property),
})
@IsNotEmpty({
message: (args) => validationMessages.required(args.property),
})
@MaxLength(60, {
message: (args) => validationMessages.maxlength(args.property, 60),
})
nombre: string;
@ApiProperty({ description: 'Codigo' })
@IsOptional()
@IsString({
message: (args) => validationMessages.string(args.property),
})
@MaxLength(60, {
message: (args) => validationMessages.maxlength(args.property, 60),
})
codigo: string;
}