This commit is contained in:
David Arranz 2024-10-08 18:53:22 +02:00
parent fbb21c3fd3
commit dc575dd468
10 changed files with 17 additions and 35 deletions

View File

@ -7,7 +7,7 @@ import { IRepositoryManager } from "../domain";
import { ISequelizeAdapter } from "./sequelize";
export interface IContext {}
11111111;
export interface ICommonContext extends IContext {
adapter: ISequelizeAdapter;
repositoryManager: IRepositoryManager;

View File

@ -1,7 +1,7 @@
import { NextFunction, Request, Response } from "express";
export const handleRequest =
(controllerFactory: any) => (req: Request, res: Response, next: NextFunction) => {
(controllerCreator: any) => (req: Request, res: Response, next: NextFunction) => {
const context = res.locals["context"];
return controllerFactory(context, req, res, next).execute(req, res, next);
return controllerCreator(context, req, res, next).execute(req, res, next);
};

View File

@ -1,5 +1,5 @@
export * from "./ControllerFactory";
export * from "./ExpressController";
export * from "./ExpressErrorResponse";
export * from "./handleRequest";
export * from "./middlewares";
export * from "./PassportStrategyController";

View File

@ -1,13 +1,10 @@
import { CreateDealerUseCase } from "@/contexts/sales/application";
import { NextFunction, Request, Response } from "express";
import { registerDealerRepository } from "../../../../Dealer.repository";
import { ISalesContext } from "../../../../Sales.context";
import { CreateDealerController } from "./CreateDealer.controller";
import { CreateDealerPresenter } from "./presenter";
export const createDealerController = (req: Request, res: Response, next: NextFunction) => {
const context: ISalesContext = res.locals.context;
export const createDealerController = (context: ISalesContext) => {
registerDealerRepository(context);
return new CreateDealerController(
{
@ -15,5 +12,5 @@ export const createDealerController = (req: Request, res: Response, next: NextFu
presenter: CreateDealerPresenter,
},
context
).execute(req, res, next);
);
};

View File

@ -1,13 +1,10 @@
import { GetDealerUseCase } from "@/contexts/sales/application";
import { NextFunction, Request, Response } from "express";
import { registerDealerRepository } from "../../../../Dealer.repository";
import { ISalesContext } from "../../../../Sales.context";
import { GetDealerController } from "./GetDealer.controller";
import { GetDealerPresenter } from "./presenter";
export const getDealerController = (req: Request, res: Response, next: NextFunction) => {
const context: ISalesContext = res.locals.context;
export const getDealerController = (context: ISalesContext) => {
registerDealerRepository(context);
return new GetDealerController(
@ -16,5 +13,5 @@ export const getDealerController = (req: Request, res: Response, next: NextFunct
presenter: GetDealerPresenter,
},
context
).execute(req, res, next);
);
};

View File

@ -1,13 +1,10 @@
import { GetDealerByUserUseCase } from "@/contexts/sales/application";
import { NextFunction, Request, Response } from "express";
import { registerDealerRepository } from "../../../../Dealer.repository";
import { ISalesContext } from "../../../../Sales.context";
import { GetDealerByUserController } from "./GetDealerByUser.controller";
import { GetDealerByUserPresenter } from "./presenter";
export const getDealerByUserController = (req: Request, res: Response, next: NextFunction) => {
const context: ISalesContext = res.locals.context;
export const getDealerByUserController = (context: ISalesContext) => {
registerDealerRepository(context);
return new GetDealerByUserController(
@ -16,5 +13,5 @@ export const getDealerByUserController = (req: Request, res: Response, next: Nex
presenter: GetDealerByUserPresenter,
},
context
).execute(req, res, next);
);
};

View File

@ -1,13 +1,10 @@
import { ListDealersUseCase } from "@/contexts/sales/application";
import { NextFunction, Request, Response } from "express";
import { registerDealerRepository } from "../../../../Dealer.repository";
import { ISalesContext } from "../../../../Sales.context";
import { ListDealersController } from "./ListDealers.controller";
import { listDealersPresenter } from "./presenter/ListDealers.presenter";
export const listDealersController = (req: Request, res: Response, next: NextFunction) => {
const context: ISalesContext = res.locals.context;
export const listDealersController = (context: ISalesContext) => {
registerDealerRepository(context);
return new ListDealersController(
{
@ -15,5 +12,5 @@ export const listDealersController = (req: Request, res: Response, next: NextFun
presenter: listDealersPresenter,
},
context
).execute(req, res, next);
);
};

View File

@ -1,17 +1,14 @@
import { DeleteQuoteUseCase } from "@/contexts/sales/application";
import { NextFunction, Request, Response } from "express";
import { registerQuoteRepository } from "../../../../Quote.repository";
import { ISalesContext } from "../../../../Sales.context";
import { DeleteQuoteController } from "./DeleteQuote.controller";
export const deleteQuoteController = (req: Request, res: Response, next: NextFunction) => {
const context: ISalesContext = res.locals.context;
export const deleteQuoteController = (context: ISalesContext) => {
registerQuoteRepository(context);
return new DeleteQuoteController(
{
useCase: new DeleteQuoteUseCase(context),
},
context
).execute(req, res, next);
);
};

View File

@ -1,13 +1,10 @@
import { UpdateQuoteUseCase } from "@/contexts/sales/application";
import { NextFunction, Request, Response } from "express";
import { registerQuoteRepository } from "../../../../Quote.repository";
import { ISalesContext } from "../../../../Sales.context";
import { UpdateQuoteController } from "./UpdateQuote.controller";
import { UpdateQuotePresenter } from "./presenter/UpdateQuote.presenter";
export const updateQuoteController = (req: Request, res: Response, next: NextFunction) => {
const context: ISalesContext = res.locals.context;
export const updateQuoteController = (context: ISalesContext) => {
registerQuoteRepository(context);
return new UpdateQuoteController(
{
@ -15,5 +12,5 @@ export const updateQuoteController = (req: Request, res: Response, next: NextFun
presenter: UpdateQuotePresenter,
},
context
).execute(req, res, next);
);
};

View File

@ -142,7 +142,7 @@ class QuoteMapper
items,
dealer_id: source.dealerId.toPrimitive(),
date_sent: source.dateSent?.toPrimitive(),
date_sent: source.dateSent.toPrimitive() === "" ? null : source.dateSent.toPrimitive(),
};
return quote;