Skip to content

Commit

Permalink
getUser
Browse files Browse the repository at this point in the history
  • Loading branch information
likui628 committed Oct 2, 2024
1 parent 67ded60 commit ac6f8ec
Show file tree
Hide file tree
Showing 4 changed files with 22 additions and 2 deletions.
4 changes: 2 additions & 2 deletions src/controllers/auth.ts
Original file line number Diff line number Diff line change
Expand Up @@ -18,15 +18,15 @@ export const register = asyncHandler(async (req: Request, res: Response) => {
const user = await userService.createUser(req.body)
const token = await handleTokens(user, res)

successResponse(res, { ...user, password: undefined, token }, 201)
successResponse(res, { ...user, token }, 201)
})

export const login = asyncHandler(async (req: Request, res: Response) => {
const { email, password } = req.body
const user = await authService.loginUserWithEmailAndPassword(email, password)
const token = await handleTokens(user, res)

successResponse(res, { ...user, password: undefined, token }, 200)
successResponse(res, { ...user, token }, 200)
})

export const logout = asyncHandler(async (req: Request, res: Response) => {
Expand Down
5 changes: 5 additions & 0 deletions src/controllers/user.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,8 @@ export const createUser = asyncHandler(async (req: Request, res: Response) => {
const user = await userService.createUser(newUser)
successResponse(res, user, 201)
})

export const getUser = asyncHandler(async (req: Request, res: Response) => {
const users = await userService.getUserById(req.params.userId)
successResponse(res, users)
})
9 changes: 9 additions & 0 deletions src/routes/v1/user.ts
Original file line number Diff line number Diff line change
Expand Up @@ -21,4 +21,13 @@ router
userController.createUser,
)

router
.route('/:userId')
.get(
verifyJwt,
verifyRoles('getUsers'),
validate(userValidation.getUserSchema),
userController.getUser,
)

export default router
6 changes: 6 additions & 0 deletions src/validations/user.ts
Original file line number Diff line number Diff line change
Expand Up @@ -19,3 +19,9 @@ export const createUserSchema = z.object({
role: z.enum([Role.ADMIN, Role.USER]),
}),
})

export const getUserSchema = z.object({
params: z.object({
userId: z.string().uuid(),
}),
})

0 comments on commit ac6f8ec

Please sign in to comment.