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