From b6ebb9f2dca6564a2b9ea1994910195e0381f136 Mon Sep 17 00:00:00 2001 From: patrickjieraldjuan Date: Tue, 30 Jan 2024 01:16:13 +0800 Subject: [PATCH] Added controller and route for check existing product --- controllers/productControllers.js | 20 ++++++++++++++++++++ routes/productRoutes.js | 2 ++ 2 files changed, 22 insertions(+) diff --git a/controllers/productControllers.js b/controllers/productControllers.js index ef0445b..6a42146 100644 --- a/controllers/productControllers.js +++ b/controllers/productControllers.js @@ -30,6 +30,26 @@ module.exports.createProduct = async (req, res) => { } }; +module.exports.isProductExisting = async (req, res) => { + try { + const { productName } = req.body; + + + const existingProduct = await Product.findOne({ name: productName }); + + const productExists = !!existingProduct; + + if (productExists == true) { + res.json(true); + } else { + res.json(false); + } + + } catch (error) { + console.error(error); + res.status(500).json(false); + } +}; // retrieve all products controller module.exports.getAllProducts = async (req, res) => { diff --git a/routes/productRoutes.js b/routes/productRoutes.js index 74ddb87..f5c54dc 100644 --- a/routes/productRoutes.js +++ b/routes/productRoutes.js @@ -11,6 +11,8 @@ const {verify, verifyAdmin, verifyNonAdmin} = auth; // Route for creating a product router.post(`/create`, verify, verifyAdmin, productControllers.createProduct); +// Route for check a existing product +router.post('/check-product-existence', verify, verifyAdmin, productControllers.isProductExisting); // Route for retrieving all products router.get(`/all`, verify, verifyAdmin, productControllers.getAllProducts);