From 22d0239306038196b1404de72711d774dbcb3ee6 Mon Sep 17 00:00:00 2001 From: OxSaitama Date: Thu, 4 May 2023 10:52:39 +0200 Subject: [PATCH] refacto hydratation for document controller --- src/app/api/customer/DocumentsController.ts | 22 +++++++++---------- .../api/super-admin/DocumentsController.ts | 2 +- 2 files changed, 11 insertions(+), 13 deletions(-) diff --git a/src/app/api/customer/DocumentsController.ts b/src/app/api/customer/DocumentsController.ts index 2ed3aa64..40713c15 100644 --- a/src/app/api/customer/DocumentsController.ts +++ b/src/app/api/customer/DocumentsController.ts @@ -4,7 +4,6 @@ import ApiController from "@Common/system/controller-pattern/ApiController"; import { Service } from "typedi"; import DocumentsService from "@Services/customer/DocumentsService/DocumentsService"; import { Documents } from "@prisma/client"; -import ObjectHydrate from "@Common/helpers/ObjectHydrate"; import { Document } from "le-coffre-resources/dist/Customer"; import { validateOrReject } from "class-validator"; @@ -24,13 +23,12 @@ export default class DocumentsController extends ApiController { try { //get query const query = JSON.parse(req.query["q"] as string); - //call service to get prisma entity const prismaEntity: Documents[] = await this.documentsService.get(query); //Hydrate ressource with prisma entity - const documents = ObjectHydrate.map(Document, prismaEntity, { strategy: "exposeAll" }); + const documents = Document.map(Document, prismaEntity, { strategy: "excludeAll" }); //success this.httpSuccess(response, documents); @@ -49,17 +47,17 @@ export default class DocumentsController extends ApiController { try { //init Document resource with request body values const documentEntity = new Document(); - ObjectHydrate.hydrate(documentEntity, req.body); + Document.hydrate(documentEntity, req.body); //validate document - await validateOrReject(documentEntity, { groups: ["create"] }); + await validateOrReject(documentEntity, { groups: ["createDocument"] }); //call service to get prisma entity const prismaEntityCreated = await this.documentsService.create(documentEntity); //Hydrate ressource with prisma entity - const documentEntityCreated = ObjectHydrate.hydrate(new Document(), prismaEntityCreated, { - strategy: "exposeAll", + const documentEntityCreated = Document.hydrate(prismaEntityCreated, { + strategy: "excludeAll", }); //success @@ -83,16 +81,16 @@ export default class DocumentsController extends ApiController { //init Document resource with request body values const documentEntity = new Document(); - ObjectHydrate.hydrate(documentEntity, req.body); + Document.hydrate(documentEntity, req.body); //validate document - await validateOrReject(documentEntity, { groups: ["create"] }); + await validateOrReject(documentEntity, { groups: ["createDocument"] }); //call service to get prisma entity const prismaEntityUpdated: Documents = await this.documentsService.update(uid, documentEntity); //Hydrate ressource with prisma entity - const document = ObjectHydrate.hydrate(new Document(), prismaEntityUpdated, { strategy: "exposeAll" }); + const document = Document.hydrate(prismaEntityUpdated, { strategy: "excludeAll" }); //success this.httpSuccess(response, document); @@ -117,7 +115,7 @@ export default class DocumentsController extends ApiController { const documentEntity: Documents = await this.documentsService.delete(uid); //Hydrate ressource with prisma entity - const document = ObjectHydrate.hydrate(new Document(), documentEntity, { strategy: "exposeAll" }); + const document = Document.hydrate(documentEntity, { strategy: "excludeAll" }); //success this.httpSuccess(response, document); @@ -149,7 +147,7 @@ export default class DocumentsController extends ApiController { } //Hydrate ressource with prisma entity - const document = ObjectHydrate.hydrate(new Document(), documentEntity, { strategy: "exposeAll" }); + const document = Document.hydrate(documentEntity, { strategy: "excludeAll" }); //success this.httpSuccess(response, document); diff --git a/src/app/api/super-admin/DocumentsController.ts b/src/app/api/super-admin/DocumentsController.ts index 74122d25..35dea328 100644 --- a/src/app/api/super-admin/DocumentsController.ts +++ b/src/app/api/super-admin/DocumentsController.ts @@ -85,7 +85,7 @@ export default class DocumentsController extends ApiController { ObjectHydrate.hydrate(documentEntity, req.body); //validate document - await validateOrReject(documentEntity, { groups: ["create"] }); + await validateOrReject(documentEntity, { groups: ["createDocument"] }); //call service to get prisma entity const prismaEntityUpdated: Documents = await this.documentsService.update(uid, documentEntity);