import { Controller, Get, Post, Put, Body, Param, UseGuards } from '@nestjs/common'; import { ApiTags, ApiBearerAuth } from '@nestjs/swagger'; import { JwtAuthGuard } from '../auth/guards/jwt-auth.guard'; import { RequireCapability } from '../../common/decorators/capability.decorator'; import { ReserveComponentsService } from './reserve-components.service'; @ApiTags('reserve-components') @Controller('reserve-components') @ApiBearerAuth() @UseGuards(JwtAuthGuard) export class ReserveComponentsController { constructor(private service: ReserveComponentsService) {} @Get() @RequireCapability('planning.projects.view') findAll() { return this.service.findAll(); } @Get(':id') @RequireCapability('planning.projects.view') findOne(@Param('id') id: string) { return this.service.findOne(id); } @Post() @RequireCapability('planning.projects.edit') create(@Body() dto: any) { return this.service.create(dto); } @Put(':id') @RequireCapability('planning.projects.edit') update(@Param('id') id: string, @Body() dto: any) { return this.service.update(id, dto); } }