diff --git a/mariadb/aria_log.00000001 b/mariadb/aria_log.00000001 index 79f42a4..5e7e976 100644 Binary files a/mariadb/aria_log.00000001 and b/mariadb/aria_log.00000001 differ diff --git a/mariadb/aria_log_control b/mariadb/aria_log_control index 7bfae84..b7d38e4 100644 Binary files a/mariadb/aria_log_control and b/mariadb/aria_log_control differ diff --git a/src/equipo/dto/create-equipo.dto.ts b/src/equipo/dto/create-equipo.dto.ts index 6b2a034..6190df3 100644 --- a/src/equipo/dto/create-equipo.dto.ts +++ b/src/equipo/dto/create-equipo.dto.ts @@ -1,3 +1,42 @@ +import { IsString, IsOptional, IsDateString, IsInt } from 'class-validator'; + export class CreateEquipoDto { - + @IsString() + inventario: string; + + @IsString() + serie: string; + + @IsString() + lugar: string; + + @IsDateString() + fechaFactura: Date; + + @IsString() + antiguedad: string; + + @IsString() + modelo: string; + + @IsInt() + id_estado: number; + + @IsInt() + id_adscripcion: number; + + @IsInt() + id_tipo_equipo: number; + + @IsInt() + id_sistema_operativo: number; + + @IsInt() + id_procesador: number; + + @IsInt() + id_uso: number; + + @IsInt() + id_marca: number; } diff --git a/src/equipo/entities/equipo.entity.ts b/src/equipo/entities/equipo.entity.ts index 2dd9f8f..b856799 100644 --- a/src/equipo/entities/equipo.entity.ts +++ b/src/equipo/entities/equipo.entity.ts @@ -75,7 +75,4 @@ export class Equipo { @JoinColumn({ name: 'id_marca' }) @ManyToOne(() => Marca, (marca) => marca.equipo) marca: Marca; - - @OneToMany(() => Equipo, (equipo) => equipo.marca) - equipo: Equipo[]; } diff --git a/src/equipo/equipo.controller.ts b/src/equipo/equipo.controller.ts index 886499f..430f2de 100644 --- a/src/equipo/equipo.controller.ts +++ b/src/equipo/equipo.controller.ts @@ -7,10 +7,13 @@ import { UseGuards, Get, Query, + Post, } from '@nestjs/common'; import { EquipoService } from './equipo.service'; import { UpdateEquipoDto } from './dto/update-equipo.dto'; import { AuthGuard } from '@nestjs/passport'; +import { Equipo } from './entities/equipo.entity'; +import { CreateEquipoDto } from './dto/create-equipo.dto'; @Controller('equipos') export class EquipoController { @@ -31,6 +34,12 @@ export class EquipoController { return this.equipoService.findEquipo(inv); } + @UseGuards(AuthGuard('jwt')) + @Post('crear') + create(@Body() Equipo: CreateEquipoDto) { + return this.equipoService.create(Equipo); + } + @UseGuards(AuthGuard('jwt')) @Patch('update/:id') update( diff --git a/src/equipo/equipo.service.ts b/src/equipo/equipo.service.ts index c722180..5755257 100644 --- a/src/equipo/equipo.service.ts +++ b/src/equipo/equipo.service.ts @@ -14,6 +14,7 @@ import { Uso, } from './entities/catalogo.entities'; import { response } from 'express'; +import { CreateEquipoDto } from './dto/create-equipo.dto'; @Injectable() export class EquipoService { @@ -221,4 +222,24 @@ export class EquipoService { const response = await axios.post(url, entrada); return response.data; } + + create(equipo: CreateEquipoDto) { + const nuevoEquipo = this.equipoRepository.create({ + inventario: equipo.inventario, + serie: equipo.serie, + lugar: equipo.lugar, + fechaFactura: equipo.fechaFactura, + antiguedad: equipo.antiguedad, + modelo: equipo.modelo, + estado: { id_estado: equipo.id_estado }, + adscripcion: { id_adscripcion: equipo.id_adscripcion }, + tipoEquipo: { id_tipo_de_equipo: equipo.id_tipo_equipo }, + sistemaOperativo: { id_sistema_operativo: equipo.id_sistema_operativo }, + procesador: { id_procesador: equipo.id_procesador }, + tipoUso: { id_tipo_uso: equipo.id_uso }, + marca: { id_marca: equipo.id_marca }, + }); + + return this.equipoRepository.save(nuevoEquipo); + } }