From b7edb86ff1952b114fb5d1a2e7c9a85c0a57256a Mon Sep 17 00:00:00 2001 From: Baltasar del Sol de Haro Date: Fri, 31 Dec 2021 15:02:49 +0100 Subject: [PATCH] Feat #36 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit La implementación de la API correctamente documentada en el archivo del proyecto. --- src/API/delivery_man.api.ts | 28 +++++++++++++++++++ src/API/order.api.ts | 22 +++++++++++++++ src/API/product.api.ts | 40 ++++++++++++++++++++++++++++ src/API/restaurant.api.ts | 40 ++++++++++++++++++++++++++++ src/handlers/delivery_man.handler.ts | 9 +++++++ src/handlers/order.handler.ts | 7 +++++ src/handlers/product.handler.ts | 13 +++++++++ src/handlers/restaurant.handler.ts | 13 +++++++++ 8 files changed, 172 insertions(+) create mode 100644 src/API/delivery_man.api.ts create mode 100644 src/API/order.api.ts create mode 100644 src/API/product.api.ts create mode 100644 src/API/restaurant.api.ts create mode 100644 src/handlers/delivery_man.handler.ts create mode 100644 src/handlers/order.handler.ts create mode 100644 src/handlers/product.handler.ts create mode 100644 src/handlers/restaurant.handler.ts diff --git a/src/API/delivery_man.api.ts b/src/API/delivery_man.api.ts new file mode 100644 index 0000000..028d61b --- /dev/null +++ b/src/API/delivery_man.api.ts @@ -0,0 +1,28 @@ +import { Controller } from "../controller"; +import Hapi from '@hapi/hapi'; +import { pino } from 'pino'; +import * as deliveryMan from '../handlers/delivery_man.handler' + + +const logger: pino.Logger = Controller.getInstance().getLogger(); +const server: Hapi.Server = Controller.getInstance().getServer(); + + +server.route({ + method: 'PUT', + path: '/deliveryMan', + handler: function(request, h) { deliveryMan.createDeliveryMan(request, h) } +}); + +server.route({ + method: 'POST', + path: '/deliveryMan', + handler: function(request, h) { deliveryMan.updateDeliveryMan(request, h) } +}); + +server.route({ + method: 'DELETE', + path: '/deliveryMan/{id}', + handler: function(request, h) { deliveryMan.deleteDeliveryManByID(request, h) } +}); + diff --git a/src/API/order.api.ts b/src/API/order.api.ts new file mode 100644 index 0000000..1faa83c --- /dev/null +++ b/src/API/order.api.ts @@ -0,0 +1,22 @@ +import { Controller } from "../controller"; +import Hapi from '@hapi/hapi'; +import { pino } from 'pino'; +import * as order from '../handlers/order.handler' + + +const logger: pino.Logger = Controller.getInstance().getLogger(); +const server: Hapi.Server = Controller.getInstance().getServer(); + + +server.route({ + method: 'GET', + path: '/order', + handler: function(request, h) { order.getOrderByID(request, h) } +}); + +server.route({ + method: 'PUT', + path: '/order', + handler: function(request, h) { order.createOrder(request, h) } +}); + diff --git a/src/API/product.api.ts b/src/API/product.api.ts new file mode 100644 index 0000000..56a4e82 --- /dev/null +++ b/src/API/product.api.ts @@ -0,0 +1,40 @@ +import { Controller } from "../controller"; +import Hapi from '@hapi/hapi'; +import { pino } from 'pino'; +import * as product from '../handlers/product.handler' + + +const logger: pino.Logger = Controller.getInstance().getLogger(); +const server: Hapi.Server = Controller.getInstance().getServer(); + + +server.route({ + method: 'GET', + path: '/product', + handler: function(request, h) { product.getAllProducts(request, h) } +}); + +server.route({ + method: 'GET', + path: '/product/{id}', + handler: function(request, h) { product.getProductByID(request, h) } +}); + +server.route({ + method: 'PUT', + path: '/product', + handler: function(request, h) { product.createProduct(request, h) } +}); + +server.route({ + method: 'POST', + path: '/product', + handler: function(request, h) { product.updateProduct(request, h) } +}); + +server.route({ + method: 'DELETE', + path: '/product/{id}', + handler: function(request, h) { product.deleteProductByID(request, h) } +}); + diff --git a/src/API/restaurant.api.ts b/src/API/restaurant.api.ts new file mode 100644 index 0000000..96af54e --- /dev/null +++ b/src/API/restaurant.api.ts @@ -0,0 +1,40 @@ +import { Controller } from "../controller"; +import Hapi from '@hapi/hapi'; +import { pino } from 'pino'; +import * as restaurant from '../handlers/restaurant.handler' + + +const logger: pino.Logger = Controller.getInstance().getLogger(); +const server: Hapi.Server = Controller.getInstance().getServer(); + + +server.route({ + method: 'GET', + path: '/restaurant', + handler: function(request, h) { restaurant.getAllRestaurants(request, h) } +}); + +server.route({ + method: 'GET', + path: '/restaurant/{id}', + handler: function(request, h) { restaurant.getRestaurantByID(request, h) } +}); + +server.route({ + method: 'PUT', + path: '/restaurant', + handler: function(request, h) { restaurant.createRestaurant(request, h) } +}); + +server.route({ + method: 'POST', + path: '/restaurant', + handler: function(request, h) { restaurant.updateRestaurant(request, h) } +}); + +server.route({ + method: 'DELETE', + path: '/restaurant/{id}', + handler: function(request, h) { restaurant.deleteRestaurantByID(request, h) } +}); + diff --git a/src/handlers/delivery_man.handler.ts b/src/handlers/delivery_man.handler.ts new file mode 100644 index 0000000..8838921 --- /dev/null +++ b/src/handlers/delivery_man.handler.ts @@ -0,0 +1,9 @@ +import Hapi from '@hapi/hapi'; + + +export function createDeliveryMan(request: Hapi.Request, h: Hapi.ResponseToolkit) {} + +export function updateDeliveryMan(request: Hapi.Request, h: Hapi.ResponseToolkit) {} + +export function deleteDeliveryManByID(request: Hapi.Request, h: Hapi.ResponseToolkit) {} + diff --git a/src/handlers/order.handler.ts b/src/handlers/order.handler.ts new file mode 100644 index 0000000..95c17c4 --- /dev/null +++ b/src/handlers/order.handler.ts @@ -0,0 +1,7 @@ +import Hapi from '@hapi/hapi'; + + +export function getOrderByID(request: Hapi.Request, h: Hapi.ResponseToolkit) {} + +export function createOrder(request: Hapi.Request, h: Hapi.ResponseToolkit) {} + diff --git a/src/handlers/product.handler.ts b/src/handlers/product.handler.ts new file mode 100644 index 0000000..cc317f9 --- /dev/null +++ b/src/handlers/product.handler.ts @@ -0,0 +1,13 @@ +import Hapi from '@hapi/hapi'; + + +export function getAllProducts(request: Hapi.Request, h: Hapi.ResponseToolkit) {} + +export function getProductByID(request: Hapi.Request, h: Hapi.ResponseToolkit) {} + +export function createProduct(request: Hapi.Request, h: Hapi.ResponseToolkit) {} + +export function updateProduct(request: Hapi.Request, h: Hapi.ResponseToolkit) {} + +export function deleteProductByID(request: Hapi.Request, h: Hapi.ResponseToolkit) {} + diff --git a/src/handlers/restaurant.handler.ts b/src/handlers/restaurant.handler.ts new file mode 100644 index 0000000..7b70f91 --- /dev/null +++ b/src/handlers/restaurant.handler.ts @@ -0,0 +1,13 @@ +import Hapi from '@hapi/hapi'; + + +export function getAllRestaurants(request: Hapi.Request, h: Hapi.ResponseToolkit) {} + +export function getRestaurantByID(request: Hapi.Request, h: Hapi.ResponseToolkit) {} + +export function createRestaurant(request: Hapi.Request, h: Hapi.ResponseToolkit) {} + +export function updateRestaurant(request: Hapi.Request, h: Hapi.ResponseToolkit) {} + +export function deleteRestaurantByID(request: Hapi.Request, h: Hapi.ResponseToolkit) {} +