feat: remove the permisson guard from the admin get
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
import { Body, Controller, Delete, Get, HttpCode, HttpStatus, Param, Patch, Post, Query, Res } from "@nestjs/common";
|
||||
import { ApiOperation, ApiTags } from "@nestjs/swagger";
|
||||
import { ApiOperation } from "@nestjs/swagger";
|
||||
import { FastifyReply } from "fastify";
|
||||
|
||||
import { ChangeEmailDto } from "./DTO/change-email.dto";
|
||||
@@ -21,15 +21,17 @@ import { PermissionEnum } from "./enums/permission.enum";
|
||||
import { AdminsService } from "./providers/admins.service";
|
||||
import { CustomersService } from "./providers/customers.service";
|
||||
import { UsersService } from "./providers/users.service";
|
||||
import { AdminRoute } from "../../common/decorators/admin.decorator";
|
||||
import { AuthGuards } from "../../common/decorators/auth-guard.decorator";
|
||||
import { PermissionsDec } from "../../common/decorators/permission.decorator";
|
||||
import { SkipAuth } from "../../common/decorators/skip-auth.decorator";
|
||||
import { UserDec } from "../../common/decorators/user.decorator";
|
||||
import { ParamDto } from "../../common/DTO/param.dto";
|
||||
import { RequestOtpDto } from "../auth/DTO/request-otp.dto";
|
||||
import { VerifyOtpDto } from "../auth/DTO/verify-otp.dto";
|
||||
|
||||
@AuthGuards()
|
||||
@Controller("users")
|
||||
@ApiTags("users")
|
||||
export class UsersController {
|
||||
constructor(
|
||||
private readonly usersService: UsersService,
|
||||
@@ -40,35 +42,30 @@ export class UsersController {
|
||||
//----------------------- user -----------------------
|
||||
|
||||
@ApiOperation({ summary: "Get user profile" })
|
||||
@AuthGuards()
|
||||
@Get("me")
|
||||
getMe(@UserDec("id") userId: string) {
|
||||
return this.usersService.getMe(userId);
|
||||
}
|
||||
|
||||
@ApiOperation({ summary: "Get legal user data" })
|
||||
@AuthGuards()
|
||||
@Get("legal")
|
||||
getLegalUserData(@UserDec("id") userId: string) {
|
||||
return this.usersService.getLegalUserData(userId);
|
||||
}
|
||||
|
||||
@ApiOperation({ summary: "Get real user data" })
|
||||
@AuthGuards()
|
||||
@Get("real")
|
||||
getRealUserData(@UserDec("id") userId: string) {
|
||||
return this.usersService.getRealUserData(userId);
|
||||
}
|
||||
|
||||
@ApiOperation({ summary: "Create real user data ==> user route" })
|
||||
@AuthGuards()
|
||||
@Post("real")
|
||||
createRealUser(@Body() createDto: CreateRealUserDto, @UserDec("id") userId: string) {
|
||||
return this.customersService.createRealUserData(createDto, userId);
|
||||
}
|
||||
|
||||
@ApiOperation({ summary: "Create legal user data ==> user route" })
|
||||
@AuthGuards()
|
||||
@Post("legal")
|
||||
createLegalUser(@Body() createDto: CreateLegalUserDto, @UserDec("id") userId: string) {
|
||||
return this.customersService.createLegalUserData(createDto, userId);
|
||||
@@ -76,34 +73,31 @@ export class UsersController {
|
||||
//----------------------- profile -----------------------
|
||||
|
||||
@ApiOperation({ summary: "Update user profile" })
|
||||
@AuthGuards()
|
||||
@Patch("update-profile")
|
||||
updateProfile(@Body() updateProfileDto: UpdateProfileDto, @UserDec("id") userId: string) {
|
||||
return this.usersService.updateProfile(userId, updateProfileDto);
|
||||
}
|
||||
|
||||
@ApiOperation({ summary: "change user email" })
|
||||
@AuthGuards()
|
||||
@Patch("change-email")
|
||||
changeEmail(@Body() changeEmailDto: ChangeEmailDto, @UserDec("id") userId: string) {
|
||||
return this.usersService.changeEmail(userId, changeEmailDto);
|
||||
}
|
||||
|
||||
@ApiOperation({ summary: "Verify email" })
|
||||
@SkipAuth()
|
||||
@Get("verify-email")
|
||||
verifyEmail(@Query() queryDto: EmailVerifyQueryDto, @Res({ passthrough: true }) rep: FastifyReply) {
|
||||
return this.usersService.verifyEmail(queryDto, rep);
|
||||
}
|
||||
|
||||
@ApiOperation({ summary: "change user phone" })
|
||||
@AuthGuards()
|
||||
@Patch("change-phone")
|
||||
changePhone(@Body() changeDto: RequestOtpDto, @UserDec("id") userId: string) {
|
||||
return this.usersService.changePhone(userId, changeDto);
|
||||
}
|
||||
|
||||
@ApiOperation({ summary: "Verify phone" })
|
||||
@AuthGuards()
|
||||
@HttpCode(HttpStatus.OK)
|
||||
@Patch("verify-phone")
|
||||
verifyPhone(@Body() verifyOtpDto: VerifyOtpDto, @UserDec("id") userId: string) {
|
||||
@@ -111,7 +105,6 @@ export class UsersController {
|
||||
}
|
||||
//
|
||||
@ApiOperation({ summary: "Check validity of user field" })
|
||||
@AuthGuards()
|
||||
@HttpCode(HttpStatus.OK)
|
||||
@Post("check-validity")
|
||||
checkValidity(@Body() checkValidityDto: CheckValidityDTO, @UserDec("id") userId: string) {
|
||||
@@ -119,7 +112,6 @@ export class UsersController {
|
||||
}
|
||||
|
||||
@ApiOperation({ summary: "Create user group ==> admin route" })
|
||||
@AuthGuards()
|
||||
@PermissionsDec(PermissionEnum.ADMINS, PermissionEnum.CUSTOMERS)
|
||||
@Post("user-group")
|
||||
createUserGroup(@Body() createDto: CreateUserGroupDto) {
|
||||
@@ -127,7 +119,6 @@ export class UsersController {
|
||||
}
|
||||
|
||||
@ApiOperation({ summary: "get all user group ==> admin route" })
|
||||
@AuthGuards()
|
||||
@PermissionsDec(PermissionEnum.ADMINS, PermissionEnum.CUSTOMERS)
|
||||
@Get("user-group")
|
||||
UserGroups() {
|
||||
@@ -135,7 +126,6 @@ export class UsersController {
|
||||
}
|
||||
|
||||
@ApiOperation({ summary: "get all users ==> admin route" })
|
||||
@AuthGuards()
|
||||
@PermissionsDec(PermissionEnum.ADMINS, PermissionEnum.CUSTOMERS)
|
||||
@Get()
|
||||
getUsers() {
|
||||
@@ -144,7 +134,6 @@ export class UsersController {
|
||||
//----------------------- customer -----------------------
|
||||
|
||||
@ApiOperation({ summary: "Create customer" })
|
||||
@AuthGuards()
|
||||
@HttpCode(HttpStatus.CREATED)
|
||||
@Post("customers")
|
||||
createCustomer(@Body() createDto: CreateCustomerDto) {
|
||||
@@ -152,14 +141,12 @@ export class UsersController {
|
||||
}
|
||||
|
||||
@ApiOperation({ summary: "Update customer" })
|
||||
@AuthGuards()
|
||||
@Patch("customers/:id")
|
||||
updateCustomer(@Param() paramDto: ParamDto, @Body() updateDto: UpdateCustomerDto) {
|
||||
return this.customersService.updateCustomer(paramDto.id, updateDto);
|
||||
}
|
||||
|
||||
@ApiOperation({ summary: "get customers ==> admin route" })
|
||||
@AuthGuards()
|
||||
@PermissionsDec(PermissionEnum.ADMINS, PermissionEnum.CUSTOMERS)
|
||||
@Get("customers")
|
||||
getCustomers(@Query() queryDto: SearchCustomersDto) {
|
||||
@@ -167,7 +154,6 @@ export class UsersController {
|
||||
}
|
||||
|
||||
@ApiOperation({ summary: "get customers by id ==> admin route" })
|
||||
@AuthGuards()
|
||||
@PermissionsDec(PermissionEnum.ADMINS, PermissionEnum.CUSTOMERS)
|
||||
@Get("customers/:id")
|
||||
getCustomerById(@Param() paramDto: ParamDto) {
|
||||
@@ -177,15 +163,14 @@ export class UsersController {
|
||||
//----------------------- admin -----------------------
|
||||
|
||||
@ApiOperation({ summary: "get all admins ==> admin route" })
|
||||
@AuthGuards()
|
||||
@PermissionsDec(PermissionEnum.ADMINS, PermissionEnum.CUSTOMERS)
|
||||
@AdminRoute()
|
||||
// @PermissionsDec(PermissionEnum.ADMINS, PermissionEnum.CUSTOMERS)
|
||||
@Get("admins")
|
||||
getAdmins(@Query() queryDto: SearchAdminQueryDto) {
|
||||
return this.adminsService.getAdmins(queryDto);
|
||||
}
|
||||
|
||||
@ApiOperation({ summary: "get admin by id ==> admin route" })
|
||||
@AuthGuards()
|
||||
@PermissionsDec(PermissionEnum.ADMINS, PermissionEnum.CUSTOMERS)
|
||||
@Get("admins/:id")
|
||||
getAdminById(@Param() paramDto: ParamDto) {
|
||||
@@ -193,7 +178,6 @@ export class UsersController {
|
||||
}
|
||||
|
||||
@ApiOperation({ summary: "update admin ==> admin route" })
|
||||
@AuthGuards()
|
||||
@PermissionsDec(PermissionEnum.ADMINS, PermissionEnum.CUSTOMERS)
|
||||
@Patch("admins/:id")
|
||||
updateAdmin(@Param() paramDto: ParamDto, @Body() updateDto: UpdateAdminDto) {
|
||||
@@ -201,7 +185,6 @@ export class UsersController {
|
||||
}
|
||||
|
||||
@ApiOperation({ summary: "delete admin ==> admin route" })
|
||||
@AuthGuards()
|
||||
@PermissionsDec(PermissionEnum.ADMINS, PermissionEnum.CUSTOMERS)
|
||||
@Delete("admins/:id")
|
||||
deleteAdmin(@Param() paramDto: ParamDto) {
|
||||
@@ -209,7 +192,6 @@ export class UsersController {
|
||||
}
|
||||
|
||||
@ApiOperation({ summary: "create admin ==> admin route" })
|
||||
@AuthGuards()
|
||||
@PermissionsDec(PermissionEnum.ADMINS, PermissionEnum.CUSTOMERS)
|
||||
@Post("admins")
|
||||
createAdmin(@Body() createDto: CreateAdminDto) {
|
||||
@@ -217,14 +199,12 @@ export class UsersController {
|
||||
}
|
||||
|
||||
@ApiOperation({ summary: "get admin permissions" })
|
||||
@AuthGuards()
|
||||
@Get("admin-permissions")
|
||||
getAdminPermissions(@UserDec("id") userId: string) {
|
||||
return this.adminsService.getAdminPermissions(userId);
|
||||
}
|
||||
|
||||
@ApiOperation({ summary: "get all permissions ==> admin route" })
|
||||
@AuthGuards()
|
||||
@PermissionsDec(PermissionEnum.ADMINS, PermissionEnum.CUSTOMERS)
|
||||
@Get("permissions")
|
||||
getPermissions() {
|
||||
@@ -232,7 +212,6 @@ export class UsersController {
|
||||
}
|
||||
|
||||
@ApiOperation({ summary: "get all roles ==> admin route" })
|
||||
@AuthGuards()
|
||||
@PermissionsDec(PermissionEnum.ADMINS, PermissionEnum.CUSTOMERS)
|
||||
@Get("roles")
|
||||
getRoles(@Query() queryDto: SearchRolesQueryDto) {
|
||||
@@ -240,7 +219,6 @@ export class UsersController {
|
||||
}
|
||||
|
||||
@ApiOperation({ summary: "create role ==> admin route" })
|
||||
@AuthGuards()
|
||||
@PermissionsDec(PermissionEnum.ADMINS, PermissionEnum.CUSTOMERS)
|
||||
@Post("roles")
|
||||
createRole(@Body() createDto: CreateRoleDto) {
|
||||
|
||||
Reference in New Issue
Block a user