equipo y equipo-programa input output dto

This commit is contained in:
xXpuma99Xx 2022-06-14 11:43:07 -05:00
parent 702fb34de8
commit dff7efa80c
11 changed files with 111 additions and 13 deletions

View File

@ -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;
}

View File

@ -1,6 +1,6 @@
import { IsInt } from 'class-validator';
export class EquipoProgramaCreateDto {
export class CreateEquipoProgramaDto {
@IsInt()
id_equipo: number;

View File

@ -1,6 +1,6 @@
import { IsInt } from 'class-validator';
export class EquipoProgramaDeleteDto {
export class DeleteEquipoProgramaDto {
@IsInt()
id_equipo_programa: number;
}

View File

@ -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;
}

View File

@ -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);
}
}

View File

@ -1,6 +1,6 @@
import { IsNumberString, IsOptional, IsString } from 'class-validator';
export class EquipoEquiposDto {
export class EquiposDto {
@IsNumberString()
pagina: string;

View File

@ -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;

View File

@ -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;
}

View File

@ -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;
}

View File

@ -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);
}
}