import { Body, Controller, Get, Put, Query } from '@nestjs/common'; import { EquipoService } from './equipo.service'; import { EquipoDto } from './dto/equipo.dto'; import { ApiOperation, ApiQuery, ApiTags } from '@nestjs/swagger'; import { EquipoEquiposDto } from './dto/equipo-equipos.dto'; import { EquipoUpdateDto } from './dto/equipo-update.dto'; @Controller('equipo') @ApiTags('equipo') export class EquipoController { constructor(private equipoService: EquipoService) {} @Get('equipo') @ApiOperation({ description: 'Endpoint que retorna la información de un equipo.', }) @ApiQuery({ description: 'Id de la institución.', name: 'id_institucion', type: 'string', }) @ApiQuery({ description: 'El número de inventario del equipo que se busca.', name: 'numero_inventario', type: 'string', }) equipo(@Query() query: EquipoDto) { return this.equipoService.findByNumeroInventario( parseInt(query.id_institucion), query.numero_inventario, ); } @Get('equipos') @ApiOperation({ description: 'Endpoint que retorna 15 equipos dependiendo de la página en la que esta el usuario y sus filtros.', }) @ApiQuery({ description: 'Página en la que se encuentra el usuario.', name: 'pagina', type: 'string', }) @ApiQuery({ description: 'Carrito que se quiere usar como filtro.', name: 'carrito', type: 'string', }) @ApiQuery({ description: 'Equipo que se quiere usar como filtro.', name: 'equipo', type: 'string', }) @ApiQuery({ description: 'Id del tipo de carrito que se quiere usar como filtro.', name: 'id_tipo_carrito', type: 'string', }) @ApiQuery({ description: 'Id del status que se quiere usar como filtro.', name: 'id_status', type: 'string', }) @ApiQuery({ description: 'Id del programa que se quiere usar como filtro.', name: 'id_programa', type: 'string', }) @ApiQuery({ description: 'Id del módulo que se quiere usar como filtro.', name: 'id_modulo', type: 'string', }) // @ApiQuery({ // description: 'Id del tipo de entrada que se quiere usar como filtro.', // name: 'id_tipo_entrada', // type: 'string', // }) equipos(@Query() query: EquipoEquiposDto) { return this.equipoService.findAll(query); } @Put() update(@Body() body: EquipoUpdateDto) { return this.equipoService.update(body); } }