Untitled
unknown
plain_text
a year ago
1.2 kB
10
Indexable
@UseBefore(ValidationMiddleware(CreateHomeFormSchema))
public createHomeInfo(
@Body() body: HomeInsuranceFormBody
): any {
// some processing
}
export const CreateHomeFormSchema = Joi.object().keys({
coverageDetails: Joi.object().required().error(errors => mapErrorMessages(errors, 'Coverage details is required.')),
}).unknown(true);
export class HomeInsuranceFormBody {
@ValidateNested({ each: true })
@Type((): any => CoverageDetails)
public coverageDetails: CoverageDetails;
}
export class CoverageDetails {
@IsNumber()
public ownershipCode: number;
@IsOptional()
@IsString()
public ownership: string;
@IsNumber()
public nationalityCode: number;
@IsOptional()
@IsString()
public coverageDescription: string;
@ValidateNested({ each: true })
public mandatoryCovers: MandatoryCover[];
}
export class MandatoryCover {
@IsString()
public coverCode: CoverCode;
@IsBoolean()
public coverIncluded: boolean;
@IsNumber()
public coverageLimit: number;
@IsString()
public coverageRange: string;
}
Editor is loading...
Leave a Comment