import { Controller, Get, UseGuards } from '@nestjs/common';
import { JwtAuthGuard } from '../auth/guards/jwt-auth.guard';
import { RolesGuard } from '../auth/guards/roles.guard';
import { Roles } from '../auth/decorators/roles.decorator';
import { Role } from '../enums/role.enum';
import { PermissionsService } from '../services/permissions.service';

@Controller('permissions')
@UseGuards(JwtAuthGuard, RolesGuard)
export class PermissionsController {
  constructor(private readonly permissionsService: PermissionsService) {}

  @Get('user')
  @Roles(Role.ADMIN, Role.MANAGER, Role.WORKER, Role.CUSTOMER)
  async getUserPermissions() {
    return this.permissionsService.getUserPermissions();
  }

  @Get('all')
  @Roles(Role.ADMIN)
  async getAllPermissions() {
    return this.permissionsService.getAllPermissions();
  }
}
