Vincent Alamelle d1222969a4 Customer
2023-05-03 10:02:44 +02:00

36 lines
1.1 KiB
TypeScript

import { IsNotEmpty, IsDate, IsOptional, ValidateNested } from "class-validator";
import Contact from "./Contact";
import Office from "./Office";
import Resource from "../Resource";
import { Type } from "class-transformer";
export default class Address extends Resource {
@IsNotEmpty({ groups: ["update"] ,message: "UID is required" })
public uid?: string;
@IsNotEmpty({ groups: ["create" , "createCustomer"], message: "Address is required" })
public address!: string;
@IsNotEmpty({ groups: ["create" , "createCustomer"], message: "City is required" })
public city!: string;
@IsNotEmpty({ groups: ["create" , "createCustomer"], message: "State is required" })
public zip_code!: number;
@IsDate()
public created_at: Date | null = null;
@IsDate()
public updated_at: Date | null = null;
@IsOptional({ groups: ["create", "update"] })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => Office)
public office?: Office | null = null;
@IsOptional({ groups: ["create", "update"] })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => Contact)
public contact?: Contact | null = null;
}