diff --git a/src/movimiento/movimiento.controller.ts b/src/movimiento/movimiento.controller.ts index 5af90a0..e7b01a7 100644 --- a/src/movimiento/movimiento.controller.ts +++ b/src/movimiento/movimiento.controller.ts @@ -4,6 +4,7 @@ import { MovimientoService } from './movimiento.service'; import { Movimiento } from '../entities/entities'; import { AuthGuard } from '@nestjs/passport'; import { ApiTags, ApiBearerAuth, ApiOperation, ApiResponse } from '@nestjs/swagger'; +import { MovimientoDocumentation } from './movimiento.documentation'; @ApiTags('Movimientos') @ApiBearerAuth('bearer') @@ -13,6 +14,7 @@ export class MovimientoController { constructor(private readonly movimientoService: MovimientoService) {} @Get() + @MovimientoDocumentation.findAllmov() @ApiOperation({ summary: 'Listar movimientos', description: 'Obtiene todos los registros de movimientos con usuario y origen.' }) @ApiResponse({ status: 200, description: 'Listado de movimientos', type: Movimiento, isArray: true }) async findAll(): Promise { diff --git a/src/movimiento/movimiento.documentation.ts b/src/movimiento/movimiento.documentation.ts new file mode 100644 index 0000000..b404656 --- /dev/null +++ b/src/movimiento/movimiento.documentation.ts @@ -0,0 +1,26 @@ +import { applyDecorators } from '@nestjs/common'; +import { ApiTags, ApiBearerAuth, ApiOperation, ApiResponse } from '@nestjs/swagger'; +import { Movimiento } from '../entities/entities'; + +export class MovimientoDocumentation { + /** + * Decorators Swagger para el endpoint GET /movimientos + */ + static findAllmov() { + return applyDecorators( + ApiTags('Movimientos'), + ApiBearerAuth('bearer'), + ApiOperation({ + summary: 'Listar todos los movimientos', + description: 'Devuelve el histórico completo de movimientos, incluyendo usuario y origen.' + }), + ApiResponse({ + status: 200, + description: 'Listado de movimientos exitoso.', + type: Movimiento, + isArray: true + }), + ApiResponse({ status: 401, description: 'No autorizado.' }), + ); + } +}