diff --git a/backend-services/user-service/controllers/appController.js b/backend-services/user-service/controllers/appController.js index d453a4f72e328f41ed25e764d1da29f2b5be7893..40e1ca87f5a69d7a72013d01ffa98ec8dc52ab45 100644 --- a/backend-services/user-service/controllers/appController.js +++ b/backend-services/user-service/controllers/appController.js @@ -206,7 +206,7 @@ export async function updateUser(req,res){ } /** - * GET /userlist + * POST /userlist * This DOES NOT return emails and passwords * @param {*} req * @param {*} res @@ -235,15 +235,17 @@ export const GetUserList = async (req,res) => { */ export const Search = async (req,res) => { try { - const {query} = req.body; + const {searchQuery} = req.query; - if(query === undefined || query.length === 0){ + console.log(searchQuery) + + if(searchQuery === undefined || searchQuery.length === 0){ throw new Error("Please provide a valid query!") } - const usersWithMatchingId = await UserModel.find({"username": {"$regex": `^${query}`}}, {password: 0, email: 0}) - const usersWithMatchingName = await UserModel.find({$or: [{"firstName": {"$regex": `^${query}`}}, {"lastName": {"$regex": `^${query}`}}]}, {password: 0, email: 0}) - return res.status(201).send({ usersById: usersWithMatchingId, usersByName: usersWithMatchingName}); + const usersWithMatchingUsername = await UserModel.find({"username": {"$regex": `^${searchQuery}`}}, {password: 0, email: 0}) + const usersWithMatchingName = await UserModel.find({$or: [{"firstName": {"$regex": `^${searchQuery}`,"$options": 'i'}}, {"lastName": {"$regex": `^${searchQuery}`,"$options": 'i'}}]}, {password: 0, email: 0}) + return res.status(201).send({ usersByUsername: usersWithMatchingUsername, usersByName: usersWithMatchingName}); } catch(error){ return res.status(401).send({ error: error.message }); } diff --git a/backend-services/user-service/router/route.js b/backend-services/user-service/router/route.js index 06ca47098dd7b18b229fbafaf0a990737258fff6..fc224040c2ed55e216cd7465d5b0afde63403f78 100644 --- a/backend-services/user-service/router/route.js +++ b/backend-services/user-service/router/route.js @@ -8,10 +8,10 @@ const router = Router(); /** POST Methods */ router.route('/register').post(controller.register); // Register router.route('/login').post(controller.verifyUser, controller.login); // Login +router.route('/userlist').post(controller.GetUserList) // Get user list /** GET Methods */ router.route('/user/:username').get(controller.getUser); // GetUser -router.route('/userlist').get(controller.GetUserList) // Get user list router.route("/search").get(controller.Search) // Search