From 09dc72e34e986f209e9488a3c8f4ec4a3e191da6 Mon Sep 17 00:00:00 2001 From: Sathishkumar Krishnan Date: Tue, 1 Feb 2022 20:50:44 +0530 Subject: [PATCH] feat: added get all apis for all warehouse modules --- src/controller/area.controller.js | 11 +++++++++++ src/controller/area.router.js | 5 +++++ src/controller/bay.controller.js | 11 +++++++++++ src/controller/bay.router.js | 6 ++++++ src/controller/level.controller.js | 11 +++++++++++ src/controller/level.router.js | 6 ++++++ src/controller/row.controller.js | 11 +++++++++++ src/controller/row.router.js | 6 ++++++ src/controller/sublevel.controller.js | 11 +++++++++++ src/controller/sublevel.router.js | 6 ++++++ src/controller/utils/pagination.js | 10 ++++++++++ src/controller/warehouse.controller.js | 11 +++++++++++ src/controller/warehouse.router.js | 5 +++++ src/controller/zone.controller.js | 11 +++++++++++ src/controller/zone.router.js | 6 ++++++ 15 files changed, 127 insertions(+) create mode 100644 src/controller/utils/pagination.js diff --git a/src/controller/area.controller.js b/src/controller/area.controller.js index 32ee57b..ce0b6fd 100644 --- a/src/controller/area.controller.js +++ b/src/controller/area.controller.js @@ -91,4 +91,15 @@ module.exports = { next(error); } }, + + getAllArea: async (req, res, next) => { + try { + const { getAllWithPagination } = require("./utils/pagination"); + const { page, perPage } = req.query; + const data = await getAllWithPagination(Area, page, perPage); + res.send({ success: true, data: data }); + } catch (error) { + next(error); + } + }, }; diff --git a/src/controller/area.router.js b/src/controller/area.router.js index d2c0c0a..e4c2bdd 100644 --- a/src/controller/area.router.js +++ b/src/controller/area.router.js @@ -1,6 +1,11 @@ const router = require("express").Router(); const controller = require("./area.controller"); +/** + * @route /area/ + */ +router.get("/all", controller.getAllArea); + /** * @route /area/:id */ diff --git a/src/controller/bay.controller.js b/src/controller/bay.controller.js index a89b484..be0c2ed 100644 --- a/src/controller/bay.controller.js +++ b/src/controller/bay.controller.js @@ -93,4 +93,15 @@ module.exports = { next(error); } }, + + getAllBay: async (req, res, next) => { + try { + const { getAllWithPagination } = require("./utils/pagination"); + const { page, perPage } = req.query; + const data = await getAllWithPagination(Bay, page, perPage); + res.send({ success: true, data: data }); + } catch (error) { + next(error); + } + }, }; diff --git a/src/controller/bay.router.js b/src/controller/bay.router.js index b487363..fd27dd2 100644 --- a/src/controller/bay.router.js +++ b/src/controller/bay.router.js @@ -1,6 +1,12 @@ const router = require("express").Router(); const controller = require("./bay.controller"); + +/** + * @route /bay/ + */ +router.get("/all", controller.getAllBay); + /** * @route /bay/:id */ diff --git a/src/controller/level.controller.js b/src/controller/level.controller.js index d2976ac..2be1b21 100644 --- a/src/controller/level.controller.js +++ b/src/controller/level.controller.js @@ -91,4 +91,15 @@ module.exports = { next(error); } }, + + getAllLevel: async (req, res, next) => { + try { + const { getAllWithPagination } = require("./utils/pagination"); + const { page, perPage } = req.query; + const data = await getAllWithPagination(Level, page, perPage); + res.send({ success: true, data: data }); + } catch (error) { + next(error); + } + }, }; diff --git a/src/controller/level.router.js b/src/controller/level.router.js index 5271ea6..f3a6846 100644 --- a/src/controller/level.router.js +++ b/src/controller/level.router.js @@ -1,6 +1,12 @@ const router = require("express").Router(); const controller = require("./level.controller"); + +/** + * @route /level/ + */ +router.get("/all", controller.getAllLevel); + /** * @route /level/:id */ diff --git a/src/controller/row.controller.js b/src/controller/row.controller.js index 62d48ad..77f9182 100644 --- a/src/controller/row.controller.js +++ b/src/controller/row.controller.js @@ -91,4 +91,15 @@ module.exports = { next(error); } }, + + getAllRow: async (req, res, next) => { + try { + const { getAllWithPagination } = require("./utils/pagination"); + const { page, perPage } = req.query; + const data = await getAllWithPagination(Row, page, perPage); + res.send({ success: true, data: data }); + } catch (error) { + next(error); + } + }, }; diff --git a/src/controller/row.router.js b/src/controller/row.router.js index 0a5cd4c..fbf91be 100644 --- a/src/controller/row.router.js +++ b/src/controller/row.router.js @@ -1,6 +1,12 @@ const router = require("express").Router(); const controller = require("./row.controller"); + +/** + * @route /row/ + */ +router.get("/all", controller.getAllRow); + /** * @route /row/:id */ diff --git a/src/controller/sublevel.controller.js b/src/controller/sublevel.controller.js index 6644eae..47e1672 100644 --- a/src/controller/sublevel.controller.js +++ b/src/controller/sublevel.controller.js @@ -151,4 +151,15 @@ module.exports = { next(err); } }, + + getAllSublevel: async (req, res, next) => { + try { + const { getAllWithPagination } = require("./utils/pagination"); + const { page, perPage } = req.query; + const data = await getAllWithPagination(Sublevel, page, perPage); + res.send({ success: true, data: data }); + } catch (error) { + next(error); + } + }, }; diff --git a/src/controller/sublevel.router.js b/src/controller/sublevel.router.js index 3f4a4e2..fd0ea63 100644 --- a/src/controller/sublevel.router.js +++ b/src/controller/sublevel.router.js @@ -1,6 +1,12 @@ const router = require("express").Router(); const controller = require("./sublevel.controller"); + +/** + * @route /sublevel/ + */ +router.get("/all", controller.getAllSublevel); + /** * @route /sublevel/:id */ diff --git a/src/controller/utils/pagination.js b/src/controller/utils/pagination.js new file mode 100644 index 0000000..ca2e653 --- /dev/null +++ b/src/controller/utils/pagination.js @@ -0,0 +1,10 @@ +module.exports = { + getAllWithPagination: async (model, page, perPage) => { + page = page ? parseInt(page) : 0; + perPage = perPage ? parseInt(perPage) : 10; + return await model + .find({}) + .skip(parseInt(page) * parseInt(perPage)) + .limit(parseInt(perPage)); + }, +}; diff --git a/src/controller/warehouse.controller.js b/src/controller/warehouse.controller.js index 0d72375..75fbd49 100644 --- a/src/controller/warehouse.controller.js +++ b/src/controller/warehouse.controller.js @@ -121,4 +121,15 @@ module.exports = { next(error); } }, + + getAllWarehouse: async (req, res, next) => { + try { + const { getAllWithPagination } = require("./utils/pagination"); + const { page, perPage } = req.query; + const data = await getAllWithPagination(Warehouse, page, perPage); + res.send({ success: true, data: data }); + } catch (error) { + next(error); + } + }, }; diff --git a/src/controller/warehouse.router.js b/src/controller/warehouse.router.js index 9e099aa..5963bda 100644 --- a/src/controller/warehouse.router.js +++ b/src/controller/warehouse.router.js @@ -2,6 +2,11 @@ const router = require("express").Router(); const upload = require("../middleware/fileUpload"); const controller = require("./warehouse.controller"); +/** + * @route /warehouse/ + */ +router.get("/all", controller.getAllWarehouse); + /** * @route /warehouse/get-all */ diff --git a/src/controller/zone.controller.js b/src/controller/zone.controller.js index e2039b9..1625d5b 100644 --- a/src/controller/zone.controller.js +++ b/src/controller/zone.controller.js @@ -91,4 +91,15 @@ module.exports = { next(error); } }, + + getAllZone: async (req, res, next) => { + try { + const { getAllWithPagination } = require("./utils/pagination"); + const { page, perPage } = req.query; + const data = await getAllWithPagination(Zone, page, perPage); + res.send({ success: true, data: data }); + } catch (error) { + next(error); + } + }, }; diff --git a/src/controller/zone.router.js b/src/controller/zone.router.js index fa79d10..3ea45f1 100644 --- a/src/controller/zone.router.js +++ b/src/controller/zone.router.js @@ -1,6 +1,12 @@ const router = require("express").Router(); const controller = require("./zone.controller"); + +/** + * @route /zone/ + */ +router.get("/all", controller.getAllZone); + /** * @route /zone/:id */