|
|
|
@ -10,14 +10,21 @@ export class AdminController { |
|
|
|
|
constructor(private readonly adminService: AdminService) {} |
|
|
|
|
// register as a admin
|
|
|
|
|
@Post("register") |
|
|
|
|
async register(@Body() createAdminDto: CreateAdminDto): Promise<{message}> { |
|
|
|
|
async register(@Body() createAdminDto: CreateAdminDto): Promise<{ message }> { |
|
|
|
|
return this.adminService.register(createAdminDto); |
|
|
|
|
} |
|
|
|
|
//login as admin
|
|
|
|
|
@Post("login") |
|
|
|
|
async login(@Body() loginAdminDto: LoginAdminDto): Promise<{ accessToken, refreshToken }> { |
|
|
|
|
async login(@Body() loginAdminDto: LoginAdminDto): Promise<{ accessToken; refreshToken }> { |
|
|
|
|
return this.adminService.login(loginAdminDto); |
|
|
|
|
} |
|
|
|
|
//logout user
|
|
|
|
|
@UseGuards(RoleGuard) |
|
|
|
|
@Get("logout") |
|
|
|
|
async logout(@Request() req) { |
|
|
|
|
const userId = req.user.id; |
|
|
|
|
return this.adminService.logout(userId); |
|
|
|
|
} |
|
|
|
|
//get a new access token
|
|
|
|
|
@Post("new-token") |
|
|
|
|
async newAccessToken(@Body("refreshToken") refreshToken: string) { |
|
|
|
@ -26,7 +33,7 @@ export class AdminController { |
|
|
|
|
//edit admin profile
|
|
|
|
|
@UseGuards(RoleGuard) |
|
|
|
|
@Put() |
|
|
|
|
async editAdminProfile(@Request() req, @Body() updateAdminDto: UpdateUserDto): Promise<{message}>{ |
|
|
|
|
async editAdminProfile(@Request() req, @Body() updateAdminDto: UpdateUserDto): Promise<{ message }> { |
|
|
|
|
const userId = req.user.id; |
|
|
|
|
return this.adminService.editAdminProfile(userId, updateAdminDto); |
|
|
|
|
} |
|
|
|
|