From 54276b5620b0d14a1ea6ebeef36da0a9b3d6bd0f Mon Sep 17 00:00:00 2001 From: YashJain2409 Date: Wed, 26 Oct 2022 18:58:23 +0530 Subject: [PATCH 1/3] move admin controller to user controller --- src/controllers/admin.controller.ts | 105 ---------------------------- src/controllers/user.controller.ts | 70 ++++++++++++++++++- 2 files changed, 68 insertions(+), 107 deletions(-) delete mode 100644 src/controllers/admin.controller.ts diff --git a/src/controllers/admin.controller.ts b/src/controllers/admin.controller.ts deleted file mode 100644 index d0a47e42..00000000 --- a/src/controllers/admin.controller.ts +++ /dev/null @@ -1,105 +0,0 @@ -import { Request, Response } from "express"; -import { StatusCodes } from "http-status-codes"; -import { DeleteUserSchema, PatchMarkUserVerifiedSchema } from "../schemas/admin.schema"; -import { - deleteUserByIdService, - findUsersService, - updateUserByIdService, -} from "../services/user.service"; -import logger from "../utils/logger.util"; - -/** - * This controller will get all users from database - * - * @param req request - * @param res response - * - * @author aayushchugh, is-itayush - */ -export const getAllUsersHandler = async (req: Request, res: Response) => { - try { - const records = await findUsersService(); - - return res.status(StatusCodes.OK).json({ - message: "Users fetched successfully", - records, - }); - } catch (err) { - logger.error(err); - - return res.status(StatusCodes.INTERNAL_SERVER_ERROR).json({ - error: "Internal Server Error", - }); - } -}; - -/** - * This controller will delete user from database - * - * @param req request - * @param res response - * - * @author aayushchugh, is-it-ayush - */ -export const deleteUserHandler = async ( - req: Request, - res: Response, -) => { - const { id } = req.params; - - try { - const deletedUser = await deleteUserByIdService(id); - - if (!deletedUser) { - return res.status(StatusCodes.NOT_FOUND).json({ - error: "User not found", - }); - } - - return res.status(StatusCodes.OK).json({ - message: "User deleted successfully", - }); - } catch (err) { - logger.error(err); - - return res.status(StatusCodes.INTERNAL_SERVER_ERROR).json({ - error: "Internal Server Error", - }); - } -}; - -/** - * This controller will mark user as verified. - * this can be used by admin to mark any user as verified - * - * @param req request - * @param res response - * - * @author aayushchugh, is-it-ayush - */ -export const patchMarkUserVerifiedHandler = async ( - req: Request, - res: Response, -) => { - const { id } = req.params; - - try { - const verifiedUser = await updateUserByIdService(id, { verified: true }); - - if (!verifiedUser) { - return res.status(StatusCodes.NOT_FOUND).json({ - error: "User not found", - }); - } - - return res.status(StatusCodes.OK).json({ - message: "User verified successfully", - }); - } catch (err) { - logger.error(err); - - return res.status(StatusCodes.INTERNAL_SERVER_ERROR).json({ - error: "Internal Server Error", - }); - } -}; diff --git a/src/controllers/user.controller.ts b/src/controllers/user.controller.ts index 98494d43..765bad30 100644 --- a/src/controllers/user.controller.ts +++ b/src/controllers/user.controller.ts @@ -1,11 +1,75 @@ import { Request, Response } from "express"; import { StatusCodes } from "http-status-codes"; -import { PatchMarkUserAdminSchema, PatchMarkUserVerifiedSchema } from "../schemas/admin.schema"; +import { PatchMarkUserAdminSchema, PatchMarkUserVerifiedSchema,DeleteUserSchema } from "../schemas/admin.schema"; import { PatchUserSchema } from "../schemas/user.schema"; -import { findUserByUsernameService, updateUserByIdService } from "../services/user.service"; +import { findUserByUsernameService, updateUserByIdService,deleteUserByIdService,findUsersService } from "../services/user.service"; import logger from "../utils/logger.util"; + + +/** + * This controller will get all users from database + * + * @param req request + * @param res response + * + * @author aayushchugh, is-itayush + */ +export const getAllUsersHandler = async (req: Request, res: Response) => { + try { + const records = await findUsersService(); + + return res.status(StatusCodes.OK).json({ + message: "Users fetched successfully", + records, + }); + } catch (err) { + logger.error(err); + + return res.status(StatusCodes.INTERNAL_SERVER_ERROR).json({ + error: "Internal Server Error", + }); + } +}; + +/** + * This controller will delete user from database + * + * @param req request + * @param res response + * + * @author aayushchugh, is-it-ayush + */ +export const deleteUserHandler = async ( + req: Request, + res: Response, +) => { + const { id } = req.params; + + try { + const deletedUser = await deleteUserByIdService(id); + + if (!deletedUser) { + return res.status(StatusCodes.NOT_FOUND).json({ + error: "User not found", + }); + } + + return res.status(StatusCodes.OK).json({ + message: "User deleted successfully", + }); + } catch (err) { + logger.error(err); + + return res.status(StatusCodes.INTERNAL_SERVER_ERROR).json({ + error: "Internal Server Error", + }); + } +}; + + + /** * This controller will update user's username * @@ -14,6 +78,8 @@ import logger from "../utils/logger.util"; * * @author aayushchugh */ + + export const patchUserHandler = async ( req: Request, res: Response, From 726f8893f3ac54cef11c4c387cfdd8444cf9d473 Mon Sep 17 00:00:00 2001 From: YashJain2409 Date: Wed, 26 Oct 2022 19:07:53 +0530 Subject: [PATCH 2/3] update imports --- src/routes/admin.routes.ts | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/src/routes/admin.routes.ts b/src/routes/admin.routes.ts index e1bca8f0..490a4792 100644 --- a/src/routes/admin.routes.ts +++ b/src/routes/admin.routes.ts @@ -1,15 +1,10 @@ import { Router } from "express"; -import { - deleteUserHandler, - getAllUsersHandler, - patchMarkUserVerifiedHandler, -} from "../controllers/admin.controller"; import { createMarketingEmailHandler } from "../controllers/marketingEmail.controller"; import validateRequest from "../middleware/validateRequest.middleware"; import { deleteUserSchema, patchMarkUserVerifiedSchema } from "../schemas/admin.schema"; import { createMarketingEmailSchema } from "../schemas/marketingEmail.schema"; import { patchMarkUserAdminSchema } from "../schemas/admin.schema"; -import { patchMarkUserAdminHandler } from "../controllers/user.controller"; +import { patchMarkUserAdminHandler,deleteUserHandler,getAllUsersHandler,patchMarkUserVerifiedHandler } from "../controllers/user.controller"; const adminRouter: Router = Router(); From 419eaff153c5fbc07f9459470aec4789d790babf Mon Sep 17 00:00:00 2001 From: YashJain2409 Date: Wed, 26 Oct 2022 19:23:00 +0530 Subject: [PATCH 3/3] format imports --- src/controllers/user.controller.ts | 4 ++-- src/routes/admin.routes.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/controllers/user.controller.ts b/src/controllers/user.controller.ts index 765bad30..7ab994bd 100644 --- a/src/controllers/user.controller.ts +++ b/src/controllers/user.controller.ts @@ -1,9 +1,9 @@ import { Request, Response } from "express"; import { StatusCodes } from "http-status-codes"; -import { PatchMarkUserAdminSchema, PatchMarkUserVerifiedSchema,DeleteUserSchema } from "../schemas/admin.schema"; +import { PatchMarkUserAdminSchema, PatchMarkUserVerifiedSchema, DeleteUserSchema } from "../schemas/admin.schema"; import { PatchUserSchema } from "../schemas/user.schema"; -import { findUserByUsernameService, updateUserByIdService,deleteUserByIdService,findUsersService } from "../services/user.service"; +import { findUserByUsernameService, updateUserByIdService, deleteUserByIdService, findUsersService } from "../services/user.service"; import logger from "../utils/logger.util"; diff --git a/src/routes/admin.routes.ts b/src/routes/admin.routes.ts index 490a4792..31d8a6ab 100644 --- a/src/routes/admin.routes.ts +++ b/src/routes/admin.routes.ts @@ -4,7 +4,7 @@ import validateRequest from "../middleware/validateRequest.middleware"; import { deleteUserSchema, patchMarkUserVerifiedSchema } from "../schemas/admin.schema"; import { createMarketingEmailSchema } from "../schemas/marketingEmail.schema"; import { patchMarkUserAdminSchema } from "../schemas/admin.schema"; -import { patchMarkUserAdminHandler,deleteUserHandler,getAllUsersHandler,patchMarkUserVerifiedHandler } from "../controllers/user.controller"; +import { patchMarkUserAdminHandler, deleteUserHandler, getAllUsersHandler, patchMarkUserVerifiedHandler } from "../controllers/user.controller"; const adminRouter: Router = Router();