diff --git a/src/carrito/dto/output/carrito-min.dto.ts b/src/carrito/dto/output/carrito-min.dto.ts new file mode 100644 index 0000000..cc37c26 --- /dev/null +++ b/src/carrito/dto/output/carrito-min.dto.ts @@ -0,0 +1,19 @@ +import { Expose, Type } from 'class-transformer'; +import { TipoCarritoOutputDto } from '../../../institucion-tipo-carrito/dto/output/tipo-carrito.dto'; +import { ModuloMinOutputDto } from '../../../modulo/dto/output/modulo-min.dto'; + +export class CarritoMinOutputDto { + @Expose() + id_carrito; + + @Expose() + carrito; + + @Type(() => ModuloMinOutputDto) + @Expose() + modulo; + + @Type(() => TipoCarritoOutputDto) + @Expose() + tipoCarrito; +} diff --git a/src/equipo-programa/dto/equipo-programa-create.dto.ts b/src/equipo-programa/dto/input/create.dto.ts similarity index 74% rename from src/equipo-programa/dto/equipo-programa-create.dto.ts rename to src/equipo-programa/dto/input/create.dto.ts index 3c49546..6f3ffd6 100644 --- a/src/equipo-programa/dto/equipo-programa-create.dto.ts +++ b/src/equipo-programa/dto/input/create.dto.ts @@ -1,6 +1,6 @@ import { IsInt } from 'class-validator'; -export class EquipoProgramaCreateDto { +export class CreateEquipoProgramaDto { @IsInt() id_equipo: number; diff --git a/src/equipo-programa/dto/equipo-programa-delete.dto.ts b/src/equipo-programa/dto/input/delete.dto.ts similarity index 68% rename from src/equipo-programa/dto/equipo-programa-delete.dto.ts rename to src/equipo-programa/dto/input/delete.dto.ts index 30bfe38..93be28d 100644 --- a/src/equipo-programa/dto/equipo-programa-delete.dto.ts +++ b/src/equipo-programa/dto/input/delete.dto.ts @@ -1,6 +1,6 @@ import { IsInt } from 'class-validator'; -export class EquipoProgramaDeleteDto { +export class DeleteEquipoProgramaDto { @IsInt() id_equipo_programa: number; } diff --git a/src/equipo-programa/dto/output/equipo-programa.dto.ts b/src/equipo-programa/dto/output/equipo-programa.dto.ts new file mode 100644 index 0000000..09d88c9 --- /dev/null +++ b/src/equipo-programa/dto/output/equipo-programa.dto.ts @@ -0,0 +1,11 @@ +import { Expose, Type } from 'class-transformer'; +import { ProgramaOutputDto } from '../../../institucion-programa/dto/output/programa.dto'; + +export class EquipoProgramaOutputDto { + @Expose() + id_equipo_programa; + + @Expose() + @Type(() => ProgramaOutputDto) + programa; +} diff --git a/src/equipo-programa/equipo-programa.controller.ts b/src/equipo-programa/equipo-programa.controller.ts index 62fcaae..3d07127 100644 --- a/src/equipo-programa/equipo-programa.controller.ts +++ b/src/equipo-programa/equipo-programa.controller.ts @@ -1,8 +1,8 @@ import { Body, Controller, Delete, Post } from '@nestjs/common'; import { ApiBody, ApiOperation, ApiTags } from '@nestjs/swagger'; import { EquipoProgramaService } from './equipo-programa.service'; -import { EquipoProgramaCreateDto } from './dto/equipo-programa-create.dto'; -import { EquipoProgramaDeleteDto } from './dto/equipo-programa-delete.dto'; +import { CreateEquipoProgramaDto } from './dto/input/create.dto'; +import { DeleteEquipoProgramaDto } from './dto/input/delete.dto'; @Controller('equipo-programa') @ApiTags('equipo-programa') export class EquipoProgramaController { @@ -17,7 +17,7 @@ export class EquipoProgramaController { description: 'Ambas variables son obligatorios.', examples: { ejemplo: { value: { id_equipo: 1, id_programa: 1 } } }, }) - create(@Body() body: EquipoProgramaCreateDto) { + create(@Body() body: CreateEquipoProgramaDto) { return this.equipoProgramaService.create(body.id_equipo, body.id_programa); } @@ -30,7 +30,7 @@ export class EquipoProgramaController { description: 'La variable id_equipo_programa es obligatoria.', examples: { ejemplo: { value: { id_equipo_programa: 1 } } }, }) - delete(@Body() body: EquipoProgramaDeleteDto) { + delete(@Body() body: DeleteEquipoProgramaDto) { return this.equipoProgramaService.delete(body.id_equipo_programa); } } diff --git a/src/equipo/dto/equipo.dto.ts b/src/equipo/dto/input/equipo.dto.ts similarity index 100% rename from src/equipo/dto/equipo.dto.ts rename to src/equipo/dto/input/equipo.dto.ts diff --git a/src/equipo/dto/equipo-equipos.dto.ts b/src/equipo/dto/input/equipos.dto.ts similarity index 94% rename from src/equipo/dto/equipo-equipos.dto.ts rename to src/equipo/dto/input/equipos.dto.ts index 343ffde..ff5ece3 100644 --- a/src/equipo/dto/equipo-equipos.dto.ts +++ b/src/equipo/dto/input/equipos.dto.ts @@ -1,6 +1,6 @@ import { IsNumberString, IsOptional, IsString } from 'class-validator'; -export class EquipoEquiposDto { +export class EquiposDto { @IsNumberString() pagina: string; diff --git a/src/equipo/dto/equipo-update.dto.ts b/src/equipo/dto/input/update.dto.ts similarity index 93% rename from src/equipo/dto/equipo-update.dto.ts rename to src/equipo/dto/input/update.dto.ts index 7e4db72..6a15586 100644 --- a/src/equipo/dto/equipo-update.dto.ts +++ b/src/equipo/dto/input/update.dto.ts @@ -1,7 +1,7 @@ import { Optional } from '@nestjs/common'; import { IsInt, IsString } from 'class-validator'; -export class EquipoUpdateDto { +export class UpdateEquipoDto { @IsInt() id_equipo: number; diff --git a/src/equipo/dto/output/equipo.dto.ts b/src/equipo/dto/output/equipo.dto.ts new file mode 100644 index 0000000..e865c80 --- /dev/null +++ b/src/equipo/dto/output/equipo.dto.ts @@ -0,0 +1,41 @@ +import { Expose, Type } from 'class-transformer'; +import { CarritoMinOutputDto } from '../../../carrito/dto/output/carrito-min.dto'; +import { StatusOutputDto } from '../../../status/dto/output/status.dto'; +import { InstitucionTipoEntradaOutputDto } from '../../../institucion-tipo-entrada/dto/output/institucion-tipo-entrada.dto'; +import { EquipoProgramaOutputDto } from '../../../equipo-programa/dto/output/equipo-programa.dto'; + +export class EquipoOutputDto { + @Expose() + equipo; + + @Expose() + id_equipo; + + @Expose() + marca; + + @Expose() + modelo; + + @Expose() + numero_inventario; + + @Expose() + numero_serie; + + @Expose() + @Type(() => CarritoMinOutputDto) + carrito; + + @Expose() + @Type(() => EquipoProgramaOutputDto) + programas; + + @Expose() + @Type(() => StatusOutputDto) + status; + + @Expose() + @Type(() => InstitucionTipoEntradaOutputDto) + tiposEntradas; +} diff --git a/src/equipo/dto/output/equipos.dto.ts b/src/equipo/dto/output/equipos.dto.ts new file mode 100644 index 0000000..f25a827 --- /dev/null +++ b/src/equipo/dto/output/equipos.dto.ts @@ -0,0 +1,22 @@ +import { Expose, Type } from 'class-transformer'; +import { CarritoMinOutputDto } from '../../../carrito/dto/output/carrito-min.dto'; +import { StatusOutputDto } from '../../../status/dto/output/status.dto'; + +export class EquiposOutputDto { + @Expose() + equipo; + + @Expose() + id_equipo; + + @Expose() + numero_inventario; + + @Expose() + @Type(() => CarritoMinOutputDto) + carrito; + + @Expose() + @Type(() => StatusOutputDto) + status; +} diff --git a/src/equipo/equipo.controller.ts b/src/equipo/equipo.controller.ts index da44af9..41713dd 100644 --- a/src/equipo/equipo.controller.ts +++ b/src/equipo/equipo.controller.ts @@ -1,15 +1,19 @@ import { Body, Controller, Get, Put, Query } from '@nestjs/common'; import { ApiOperation, ApiQuery, ApiTags } from '@nestjs/swagger'; +import { Serealize } from '../interceptors/serialize.interceptor'; import { EquipoService } from './equipo.service'; -import { EquipoDto } from './dto/equipo.dto'; -import { EquipoEquiposDto } from './dto/equipo-equipos.dto'; -import { EquipoUpdateDto } from './dto/equipo-update.dto'; +import { EquipoDto } from './dto/input/equipo.dto'; +import { EquiposDto } from './dto/input/equipos.dto'; +import { UpdateEquipoDto } from './dto/input/update.dto'; +import { EquipoOutputDto } from './dto/output/equipo.dto'; +import { EquiposOutputDto } from './dto/output/equipos.dto'; @Controller('equipo') @ApiTags('equipo') export class EquipoController { constructor(private equipoService: EquipoService) {} + @Serealize(EquipoOutputDto) @Get('equipo') @ApiOperation({ description: @@ -32,6 +36,7 @@ export class EquipoController { ); } + @Serealize(EquiposOutputDto) @Get('equipos') @ApiOperation({ description: @@ -77,12 +82,12 @@ export class EquipoController { name: 'id_tipo_entrada', type: 'string', }) - equipos(@Query() query: EquipoEquiposDto) { + equipos(@Query() query: EquiposDto) { return this.equipoService.findAll(query); } @Put() - update(@Body() body: EquipoUpdateDto) { + update(@Body() body: UpdateEquipoDto) { return this.equipoService.update(body); } }