correction of all enums, @type and validated nested object

This commit is contained in:
Hugo Lextrait 2023-03-28 12:11:00 +02:00
parent 97284fc834
commit dba1b1338c
53 changed files with 574 additions and 179 deletions

View File

@ -1,5 +1,5 @@
import type Contact from "./Contact";
import type Office from "./Office";
import Contact from "./Contact";
import Office from "./Office";
import Resource from "../Resource";
export default class Address extends Resource {
address: string;

View File

@ -13,7 +13,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
};
Object.defineProperty(exports, "__esModule", { value: true });
const class_validator_1 = require("class-validator");
const Contact_1 = __importDefault(require("./Contact"));
const Office_1 = __importDefault(require("./Office"));
const Resource_1 = __importDefault(require("../Resource"));
const class_transformer_1 = require("class-transformer");
class Address extends Resource_1.default {
constructor() {
super(...arguments);
@ -43,4 +46,16 @@ __decorate([
(0, class_validator_1.IsDate)(),
__metadata("design:type", Object)
], Address.prototype, "updated_at", void 0);
__decorate([
(0, class_validator_1.IsOptional)({ groups: ["create", "update"] }),
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => Office_1.default),
__metadata("design:type", Object)
], Address.prototype, "office", void 0);
__decorate([
(0, class_validator_1.IsOptional)({ groups: ["create", "update"] }),
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => Contact_1.default),
__metadata("design:type", Object)
], Address.prototype, "contact", void 0);
exports.default = Address;

View File

@ -1,6 +1,6 @@
import type Address from "./Address";
import type Customer from ".";
import type User from "../Notary";
import Address from "./Address";
import Customer from ".";
import User from "../Notary";
import Resource from "../Resource";
export default class Contact extends Resource {
first_name: string;
@ -8,7 +8,7 @@ export default class Contact extends Resource {
email: string;
cell_phone_number: string;
phone_number: string;
civility: ECivility;
civility: "MALE" | "FEMALE" | "OTHERS";
address: Address;
created_at: Date | null;
updated_at: Date | null;
@ -20,4 +20,3 @@ export declare enum ECivility {
FEMALE = "FEMALE",
OTHERS = "OTHERS"
}
export declare type TCivility = ECivility.MALE | ECivility.FEMALE | ECivility.OTHERS;

View File

@ -14,7 +14,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
Object.defineProperty(exports, "__esModule", { value: true });
exports.ECivility = void 0;
const class_validator_1 = require("class-validator");
const Address_1 = __importDefault(require("./Address"));
const _1 = __importDefault(require("."));
const Notary_1 = __importDefault(require("../Notary"));
const Resource_1 = __importDefault(require("../Resource"));
const class_transformer_1 = require("class-transformer");
class Contact extends Resource_1.default {
constructor() {
super(...arguments);
@ -49,7 +53,9 @@ __decorate([
], Contact.prototype, "civility", void 0);
__decorate([
(0, class_validator_1.IsNotEmpty)({ groups: ["create"], message: "Address is required" }),
__metadata("design:type", Function)
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => Address_1.default),
__metadata("design:type", Address_1.default)
], Contact.prototype, "address", void 0);
__decorate([
(0, class_validator_1.IsDate)(),
@ -59,6 +65,18 @@ __decorate([
(0, class_validator_1.IsDate)(),
__metadata("design:type", Object)
], Contact.prototype, "updated_at", void 0);
__decorate([
(0, class_validator_1.IsOptional)({ groups: ["create", "update"] }),
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => Notary_1.default),
__metadata("design:type", Object)
], Contact.prototype, "user", void 0);
__decorate([
(0, class_validator_1.IsOptional)({ groups: ["create", "update"] }),
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => _1.default),
__metadata("design:type", Object)
], Contact.prototype, "customer", void 0);
exports.default = Contact;
var ECivility;
(function (ECivility) {

View File

@ -1,11 +1,6 @@
import { Contact, Document } from ".";
import OfficeFolderHasCustomer from "./OfficeFolderHasCustomer";
import Resource from "../Resource";
export declare enum ECustomerStatus {
VALIDATED = "VALIDATED",
PENDING = "PENDING",
ERRONED = "ERRONED"
}
export default class Customer extends Resource {
status: "VALIDATED" | "PENDING" | "ERRONED";
contact: Contact;
@ -14,4 +9,8 @@ export default class Customer extends Resource {
office_folder_has_customers?: OfficeFolderHasCustomer[];
documents?: Document[];
}
export declare type TCustomerStatus = ECustomerStatus.VALIDATED | ECustomerStatus.PENDING | ECustomerStatus.ERRONED;
export declare enum ECustomerStatus {
VALIDATED = "VALIDATED",
PENDING = "PENDING",
ERRONED = "ERRONED"
}

View File

@ -15,13 +15,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
exports.ECustomerStatus = void 0;
const class_validator_1 = require("class-validator");
const _1 = require(".");
const OfficeFolderHasCustomer_1 = __importDefault(require("./OfficeFolderHasCustomer"));
const Resource_1 = __importDefault(require("../Resource"));
var ECustomerStatus;
(function (ECustomerStatus) {
ECustomerStatus["VALIDATED"] = "VALIDATED";
ECustomerStatus["PENDING"] = "PENDING";
ECustomerStatus["ERRONED"] = "ERRONED";
})(ECustomerStatus = exports.ECustomerStatus || (exports.ECustomerStatus = {}));
const class_transformer_1 = require("class-transformer");
class Customer extends Resource_1.default {
constructor() {
super(...arguments);
@ -35,6 +31,8 @@ __decorate([
], Customer.prototype, "status", void 0);
__decorate([
(0, class_validator_1.IsNotEmpty)({ groups: ["create"], message: "Contact is required" }),
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => _1.Contact),
__metadata("design:type", _1.Contact)
], Customer.prototype, "contact", void 0);
__decorate([
@ -45,4 +43,22 @@ __decorate([
(0, class_validator_1.IsDate)(),
__metadata("design:type", Object)
], Customer.prototype, "updated_at", void 0);
__decorate([
(0, class_validator_1.IsOptional)({ groups: ["create", "update"] }),
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => OfficeFolderHasCustomer_1.default),
__metadata("design:type", Array)
], Customer.prototype, "office_folder_has_customers", void 0);
__decorate([
(0, class_validator_1.IsOptional)({ groups: ["create", "update"] }),
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => _1.Document),
__metadata("design:type", Array)
], Customer.prototype, "documents", void 0);
exports.default = Customer;
var ECustomerStatus;
(function (ECustomerStatus) {
ECustomerStatus["VALIDATED"] = "VALIDATED";
ECustomerStatus["PENDING"] = "PENDING";
ECustomerStatus["ERRONED"] = "ERRONED";
})(ECustomerStatus = exports.ECustomerStatus || (exports.ECustomerStatus = {}));

View File

@ -1,6 +1,6 @@
import type DeedType from "./DeedType";
import type DeedHasDocumentType from "./DeedHasDocumentType";
import type OfficeFolder from "./OfficeFolder";
import DeedType from "./DeedType";
import DeedHasDocumentType from "./DeedHasDocumentType";
import OfficeFolder from "./OfficeFolder";
import Resource from "../Resource";
export default class Deed extends Resource {
deed_type: DeedType;

20
dist/Customer/Deed.js vendored
View File

@ -13,7 +13,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
};
Object.defineProperty(exports, "__esModule", { value: true });
const class_validator_1 = require("class-validator");
const DeedType_1 = __importDefault(require("./DeedType"));
const DeedHasDocumentType_1 = __importDefault(require("./DeedHasDocumentType"));
const OfficeFolder_1 = __importDefault(require("./OfficeFolder"));
const Resource_1 = __importDefault(require("../Resource"));
const class_transformer_1 = require("class-transformer");
class Deed extends Resource_1.default {
constructor() {
super(...arguments);
@ -23,7 +27,9 @@ class Deed extends Resource_1.default {
}
__decorate([
(0, class_validator_1.IsNotEmpty)({ groups: ["create"], message: "Deed type is required" }),
__metadata("design:type", Function)
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => DeedType_1.default),
__metadata("design:type", DeedType_1.default)
], Deed.prototype, "deed_type", void 0);
__decorate([
(0, class_validator_1.IsDate)(),
@ -33,4 +39,16 @@ __decorate([
(0, class_validator_1.IsDate)(),
__metadata("design:type", Object)
], Deed.prototype, "updated_at", void 0);
__decorate([
(0, class_validator_1.IsOptional)({ groups: ["create", "update"] }),
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => DeedHasDocumentType_1.default),
__metadata("design:type", Array)
], Deed.prototype, "deed_has_document_types", void 0);
__decorate([
(0, class_validator_1.IsOptional)({ groups: ["create", "update"] }),
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => OfficeFolder_1.default),
__metadata("design:type", OfficeFolder_1.default)
], Deed.prototype, "office_folder", void 0);
exports.default = Deed;

View File

@ -1,5 +1,5 @@
import type Deed from "./Deed";
import type DocumentType from "./DocumentType";
import Deed from "./Deed";
import DocumentType from "./DocumentType";
import Resource from "../Resource";
export default class DeedHasDocumentType extends Resource {
document_type: DocumentType;

View File

@ -13,7 +13,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
};
Object.defineProperty(exports, "__esModule", { value: true });
const class_validator_1 = require("class-validator");
const Deed_1 = __importDefault(require("./Deed"));
const DocumentType_1 = __importDefault(require("./DocumentType"));
const Resource_1 = __importDefault(require("../Resource"));
const class_transformer_1 = require("class-transformer");
class DeedHasDocumentType extends Resource_1.default {
constructor() {
super(...arguments);
@ -23,11 +26,15 @@ class DeedHasDocumentType extends Resource_1.default {
}
__decorate([
(0, class_validator_1.IsNotEmpty)({ groups: ["create"], message: "Document type is required" }),
__metadata("design:type", Function)
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => DocumentType_1.default),
__metadata("design:type", DocumentType_1.default)
], DeedHasDocumentType.prototype, "document_type", void 0);
__decorate([
(0, class_validator_1.IsNotEmpty)({ groups: ["create"], message: "Deed is required" }),
__metadata("design:type", Function)
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => Deed_1.default),
__metadata("design:type", Deed_1.default)
], DeedHasDocumentType.prototype, "deed", void 0);
__decorate([
(0, class_validator_1.IsDate)(),

View File

@ -1,6 +1,6 @@
import type Deed from "./Deed";
import type DeedTypeHasDocumentType from "./DeedTypeHasDocumentType";
import type Office from "./Office";
import Deed from "./Deed";
import DeedTypeHasDocumentType from "./DeedTypeHasDocumentType";
import Office from "./Office";
import Resource from "../Resource";
export default class DeedType extends Resource {
name: string;

View File

@ -13,7 +13,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
};
Object.defineProperty(exports, "__esModule", { value: true });
const class_validator_1 = require("class-validator");
const Deed_1 = __importDefault(require("./Deed"));
const DeedTypeHasDocumentType_1 = __importDefault(require("./DeedTypeHasDocumentType"));
const Office_1 = __importDefault(require("./Office"));
const Resource_1 = __importDefault(require("../Resource"));
const class_transformer_1 = require("class-transformer");
class DeedType extends Resource_1.default {
constructor() {
super(...arguments);
@ -36,7 +40,9 @@ __decorate([
], DeedType.prototype, "archived_at", void 0);
__decorate([
(0, class_validator_1.IsNotEmpty)({ groups: ["create"], message: "Office is required" }),
__metadata("design:type", Function)
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => Office_1.default),
__metadata("design:type", Office_1.default)
], DeedType.prototype, "office", void 0);
__decorate([
(0, class_validator_1.IsDate)(),
@ -46,4 +52,16 @@ __decorate([
(0, class_validator_1.IsDate)(),
__metadata("design:type", Object)
], DeedType.prototype, "updated_at", void 0);
__decorate([
(0, class_validator_1.IsOptional)({ groups: ["create", "update"] }),
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => Deed_1.default),
__metadata("design:type", Array)
], DeedType.prototype, "deed", void 0);
__decorate([
(0, class_validator_1.IsOptional)({ groups: ["create", "update"] }),
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => DeedTypeHasDocumentType_1.default),
__metadata("design:type", Array)
], DeedType.prototype, "deed_type_has_document_types", void 0);
exports.default = DeedType;

View File

@ -1,5 +1,5 @@
import type DeedType from "./DeedType";
import type DocumentType from "./DocumentType";
import DeedType from "./DeedType";
import DocumentType from "./DocumentType";
import Resource from "../Resource";
export default class DeedTypeHasDocumentType extends Resource {
document_type: DocumentType;

View File

@ -13,7 +13,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
};
Object.defineProperty(exports, "__esModule", { value: true });
const class_validator_1 = require("class-validator");
const DeedType_1 = __importDefault(require("./DeedType"));
const DocumentType_1 = __importDefault(require("./DocumentType"));
const Resource_1 = __importDefault(require("../Resource"));
const class_transformer_1 = require("class-transformer");
class DeedTypeHasDocumentType extends Resource_1.default {
constructor() {
super(...arguments);
@ -23,11 +26,15 @@ class DeedTypeHasDocumentType extends Resource_1.default {
}
__decorate([
(0, class_validator_1.IsNotEmpty)({ groups: ["create"], message: "Document type is required" }),
__metadata("design:type", Function)
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => DocumentType_1.default),
__metadata("design:type", DocumentType_1.default)
], DeedTypeHasDocumentType.prototype, "document_type", void 0);
__decorate([
(0, class_validator_1.IsNotEmpty)({ groups: ["create"], message: "Deed type is required" }),
__metadata("design:type", Function)
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => DeedType_1.default),
__metadata("design:type", DeedType_1.default)
], DeedTypeHasDocumentType.prototype, "deed_type", void 0);
__decorate([
(0, class_validator_1.IsDate)(),

View File

@ -1,11 +1,11 @@
import type Customer from ".";
import type DocumentHistory from "./DocumentHistory";
import type DocumentType from "./DocumentType";
import type File from "./File";
import type OfficeFolder from "./OfficeFolder";
import Customer from ".";
import DocumentHistory from "./DocumentHistory";
import DocumentType from "./DocumentType";
import File from "./File";
import OfficeFolder from "./OfficeFolder";
import Resource from "../Resource";
export default class Document extends Resource {
document_status: EDocumentStatus;
document_status: "ASKED" | "DEPOSITED" | "VALIDATED" | "ANCHORED" | "REFUSED";
document_type: DocumentType;
folder: OfficeFolder;
depositor: Customer;
@ -21,4 +21,3 @@ export declare enum EDocumentStatus {
ANCHORED = "ANCHORED",
REFUSED = "REFUSED"
}
export declare type TDocumentStatus = EDocumentStatus.ASKED | EDocumentStatus.DEPOSITED | EDocumentStatus.VALIDATED | EDocumentStatus.ANCHORED | EDocumentStatus.REFUSED;

View File

@ -14,7 +14,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
Object.defineProperty(exports, "__esModule", { value: true });
exports.EDocumentStatus = void 0;
const class_validator_1 = require("class-validator");
const _1 = __importDefault(require("."));
const DocumentHistory_1 = __importDefault(require("./DocumentHistory"));
const DocumentType_1 = __importDefault(require("./DocumentType"));
const File_1 = __importDefault(require("./File"));
const OfficeFolder_1 = __importDefault(require("./OfficeFolder"));
const Resource_1 = __importDefault(require("../Resource"));
const class_transformer_1 = require("class-transformer");
class Document extends Resource_1.default {
constructor() {
super(...arguments);
@ -28,15 +34,21 @@ __decorate([
], Document.prototype, "document_status", void 0);
__decorate([
(0, class_validator_1.IsNotEmpty)({ groups: ["create"], message: "Document type is required" }),
__metadata("design:type", Function)
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => DocumentType_1.default),
__metadata("design:type", DocumentType_1.default)
], Document.prototype, "document_type", void 0);
__decorate([
(0, class_validator_1.IsNotEmpty)({ groups: ["create"], message: "Folder is required" }),
__metadata("design:type", Function)
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => OfficeFolder_1.default),
__metadata("design:type", OfficeFolder_1.default)
], Document.prototype, "folder", void 0);
__decorate([
(0, class_validator_1.IsNotEmpty)({ groups: ["create"], message: "Depositor is required" }),
__metadata("design:type", Function)
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => _1.default),
__metadata("design:type", _1.default)
], Document.prototype, "depositor", void 0);
__decorate([
(0, class_validator_1.IsDate)(),
@ -46,6 +58,18 @@ __decorate([
(0, class_validator_1.IsDate)(),
__metadata("design:type", Object)
], Document.prototype, "updated_at", void 0);
__decorate([
(0, class_validator_1.IsOptional)({ groups: ["create", "update"] }),
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => File_1.default),
__metadata("design:type", Array)
], Document.prototype, "files", void 0);
__decorate([
(0, class_validator_1.IsOptional)({ groups: ["create", "update"] }),
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => DocumentHistory_1.default),
__metadata("design:type", Array)
], Document.prototype, "document_history", void 0);
exports.default = Document;
var EDocumentStatus;
(function (EDocumentStatus) {

View File

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

View File

@ -13,7 +13,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
};
Object.defineProperty(exports, "__esModule", { value: true });
const class_validator_1 = require("class-validator");
const Document_1 = __importDefault(require("./Document"));
const Resource_1 = __importDefault(require("../Resource"));
const class_transformer_1 = require("class-transformer");
class DocumentHistory extends Resource_1.default {
constructor() {
super(...arguments);
@ -28,7 +30,9 @@ __decorate([
], DocumentHistory.prototype, "document_status", void 0);
__decorate([
(0, class_validator_1.IsNotEmpty)({ groups: ["create"], message: "Document is required" }),
__metadata("design:type", Function)
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => Document_1.default),
__metadata("design:type", Document_1.default)
], DocumentHistory.prototype, "document", void 0);
__decorate([
(0, class_validator_1.IsDate)(),

View File

@ -1,6 +1,6 @@
import type DeedHasDocumentType from "./DeedHasDocumentType";
import type Document from "./Document";
import type DeedTypeHasDocumentType from "./DeedTypeHasDocumentType";
import DeedHasDocumentType from "./DeedHasDocumentType";
import Document from "./Document";
import DeedTypeHasDocumentType from "./DeedTypeHasDocumentType";
import Resource from "../Resource";
export default class DocumentType extends Resource {
name: string;

View File

@ -13,7 +13,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
};
Object.defineProperty(exports, "__esModule", { value: true });
const class_validator_1 = require("class-validator");
const DeedHasDocumentType_1 = __importDefault(require("./DeedHasDocumentType"));
const Document_1 = __importDefault(require("./Document"));
const DeedTypeHasDocumentType_1 = __importDefault(require("./DeedTypeHasDocumentType"));
const Resource_1 = __importDefault(require("../Resource"));
const class_transformer_1 = require("class-transformer");
class DocumentType extends Resource_1.default {
constructor() {
super(...arguments);
@ -31,6 +35,10 @@ __decorate([
(0, class_validator_1.IsNotEmpty)({ groups: ["create"], message: "Public description is required" }),
__metadata("design:type", String)
], DocumentType.prototype, "public_description", void 0);
__decorate([
(0, class_validator_1.IsOptional)({ groups: ["create", "update"] }),
__metadata("design:type", Object)
], DocumentType.prototype, "private_description", void 0);
__decorate([
(0, class_validator_1.IsDate)(),
__metadata("design:type", Object)
@ -43,4 +51,22 @@ __decorate([
(0, class_validator_1.IsDate)(),
__metadata("design:type", Object)
], DocumentType.prototype, "updated_at", void 0);
__decorate([
(0, class_validator_1.IsOptional)({ groups: ["create", "update"] }),
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => Document_1.default),
__metadata("design:type", Array)
], DocumentType.prototype, "documents", void 0);
__decorate([
(0, class_validator_1.IsOptional)({ groups: ["create", "update"] }),
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => DeedHasDocumentType_1.default),
__metadata("design:type", Array)
], DocumentType.prototype, "deed_has_document_types", void 0);
__decorate([
(0, class_validator_1.IsOptional)({ groups: ["create", "update"] }),
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => DeedTypeHasDocumentType_1.default),
__metadata("design:type", Array)
], DocumentType.prototype, "deed_type_has_document_types", void 0);
exports.default = DocumentType;

View File

@ -1,4 +1,4 @@
import type Document from "./Document";
import Document from "./Document";
import Resource from "../Resource";
export default class File extends Resource {
document: Document;

View File

@ -13,7 +13,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
};
Object.defineProperty(exports, "__esModule", { value: true });
const class_validator_1 = require("class-validator");
const Document_1 = __importDefault(require("./Document"));
const Resource_1 = __importDefault(require("../Resource"));
const class_transformer_1 = require("class-transformer");
class File extends Resource_1.default {
constructor() {
super(...arguments);
@ -24,7 +26,9 @@ class File extends Resource_1.default {
}
__decorate([
(0, class_validator_1.IsNotEmpty)({ groups: ["create"], message: "Document is required" }),
__metadata("design:type", Function)
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => Document_1.default),
__metadata("design:type", Document_1.default)
], File.prototype, "document", void 0);
__decorate([
(0, class_validator_1.IsDate)(),

View File

@ -1,4 +1,4 @@
import type UserHasNotification from "./UserHasNotification";
import UserHasNotification from "./UserHasNotification";
import Resource from "../Resource";
export default class Notification extends Resource {
message: string;

View File

@ -13,7 +13,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
};
Object.defineProperty(exports, "__esModule", { value: true });
const class_validator_1 = require("class-validator");
const UserHasNotification_1 = __importDefault(require("./UserHasNotification"));
const Resource_1 = __importDefault(require("../Resource"));
const class_transformer_1 = require("class-transformer");
class Notification extends Resource_1.default {
constructor() {
super(...arguments);
@ -38,4 +40,10 @@ __decorate([
(0, class_validator_1.IsDate)(),
__metadata("design:type", Object)
], Notification.prototype, "updated_at", void 0);
__decorate([
(0, class_validator_1.IsOptional)({ groups: ["create", "update"] }),
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => UserHasNotification_1.default),
__metadata("design:type", Array)
], Notification.prototype, "user_has_notifications", void 0);
exports.default = Notification;

View File

@ -1,14 +1,14 @@
import type Address from "./Address";
import type DeedType from "./DeedType";
import type OfficeFolder from "./OfficeFolder";
import type User from "../Notary/User";
import Address from "./Address";
import DeedType from "./DeedType";
import OfficeFolder from "./OfficeFolder";
import User from "../Notary/User";
import Resource from "../Resource";
export default class Office extends Resource {
idNot: string;
name: string;
crpcen: string;
address: Address;
office_status: EOfficeStatus;
office_status: "ACTIVATED" | "DESACTIVATED";
created_at: Date | null;
updated_at: Date | null;
deed_types?: DeedType[];
@ -19,4 +19,3 @@ export declare enum EOfficeStatus {
ACTIVATED = "ACTIVATED",
DESACTIVATED = "DESACTIVATED"
}
export declare type TOfficeStatus = EOfficeStatus.ACTIVATED | EOfficeStatus.DESACTIVATED;

View File

@ -14,7 +14,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
Object.defineProperty(exports, "__esModule", { value: true });
exports.EOfficeStatus = void 0;
const class_validator_1 = require("class-validator");
const Address_1 = __importDefault(require("./Address"));
const DeedType_1 = __importDefault(require("./DeedType"));
const OfficeFolder_1 = __importDefault(require("./OfficeFolder"));
const User_1 = __importDefault(require("../Notary/User"));
const Resource_1 = __importDefault(require("../Resource"));
const class_transformer_1 = require("class-transformer");
class Office extends Resource_1.default {
constructor() {
super(...arguments);
@ -36,7 +41,9 @@ __decorate([
], Office.prototype, "crpcen", void 0);
__decorate([
(0, class_validator_1.IsNotEmpty)({ groups: ["create"], message: "Address is required" }),
__metadata("design:type", Function)
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => Address_1.default),
__metadata("design:type", Address_1.default)
], Office.prototype, "address", void 0);
__decorate([
(0, class_validator_1.IsNotEmpty)({ groups: ["create"], message: "Office status is required" }),
@ -50,6 +57,24 @@ __decorate([
(0, class_validator_1.IsDate)(),
__metadata("design:type", Object)
], Office.prototype, "updated_at", void 0);
__decorate([
(0, class_validator_1.IsOptional)({ groups: ["create", "update"] }),
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => DeedType_1.default),
__metadata("design:type", Array)
], Office.prototype, "deed_types", void 0);
__decorate([
(0, class_validator_1.IsOptional)({ groups: ["create", "update"] }),
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => User_1.default),
__metadata("design:type", Array)
], Office.prototype, "users", void 0);
__decorate([
(0, class_validator_1.IsOptional)({ groups: ["create", "update"] }),
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => OfficeFolder_1.default),
__metadata("design:type", Array)
], Office.prototype, "office_folders", void 0);
exports.default = Office;
var EOfficeStatus;
(function (EOfficeStatus) {

View File

@ -1,15 +1,15 @@
import type Deed from "./Deed";
import type Document from "./Document";
import type Office from "./Office";
import type OfficeFolderHasCustomer from "./OfficeFolderHasCustomer";
import type OfficeFolderHasStakeholder from "./OfficeFolderHasStakeholder";
import Deed from "./Deed";
import Document from "./Document";
import Office from "./Office";
import OfficeFolderHasCustomer from "./OfficeFolderHasCustomer";
import OfficeFolderHasStakeholder from "./OfficeFolderHasStakeholder";
import Resource from "../Resource";
export default class OfficeFolder extends Resource {
folder_number: string;
name: string;
description: string | null;
archived_description: string | null;
status: EFolderStatus;
status: "LIVE" | "ARCHIVED";
deed: Deed;
office: Office;
created_at: Date | null;
@ -22,4 +22,3 @@ export declare enum EFolderStatus {
LIVE = "LIVE",
ARCHIVED = "ARCHIVED"
}
export declare type TFolderStatus = EFolderStatus.LIVE | EFolderStatus.ARCHIVED;

View File

@ -14,7 +14,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
Object.defineProperty(exports, "__esModule", { value: true });
exports.EFolderStatus = void 0;
const class_validator_1 = require("class-validator");
const Deed_1 = __importDefault(require("./Deed"));
const Document_1 = __importDefault(require("./Document"));
const Office_1 = __importDefault(require("./Office"));
const OfficeFolderHasCustomer_1 = __importDefault(require("./OfficeFolderHasCustomer"));
const OfficeFolderHasStakeholder_1 = __importDefault(require("./OfficeFolderHasStakeholder"));
const Resource_1 = __importDefault(require("../Resource"));
const class_transformer_1 = require("class-transformer");
class OfficeFolder extends Resource_1.default {
constructor() {
super(...arguments);
@ -38,11 +44,15 @@ __decorate([
], OfficeFolder.prototype, "status", void 0);
__decorate([
(0, class_validator_1.IsNotEmpty)({ groups: ["create"], message: "Deed is required" }),
__metadata("design:type", Function)
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => Deed_1.default),
__metadata("design:type", Deed_1.default)
], OfficeFolder.prototype, "deed", void 0);
__decorate([
(0, class_validator_1.IsNotEmpty)({ groups: ["create"], message: "Office is required" }),
__metadata("design:type", Function)
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => Office_1.default),
__metadata("design:type", Office_1.default)
], OfficeFolder.prototype, "office", void 0);
__decorate([
(0, class_validator_1.IsDate)(),
@ -52,6 +62,24 @@ __decorate([
(0, class_validator_1.IsDate)(),
__metadata("design:type", Object)
], OfficeFolder.prototype, "updated_at", void 0);
__decorate([
(0, class_validator_1.IsOptional)({ groups: ["create", "update"] }),
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => OfficeFolderHasCustomer_1.default),
__metadata("design:type", Array)
], OfficeFolder.prototype, "office_folder_has_customers", void 0);
__decorate([
(0, class_validator_1.IsOptional)({ groups: ["create", "update"] }),
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => OfficeFolderHasStakeholder_1.default),
__metadata("design:type", Array)
], OfficeFolder.prototype, "office_folder_has_stakeholder", void 0);
__decorate([
(0, class_validator_1.IsOptional)({ groups: ["create", "update"] }),
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => Document_1.default),
__metadata("design:type", Array)
], OfficeFolder.prototype, "documents", void 0);
exports.default = OfficeFolder;
var EFolderStatus;
(function (EFolderStatus) {

View File

@ -1,5 +1,5 @@
import type Customer from ".";
import type OfficeFolder from "./OfficeFolder";
import Customer from ".";
import OfficeFolder from "./OfficeFolder";
import Resource from "../Resource";
export default class OfficeFolderHasCustomer extends Resource {
customer: Customer;

View File

@ -13,7 +13,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
};
Object.defineProperty(exports, "__esModule", { value: true });
const class_validator_1 = require("class-validator");
const _1 = __importDefault(require("."));
const OfficeFolder_1 = __importDefault(require("./OfficeFolder"));
const Resource_1 = __importDefault(require("../Resource"));
const class_transformer_1 = require("class-transformer");
class OfficeFolderHasCustomer extends Resource_1.default {
constructor() {
super(...arguments);
@ -23,11 +26,15 @@ class OfficeFolderHasCustomer extends Resource_1.default {
}
__decorate([
(0, class_validator_1.IsNotEmpty)({ groups: ["create"], message: "Customer is required" }),
__metadata("design:type", Function)
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => _1.default),
__metadata("design:type", _1.default)
], OfficeFolderHasCustomer.prototype, "customer", void 0);
__decorate([
(0, class_validator_1.IsNotEmpty)({ groups: ["create"], message: "Office folder is required" }),
__metadata("design:type", Function)
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => OfficeFolder_1.default),
__metadata("design:type", OfficeFolder_1.default)
], OfficeFolderHasCustomer.prototype, "office_folder", void 0);
__decorate([
(0, class_validator_1.IsDate)(),

View File

@ -1,5 +1,5 @@
import type OfficeFolder from "./OfficeFolder";
import type User from "../Notary/User";
import OfficeFolder from "./OfficeFolder";
import User from "../Notary/User";
import Resource from "../Resource";
export default class OfficeFolderHasStakeholder extends Resource {
user_stakeholder: User;

View File

@ -13,7 +13,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
};
Object.defineProperty(exports, "__esModule", { value: true });
const class_validator_1 = require("class-validator");
const OfficeFolder_1 = __importDefault(require("./OfficeFolder"));
const User_1 = __importDefault(require("../Notary/User"));
const Resource_1 = __importDefault(require("../Resource"));
const class_transformer_1 = require("class-transformer");
class OfficeFolderHasStakeholder extends Resource_1.default {
constructor() {
super(...arguments);
@ -23,11 +26,15 @@ class OfficeFolderHasStakeholder extends Resource_1.default {
}
__decorate([
(0, class_validator_1.IsNotEmpty)({ groups: ["create"], message: "User Stakeholder is required" }),
__metadata("design:type", Function)
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => User_1.default),
__metadata("design:type", User_1.default)
], OfficeFolderHasStakeholder.prototype, "user_stakeholder", void 0);
__decorate([
(0, class_validator_1.IsNotEmpty)({ groups: ["create"], message: "Office folder is required" }),
__metadata("design:type", Function)
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => OfficeFolder_1.default),
__metadata("design:type", OfficeFolder_1.default)
], OfficeFolderHasStakeholder.prototype, "office_folder", void 0);
__decorate([
(0, class_validator_1.IsDate)(),

View File

@ -1,5 +1,5 @@
import type Notification from "./Notification";
import type User from "../Notary/User";
import Notification from "./Notification";
import User from "../Notary/User";
import Resource from "../Resource";
export default class UserHasNotification extends Resource {
user: User;
@ -7,7 +7,6 @@ export default class UserHasNotification extends Resource {
created_at: Date | null;
updated_at: Date | null;
}
export declare type TNotificationStatus = "READ" | "UNREAD";
export declare enum ENotificationStatus {
READ = "READ",
UNREAD = "UNREAD"

View File

@ -14,7 +14,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
Object.defineProperty(exports, "__esModule", { value: true });
exports.ENotificationStatus = void 0;
const class_validator_1 = require("class-validator");
const Notification_1 = __importDefault(require("./Notification"));
const User_1 = __importDefault(require("../Notary/User"));
const Resource_1 = __importDefault(require("../Resource"));
const class_transformer_1 = require("class-transformer");
class UserHasNotification extends Resource_1.default {
constructor() {
super(...arguments);
@ -24,11 +27,15 @@ class UserHasNotification extends Resource_1.default {
}
__decorate([
(0, class_validator_1.IsNotEmpty)({ groups: ["create"], message: "User is required" }),
__metadata("design:type", Function)
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => User_1.default),
__metadata("design:type", User_1.default)
], UserHasNotification.prototype, "user", void 0);
__decorate([
(0, class_validator_1.IsNotEmpty)({ groups: ["create"], message: "Notification is required" }),
__metadata("design:type", Function)
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => Notification_1.default),
__metadata("design:type", Notification_1.default)
], UserHasNotification.prototype, "notification", void 0);
__decorate([
(0, class_validator_1.IsDate)(),

10
dist/Notary/User.js vendored
View File

@ -14,7 +14,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
Object.defineProperty(exports, "__esModule", { value: true });
const class_validator_1 = require("class-validator");
const Contact_1 = __importDefault(require("../Customer/Contact"));
const Document_1 = __importDefault(require("../Customer/Document"));
const Office_1 = __importDefault(require("../Customer/Office"));
const OfficeFolderHasStakeholder_1 = __importDefault(require("../Customer/OfficeFolderHasStakeholder"));
const Resource_1 = __importDefault(require("../Resource"));
const class_transformer_1 = require("class-transformer");
class User extends Resource_1.default {
@ -47,11 +49,15 @@ __decorate([
__metadata("design:type", Object)
], User.prototype, "updated_at", void 0);
__decorate([
(0, class_validator_1.IsOptional)(),
(0, class_validator_1.IsOptional)({ groups: ["create", "update"] }),
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => OfficeFolderHasStakeholder_1.default),
__metadata("design:type", Array)
], User.prototype, "office_folder_has_stakeholders", void 0);
__decorate([
(0, class_validator_1.IsOptional)(),
(0, class_validator_1.IsOptional)({ groups: ["create", "update"] }),
(0, class_validator_1.ValidateNested)({ groups: ["create", "update"] }),
(0, class_transformer_1.Type)(() => Document_1.default),
__metadata("design:type", Array)
], User.prototype, "documents", void 0);
exports.default = User;

View File

@ -1,7 +1,8 @@
import { IsNotEmpty, IsDate } from "class-validator";
import type Contact from "./Contact";
import type Office from "./Office";
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: ["create"], message: "Address is required" })
@ -19,7 +20,13 @@ export default class Address extends Resource {
@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;
}

View File

@ -1,8 +1,9 @@
import { IsNotEmpty, IsDate, IsEmail, IsOptional } from "class-validator";
import type Address from "./Address";
import type Customer from ".";
import type User from "../Notary";
import { IsNotEmpty, IsDate, IsEmail, IsOptional, ValidateNested } from "class-validator";
import Address from "./Address";
import Customer from ".";
import User from "../Notary";
import Resource from "../Resource";
import { Type } from "class-transformer";
export default class Contact extends Resource {
@IsNotEmpty({ groups: ["create"], message: "First name is required" })
@ -23,9 +24,11 @@ export default class Contact extends Resource {
public phone_number!: string;
@IsNotEmpty({ groups: ["create"], message: "Civility is required" })
public civility!: ECivility;
public civility!: "MALE" | "FEMALE" | "OTHERS";
@IsNotEmpty({ groups: ["create"], message: "Address is required" })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => Address)
public address!: Address;
@IsDate()
@ -34,8 +37,14 @@ export default class Contact extends Resource {
@IsDate()
public updated_at: Date | null = null;
@IsOptional({ groups: ["create", "update"] })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => User)
public user?: User | null = null;
@IsOptional({ groups: ["create", "update"] })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => Customer)
public customer?: Customer | null = null;
}
export enum ECivility {
@ -43,4 +52,3 @@ export enum ECivility {
FEMALE = "FEMALE",
OTHERS = "OTHERS",
}
export type TCivility = ECivility.MALE | ECivility.FEMALE | ECivility.OTHERS;

View File

@ -1,18 +1,21 @@
import { IsDate, IsNotEmpty } from "class-validator";
import {
IsDate,
IsNotEmpty,
IsOptional,
ValidateNested,
} from "class-validator";
import { Contact, Document } from ".";
import OfficeFolderHasCustomer from "./OfficeFolderHasCustomer";
import Resource from "../Resource";
import { Type } from "class-transformer";
export enum ECustomerStatus {
VALIDATED = "VALIDATED",
PENDING = "PENDING",
ERRONED = "ERRONED",
}
export default class Customer extends Resource {
@IsNotEmpty({ groups: ["create"], message: "Status is required" })
public status!: "VALIDATED" | "PENDING" | "ERRONED";
@IsNotEmpty({ groups: ["create"], message: "Contact is required" })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => Contact)
public contact!: Contact;
@IsDate()
@ -21,12 +24,19 @@ export default class Customer extends Resource {
@IsDate()
public updated_at: Date | null = null;
@IsOptional({ groups: ["create", "update"] })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => OfficeFolderHasCustomer)
office_folder_has_customers?: OfficeFolderHasCustomer[];
@IsOptional({ groups: ["create", "update"] })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => Document)
documents?: Document[];
}
export type TCustomerStatus =
| ECustomerStatus.VALIDATED
| ECustomerStatus.PENDING
| ECustomerStatus.ERRONED;
export enum ECustomerStatus {
VALIDATED = "VALIDATED",
PENDING = "PENDING",
ERRONED = "ERRONED",
}

View File

@ -1,11 +1,14 @@
import { IsNotEmpty, IsDate } from "class-validator";
import type DeedType from "./DeedType";
import type DeedHasDocumentType from "./DeedHasDocumentType";
import type OfficeFolder from "./OfficeFolder";
import { IsNotEmpty, IsDate, ValidateNested, IsOptional } from "class-validator";
import DeedType from "./DeedType";
import DeedHasDocumentType from "./DeedHasDocumentType";
import OfficeFolder from "./OfficeFolder";
import Resource from "../Resource";
import { Type } from "class-transformer";
export default class Deed extends Resource{
@IsNotEmpty({ groups: ["create"], message: "Deed type is required" })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => DeedType)
public deed_type!: DeedType;
@IsDate()
@ -14,7 +17,13 @@ export default class Deed extends Resource{
@IsDate()
public updated_at: Date | null = null;
@IsOptional({ groups: ["create", "update"] })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => DeedHasDocumentType)
public deed_has_document_types?: DeedHasDocumentType[];
@IsOptional({ groups: ["create", "update"] })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => OfficeFolder)
public office_folder?: OfficeFolder;
}

View File

@ -1,13 +1,18 @@
import { IsNotEmpty, IsDate } from "class-validator";
import type Deed from "./Deed";
import type DocumentType from "./DocumentType";
import { IsNotEmpty, IsDate, ValidateNested } from "class-validator";
import Deed from "./Deed";
import DocumentType from "./DocumentType";
import Resource from "../Resource";
import { Type } from "class-transformer";
export default class DeedHasDocumentType extends Resource {
@IsNotEmpty({ groups: ["create"], message: "Document type is required" })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => DocumentType)
public document_type!: DocumentType;
@IsNotEmpty({ groups: ["create"], message: "Deed is required" })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => Deed)
public deed!: Deed;
@IsDate()

View File

@ -1,8 +1,14 @@
import { IsNotEmpty, IsDate } from "class-validator";
import type Deed from "./Deed";
import type DeedTypeHasDocumentType from "./DeedTypeHasDocumentType";
import type Office from "./Office";
import {
IsNotEmpty,
IsDate,
IsOptional,
ValidateNested,
} from "class-validator";
import Deed from "./Deed";
import DeedTypeHasDocumentType from "./DeedTypeHasDocumentType";
import Office from "./Office";
import Resource from "../Resource";
import { Type } from "class-transformer";
export default class DeedType extends Resource {
@IsNotEmpty({ groups: ["create"], message: "Name is required" })
@ -15,6 +21,8 @@ export default class DeedType extends Resource{
public archived_at: Date | null = null;
@IsNotEmpty({ groups: ["create"], message: "Office is required" })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => Office)
public office!: Office;
@IsDate()
@ -23,7 +31,13 @@ export default class DeedType extends Resource{
@IsDate()
public updated_at: Date | null = null;
@IsOptional({ groups: ["create", "update"] })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => Deed)
public deed?: Deed[];
@IsOptional({ groups: ["create", "update"] })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => DeedTypeHasDocumentType)
public deed_type_has_document_types?: DeedTypeHasDocumentType[];
}

View File

@ -1,13 +1,18 @@
import { IsNotEmpty, IsDate } from "class-validator";
import type DeedType from "./DeedType";
import type DocumentType from "./DocumentType";
import { IsNotEmpty, IsDate, ValidateNested } from "class-validator";
import DeedType from "./DeedType";
import DocumentType from "./DocumentType";
import Resource from "../Resource";
import { Type } from "class-transformer";
export default class DeedTypeHasDocumentType extends Resource {
@IsNotEmpty({ groups: ["create"], message: "Document type is required" })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => DocumentType)
public document_type!: DocumentType;
@IsNotEmpty({ groups: ["create"], message: "Deed type is required" })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => DeedType)
public deed_type!: DeedType;
@IsDate()

View File

@ -1,22 +1,39 @@
import { IsNotEmpty, IsDate } from "class-validator";
import type Customer from ".";
import type DocumentHistory from "./DocumentHistory";
import type DocumentType from "./DocumentType";
import type File from "./File";
import type OfficeFolder from "./OfficeFolder";
import {
IsNotEmpty,
IsDate,
IsOptional,
ValidateNested,
} from "class-validator";
import Customer from ".";
import DocumentHistory from "./DocumentHistory";
import DocumentType from "./DocumentType";
import File from "./File";
import OfficeFolder from "./OfficeFolder";
import Resource from "../Resource";
import { Type } from "class-transformer";
export default class Document extends Resource {
@IsNotEmpty({ groups: ["create"], message: "Document status is required" })
public document_status!: EDocumentStatus;
public document_status!:
| "ASKED"
| "DEPOSITED"
| "VALIDATED"
| "ANCHORED"
| "REFUSED";
@IsNotEmpty({ groups: ["create"], message: "Document type is required" })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => DocumentType)
public document_type!: DocumentType;
@IsNotEmpty({ groups: ["create"], message: "Folder is required" })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => OfficeFolder)
public folder!: OfficeFolder;
@IsNotEmpty({ groups: ["create"], message: "Depositor is required" })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => Customer)
public depositor!: Customer;
@IsDate()
@ -25,8 +42,14 @@ export default class Document extends Resource{
@IsDate()
public updated_at: Date | null = null;
@IsOptional({ groups: ["create", "update"] })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => File)
public files?: File[];
@IsOptional({ groups: ["create", "update"] })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => DocumentHistory)
public document_history?: DocumentHistory[];
}
export enum EDocumentStatus {
@ -36,10 +59,3 @@ export enum EDocumentStatus {
ANCHORED = "ANCHORED",
REFUSED = "REFUSED",
}
export type TDocumentStatus =
| EDocumentStatus.ASKED
| EDocumentStatus.DEPOSITED
| EDocumentStatus.VALIDATED
| EDocumentStatus.ANCHORED
| EDocumentStatus.REFUSED;

View File

@ -1,12 +1,15 @@
import { IsNotEmpty, IsDate } from "class-validator";
import type { default as Document, EDocumentStatus } from "./Document";
import { IsNotEmpty, IsDate, ValidateNested } from "class-validator";
import { default as Document } 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!: EDocumentStatus;
public document_status!: "ASKED" | "DEPOSITED" | "VALIDATED" | "ANCHORED" | "REFUSED";
@IsNotEmpty({ groups: ["create"], message: "Document is required" })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => Document)
public document!: Document;
public refused_reason: string | null = null;

View File

@ -1,8 +1,9 @@
import { IsNotEmpty, IsDate } from "class-validator";
import type DeedHasDocumentType from "./DeedHasDocumentType";
import type Document from "./Document";
import type DeedTypeHasDocumentType from "./DeedTypeHasDocumentType";
import { IsNotEmpty, IsDate, IsOptional, ValidateNested } from "class-validator";
import DeedHasDocumentType from "./DeedHasDocumentType";
import Document from "./Document";
import DeedTypeHasDocumentType from "./DeedTypeHasDocumentType";
import Resource from "../Resource";
import { Type } from "class-transformer";
export default class DocumentType extends Resource {
@IsNotEmpty({ groups: ["create"], message: "Name is required" })
@ -11,6 +12,7 @@ export default class DocumentType extends Resource {
@IsNotEmpty({ groups: ["create"], message: "Public description is required" })
public public_description!: string;
@IsOptional({ groups: ["create", "update"] })
public private_description: string | null = null;
@IsDate()
@ -22,9 +24,18 @@ export default class DocumentType extends Resource {
@IsDate()
public updated_at: Date | null = null;
@IsOptional({ groups: ["create", "update"] })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => Document)
public documents?: Document[];
@IsOptional({ groups: ["create", "update"] })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => DeedHasDocumentType)
public deed_has_document_types?: DeedHasDocumentType[];
@IsOptional({ groups: ["create", "update"] })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => DeedTypeHasDocumentType)
public deed_type_has_document_types?: DeedTypeHasDocumentType[];
}

View File

@ -1,9 +1,12 @@
import { IsNotEmpty, IsDate } from "class-validator";
import type Document from "./Document";
import { IsNotEmpty, IsDate, ValidateNested } from "class-validator";
import Document from "./Document";
import Resource from "../Resource";
import { Type } from "class-transformer";
export default class File extends Resource {
@IsNotEmpty({ groups: ["create"], message: "Document is required" })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => Document)
public document!: Document;
public file_path: string | null = null;

View File

@ -1,6 +1,13 @@
import { IsNotEmpty, IsDate, IsUrl } from "class-validator";
import type UserHasNotification from "./UserHasNotification";
import {
IsNotEmpty,
IsDate,
IsUrl,
IsOptional,
ValidateNested,
} from "class-validator";
import UserHasNotification from "./UserHasNotification";
import Resource from "../Resource";
import { Type } from "class-transformer";
export default class Notification extends Resource {
@IsNotEmpty({ groups: ["create"], message: "Message is required" })
@ -16,5 +23,8 @@ export default class Notification extends Resource {
@IsDate()
public updated_at: Date | null = null;
@IsOptional({ groups: ["create", "update"] })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => UserHasNotification)
user_has_notifications?: UserHasNotification[];
}

View File

@ -1,9 +1,15 @@
import { IsNotEmpty, IsDate } from "class-validator";
import type Address from "./Address";
import type DeedType from "./DeedType";
import type OfficeFolder from "./OfficeFolder";
import type User from "../Notary/User";
import {
IsNotEmpty,
IsDate,
IsOptional,
ValidateNested,
} from "class-validator";
import Address from "./Address";
import DeedType from "./DeedType";
import OfficeFolder from "./OfficeFolder";
import User from "../Notary/User";
import Resource from "../Resource";
import { Type } from "class-transformer";
export default class Office extends Resource {
@IsNotEmpty({ groups: ["create"], message: "ID IdNote is required" })
@ -16,10 +22,12 @@ export default class Office extends Resource {
public crpcen!: string;
@IsNotEmpty({ groups: ["create"], message: "Address is required" })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => Address)
public address!: Address;
@IsNotEmpty({ groups: ["create"], message: "Office status is required" })
public office_status!: EOfficeStatus;
public office_status!: "ACTIVATED" | "DESACTIVATED";
@IsDate()
public created_at: Date | null = null;
@ -27,10 +35,19 @@ export default class Office extends Resource {
@IsDate()
public updated_at: Date | null = null;
@IsOptional({ groups: ["create", "update"] })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => DeedType)
public deed_types?: DeedType[];
@IsOptional({ groups: ["create", "update"] })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => User)
public users?: User[];
@IsOptional({ groups: ["create", "update"] })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => OfficeFolder)
public office_folders?: OfficeFolder[];
}
@ -38,7 +55,3 @@ export enum EOfficeStatus {
ACTIVATED = "ACTIVATED",
DESACTIVATED = "DESACTIVATED",
}
export type TOfficeStatus =
| EOfficeStatus.ACTIVATED
| EOfficeStatus.DESACTIVATED;

View File

@ -1,10 +1,16 @@
import { IsNotEmpty, IsDate } from "class-validator";
import type Deed from "./Deed";
import type Document from "./Document";
import type Office from "./Office";
import type OfficeFolderHasCustomer from "./OfficeFolderHasCustomer";
import type OfficeFolderHasStakeholder from "./OfficeFolderHasStakeholder";
import {
IsNotEmpty,
IsDate,
IsOptional,
ValidateNested,
} from "class-validator";
import Deed from "./Deed";
import Document from "./Document";
import Office from "./Office";
import OfficeFolderHasCustomer from "./OfficeFolderHasCustomer";
import OfficeFolderHasStakeholder from "./OfficeFolderHasStakeholder";
import Resource from "../Resource";
import { Type } from "class-transformer";
export default class OfficeFolder extends Resource {
@IsNotEmpty({ groups: ["create"], message: "Folder number is required" })
@ -18,12 +24,16 @@ export default class OfficeFolder extends Resource {
public archived_description: string | null = null;
@IsNotEmpty({ groups: ["create"], message: "Status is required" })
public status!: EFolderStatus;
public status!: "LIVE" | "ARCHIVED";
@IsNotEmpty({ groups: ["create"], message: "Deed is required" })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => Deed)
public deed!: Deed;
@IsNotEmpty({ groups: ["create"], message: "Office is required" })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => Office)
public office!: Office;
@IsDate()
@ -32,14 +42,22 @@ export default class OfficeFolder extends Resource {
@IsDate()
public updated_at: Date | null = null;
@IsOptional({ groups: ["create", "update"] })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => OfficeFolderHasCustomer)
office_folder_has_customers?: OfficeFolderHasCustomer[];
@IsOptional({ groups: ["create", "update"] })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => OfficeFolderHasStakeholder)
office_folder_has_stakeholder?: OfficeFolderHasStakeholder[];
@IsOptional({ groups: ["create", "update"] })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => Document)
documents?: Document[];
}
export enum EFolderStatus {
LIVE = "LIVE",
ARCHIVED = "ARCHIVED",
}
export type TFolderStatus = EFolderStatus.LIVE | EFolderStatus.ARCHIVED;

View File

@ -1,13 +1,18 @@
import { IsNotEmpty, IsDate } from "class-validator";
import type Customer from ".";
import type OfficeFolder from "./OfficeFolder";
import { IsNotEmpty, IsDate, ValidateNested } from "class-validator";
import Customer from ".";
import OfficeFolder from "./OfficeFolder";
import Resource from "../Resource";
import { Type } from "class-transformer";
export default class OfficeFolderHasCustomer extends Resource {
@IsNotEmpty({ groups: ["create"], message: "Customer is required" })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => Customer)
public customer!: Customer;
@IsNotEmpty({ groups: ["create"], message: "Office folder is required" })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => OfficeFolder)
public office_folder!: OfficeFolder;
@IsDate()

View File

@ -1,13 +1,18 @@
import { IsNotEmpty, IsDate } from "class-validator";
import type OfficeFolder from "./OfficeFolder";
import type User from "../Notary/User";
import { IsNotEmpty, IsDate, ValidateNested } from "class-validator";
import OfficeFolder from "./OfficeFolder";
import User from "../Notary/User";
import Resource from "../Resource";
import { Type } from "class-transformer";
export default class OfficeFolderHasStakeholder extends Resource {
@IsNotEmpty({ groups: ["create"], message: "User Stakeholder is required" })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => User)
public user_stakeholder!: User;
@IsNotEmpty({ groups: ["create"], message: "Office folder is required" })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => OfficeFolder)
public office_folder!: OfficeFolder;
@IsDate()

View File

@ -1,13 +1,18 @@
import { IsNotEmpty, IsDate } from "class-validator";
import type Notification from "./Notification";
import type User from "../Notary/User";
import { IsNotEmpty, IsDate, ValidateNested } from "class-validator";
import Notification from "./Notification";
import User from "../Notary/User";
import Resource from "../Resource";
import { Type } from "class-transformer";
export default class UserHasNotification extends Resource {
@IsNotEmpty({ groups: ["create"], message: "User is required" })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => User)
public user!: User;
@IsNotEmpty({ groups: ["create"], message: "Notification is required" })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => Notification)
public notification!: Notification;
@IsDate()
@ -16,7 +21,7 @@ export default class UserHasNotification extends Resource {
@IsDate()
public updated_at: Date | null = null;
}
export type TNotificationStatus = "READ" | "UNREAD";
export enum ENotificationStatus {
READ = "READ",
UNREAD = "UNREAD",

View File

@ -1,4 +1,9 @@
import { IsNotEmpty, IsDate, IsOptional, ValidateNested } from "class-validator";
import {
IsNotEmpty,
IsDate,
IsOptional,
ValidateNested,
} from "class-validator";
import Contact from "../Customer/Contact";
import Document from "../Customer/Document";
import Office from "../Customer/Office";
@ -24,9 +29,13 @@ export default class User extends Resource {
@IsDate()
public updated_at: Date | null = null;
@IsOptional()
@IsOptional({ groups: ["create", "update"] })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => OfficeFolderHasStakeholder)
office_folder_has_stakeholders?: OfficeFolderHasStakeholder[];
@IsOptional()
@IsOptional({ groups: ["create", "update"] })
@ValidateNested({ groups: ["create", "update"] })
@Type(() => Document)
documents?: Document[];
}