feat: retrieve specific sale receipt details.

This commit is contained in:
Ahmed Bouhuolia
2020-10-26 14:02:27 +02:00
parent d0785c65db
commit 3446dba0c5
2 changed files with 40 additions and 4 deletions

View File

@@ -53,6 +53,14 @@ export default class SalesReceiptsController extends BaseController{
this.handleServiceErrors,
this.dynamicListService.handlerErrorsToResponse,
);
router.get(
'/:id', [
...this.specificReceiptValidationSchema,
],
this.validationResult,
asyncMiddleware(this.getSaleReceipt.bind(this)),
this.handleServiceErrors,
);
return router;
}
@@ -214,6 +222,27 @@ export default class SalesReceiptsController extends BaseController{
}
}
/**
* Retrieve the sale receipt with associated entries.
* @param {Request} req
* @param {Response} res
* @param {NextFunction} next
*/
async getSaleReceipt(req: Request, res: Response, next: NextFunction) {
const { id: saleReceiptId } = req.params;
const { tenantId } = req;
try {
const saleReceipt = await this.saleReceiptService.getSaleReceipt(tenantId, saleReceiptId);
return res.status(200).send({
sale_receipt: saleReceipt,
})
} catch (error) {
next(error);
}
}
/**
* Handles service errors.
* @param {Error} error