50 lines
1.2 KiB
TypeScript
50 lines
1.2 KiB
TypeScript
import { IsNotEmpty, IsDate, IsEnum, IsOptional } from "class-validator";
|
|
import { EFolderStatus } from "./Enums";
|
|
import IDeed from "./IDeed";
|
|
import IDocument from "./IDocument";
|
|
import IOffice from "./IOffice";
|
|
import IOfficeFolderHasCustomer from "./IOfficeFolderHasCustomer";
|
|
import IOfficeFolderHasStakeholder from "./IOfficeFolderHasStakeholder";
|
|
|
|
export default class IOfficeFolder {
|
|
@IsNotEmpty()
|
|
public uuid!: string;
|
|
|
|
@IsNotEmpty({ groups: ["create"] })
|
|
public folder_number!: string;
|
|
|
|
@IsNotEmpty({ groups: ["create"] })
|
|
public name!: string;
|
|
|
|
@IsOptional()
|
|
public description?: string;
|
|
|
|
@IsOptional()
|
|
public archived_description?: string;
|
|
|
|
@IsNotEmpty({ groups: ["create"] })
|
|
@IsEnum(EFolderStatus)
|
|
public status!: EFolderStatus;
|
|
|
|
@IsNotEmpty({ groups: ["create"] })
|
|
public deed!: IDeed;
|
|
|
|
@IsNotEmpty({ groups: ["create"] })
|
|
public office!: IOffice;
|
|
|
|
@IsDate()
|
|
public created_at?: Date;
|
|
|
|
@IsDate()
|
|
public updated_at?: Date;
|
|
|
|
@IsOptional()
|
|
office_folder_has_customers?: IOfficeFolderHasCustomer[];
|
|
|
|
@IsOptional()
|
|
office_folder_has_stakeholder?: IOfficeFolderHasStakeholder[];
|
|
|
|
@IsOptional()
|
|
documents?: IDocument[];
|
|
}
|