diff --git a/resources/SalesCoOrdinators/SalesCoOrdinatorController.js b/resources/SalesCoOrdinators/SalesCoOrdinatorController.js index 69d29a3..c5f6556 100644 --- a/resources/SalesCoOrdinators/SalesCoOrdinatorController.js +++ b/resources/SalesCoOrdinators/SalesCoOrdinatorController.js @@ -175,6 +175,49 @@ export const logout = catchAsyncErrors(async (req, res, next) => { }); //get All salescoordinator export const getAllSalesCoOrdinator = async (req, res) => { + try { + const PAGE_SIZE = parseInt(req.query?.show || "10"); + const page = parseInt(req.query?.page || "1") - 1; + if (!req.user || !req.user._id) { + return res.status(401).json({ + success: false, + message: "Please login to a TM account", + }); + } + let filter = {}; + if (req.query?.name) { + filter.name = { + $regex: new RegExp(req.query.name, "i"), + }; + } + if (req.query?.mobileNumber) { + filter.mobileNumber = { + $regex: new RegExp(req.query.mobileNumber, "i"), + }; + } + if (req.query?.isVerified) { + filter.isVerified = req.query.isVerified === "true"; + } + const total = await SalesCoOrdinator.countDocuments(filter); + const salesCoOrinators = await SalesCoOrdinator.find(filter) + .limit(PAGE_SIZE) + .skip(PAGE_SIZE * page) + .sort({ createdAt: -1 }); + + return res.status(200).json({ + success: true, + total_data: total, + total_pages: Math.ceil(total / PAGE_SIZE), + salesCoOrinators, + }); + } catch (error) { + res.status(500).json({ + success: false, + message: error.message ? error.message : "Something went wrong!", + }); + } +}; +export const getAllSalesCoOrdinatorforTM_App = async (req, res) => { try { const PAGE_SIZE = parseInt(req.query?.show || "10"); const page = parseInt(req.query?.page || "1") - 1; diff --git a/resources/SalesCoOrdinators/SalesCoOrdinatorRoute.js b/resources/SalesCoOrdinators/SalesCoOrdinatorRoute.js index 2359904..e37a7da 100644 --- a/resources/SalesCoOrdinators/SalesCoOrdinatorRoute.js +++ b/resources/SalesCoOrdinators/SalesCoOrdinatorRoute.js @@ -19,6 +19,7 @@ import { getAllSalesCoOrdinatorbytmId, mappedbyTM, unmapSalesCoOrdinator, + getAllSalesCoOrdinatorforTM_App, } from "./SalesCoOrdinatorController.js"; import { isAuthenticatedSalesCoOrdinator } from "../../middlewares/SalesCoOrdinatorAuth.js"; import { isAuthenticatedTerritoryManager } from "../../middlewares/TerritoryManagerAuth.js"; @@ -38,7 +39,7 @@ router.get( router.get( "/getAll-TM", isAuthenticatedTerritoryManager, - getAllSalesCoOrdinator + getAllSalesCoOrdinatorforTM_App ); router.get( "/getbyTmId/:id",