Refacto enums

This commit is contained in:
Hugo Lextrait 2023-03-29 10:21:25 +02:00
parent dba1b1338c
commit a1aa435714
17 changed files with 27 additions and 23 deletions

View File

@ -8,7 +8,7 @@ export default class Contact extends Resource {
email: string;
cell_phone_number: string;
phone_number: string;
civility: "MALE" | "FEMALE" | "OTHERS";
civility: ECivility | string;
address: Address;
created_at: Date | null;
updated_at: Date | null;

View File

@ -2,7 +2,7 @@ import { Contact, Document } from ".";
import OfficeFolderHasCustomer from "./OfficeFolderHasCustomer";
import Resource from "../Resource";
export default class Customer extends Resource {
status: "VALIDATED" | "PENDING" | "ERRONED";
status: ECustomerStatus | string;
contact: Contact;
created_at: Date | null;
updated_at: Date | null;

View File

@ -5,7 +5,7 @@ import File from "./File";
import OfficeFolder from "./OfficeFolder";
import Resource from "../Resource";
export default class Document extends Resource {
document_status: "ASKED" | "DEPOSITED" | "VALIDATED" | "ANCHORED" | "REFUSED";
document_status: EDocumentStatus | string;
document_type: DocumentType;
folder: OfficeFolder;
depositor: Customer;

View File

@ -1,7 +1,7 @@
import { default as Document } from "./Document";
import { default as Document, EDocumentStatus } from "./Document";
import Resource from "../Resource";
export default class DocumentHistory extends Resource {
document_status: "ASKED" | "DEPOSITED" | "VALIDATED" | "ANCHORED" | "REFUSED";
document_status: EDocumentStatus | string;
document: Document;
refused_reason: string | null;
created_at: Date | null;

View File

@ -8,7 +8,7 @@ export default class Office extends Resource {
name: string;
crpcen: string;
address: Address;
office_status: "ACTIVATED" | "DESACTIVATED";
office_status: EOfficeStatus | string;
created_at: Date | null;
updated_at: Date | null;
deed_types?: DeedType[];

View File

@ -9,7 +9,7 @@ export default class OfficeFolder extends Resource {
name: string;
description: string | null;
archived_description: string | null;
status: "LIVE" | "ARCHIVED";
status: EFolderStatus | string;
deed: Deed;
office: Office;
created_at: Date | null;

View File

@ -1,5 +1,5 @@
import User from "./Customer";
export default User;
import Customer from "./Customer";
export default Customer;
export { default as Address } from "./Address";
export { default as Contact } from "./Contact";
export { default as Deed } from "./Deed";

1
dist/Resource.d.ts vendored
View File

@ -4,4 +4,5 @@ export default class Resource {
uid: string;
static hydrate<T extends Resource>(from: Partial<T>, options?: ClassTransformOptions): T;
static validateOrReject(validatorOptions?: ValidatorOptions): Promise<void>;
validateOrReject(validatorOptions?: ValidatorOptions): Promise<void>;
}

3
dist/Resource.js vendored
View File

@ -42,6 +42,9 @@ class Resource {
static validateOrReject(validatorOptions) {
return class_validator_1.default.validateOrReject(this, validatorOptions);
}
validateOrReject(validatorOptions) {
return class_validator_1.default.validateOrReject(this, validatorOptions);
}
}
__decorate([
(0, class_validator_1.IsNotEmpty)({ message: "UID is required" }),

View File

@ -24,7 +24,7 @@ export default class Contact extends Resource {
public phone_number!: string;
@IsNotEmpty({ groups: ["create"], message: "Civility is required" })
public civility!: "MALE" | "FEMALE" | "OTHERS";
public civility!: ECivility | string;
@IsNotEmpty({ groups: ["create"], message: "Address is required" })
@ValidateNested({ groups: ["create", "update"] })

View File

@ -11,7 +11,7 @@ import { Type } from "class-transformer";
export default class Customer extends Resource {
@IsNotEmpty({ groups: ["create"], message: "Status is required" })
public status!: "VALIDATED" | "PENDING" | "ERRONED";
public status!: ECustomerStatus | string;
@IsNotEmpty({ groups: ["create"], message: "Contact is required" })
@ValidateNested({ groups: ["create", "update"] })

View File

@ -14,12 +14,7 @@ import { Type } from "class-transformer";
export default class Document extends Resource {
@IsNotEmpty({ groups: ["create"], message: "Document status is required" })
public document_status!:
| "ASKED"
| "DEPOSITED"
| "VALIDATED"
| "ANCHORED"
| "REFUSED";
public document_status!: EDocumentStatus | string;
@IsNotEmpty({ groups: ["create"], message: "Document type is required" })
@ValidateNested({ groups: ["create", "update"] })

View File

@ -1,11 +1,11 @@
import { IsNotEmpty, IsDate, ValidateNested } from "class-validator";
import { default as Document } from "./Document";
import { default as Document, EDocumentStatus } from "./Document";
import Resource from "../Resource";
import { Type } from "class-transformer";
export default class DocumentHistory extends Resource {
@IsNotEmpty({ groups: ["create"], message: "Document status is required" })
public document_status!: "ASKED" | "DEPOSITED" | "VALIDATED" | "ANCHORED" | "REFUSED";
public document_status!: EDocumentStatus | string;
@IsNotEmpty({ groups: ["create"], message: "Document is required" })
@ValidateNested({ groups: ["create", "update"] })

View File

@ -27,7 +27,7 @@ export default class Office extends Resource {
public address!: Address;
@IsNotEmpty({ groups: ["create"], message: "Office status is required" })
public office_status!: "ACTIVATED" | "DESACTIVATED";
public office_status!: EOfficeStatus | string;
@IsDate()
public created_at: Date | null = null;
@ -55,3 +55,4 @@ export enum EOfficeStatus {
ACTIVATED = "ACTIVATED",
DESACTIVATED = "DESACTIVATED",
}

View File

@ -24,7 +24,7 @@ export default class OfficeFolder extends Resource {
public archived_description: string | null = null;
@IsNotEmpty({ groups: ["create"], message: "Status is required" })
public status!: "LIVE" | "ARCHIVED";
public status!: EFolderStatus | string;
@IsNotEmpty({ groups: ["create"], message: "Deed is required" })
@ValidateNested({ groups: ["create", "update"] })

View File

@ -1,6 +1,6 @@
import User from "./Customer";
import Customer from "./Customer";
export default User;
export default Customer;
export { default as Address } from "./Address";
export { default as Contact } from "./Contact";
export { default as Deed } from "./Deed";

View File

@ -13,4 +13,8 @@ export default class Resource {
public static validateOrReject(validatorOptions?: ValidatorOptions){
return validator.validateOrReject(this, validatorOptions);
}
public validateOrReject(validatorOptions?: ValidatorOptions){
return validator.validateOrReject(this, validatorOptions);
}
}