cambio de la base de datos

This commit is contained in:
2025-11-11 13:48:45 -06:00
parent 61b9dbc3bf
commit 679b1d5f20
7 changed files with 12 additions and 122 deletions
Binary file not shown.
Binary file not shown.
+2 -1
View File
@@ -39,7 +39,8 @@ export class CreateEquipoDto {
id_sistema_operativo: number;
@IsInt()
id_procesador: number;
@IsOptional()
id_procesador?: number;
@IsInt()
id_uso: number;
+2 -24
View File
@@ -1,8 +1,6 @@
import {
Column,
Entity,
JoinColumn,
ManyToOne,
OneToMany,
PrimaryColumn,
PrimaryGeneratedColumn,
@@ -64,9 +62,6 @@ export class TipoEquipo {
@Column({ type: 'varchar', length: 200 })
tipo_equipo: string;
@OneToMany(() => ProcesadorTipoEquipo, (pte) => pte.tipoEquipo)
procesadorTipoEquipos: ProcesadorTipoEquipo[];
@OneToMany(() => Equipo, (eqp) => eqp.tipoEquipo)
equipo: Equipo[];
}
@@ -91,8 +86,8 @@ export class Procesador {
@Column({ type: 'varchar', length: 200 })
procesador: string;
@OneToMany(() => ProcesadorTipoEquipo, (pte) => pte.procesador)
procesadorTipoEquipos: ProcesadorTipoEquipo[];
@OneToMany(() => Equipo, (equipo) => equipo.procesador)
equipo: Equipo[];
}
@Entity()
@@ -106,20 +101,3 @@ export class Periferico {
@OneToMany(() => Equipo, (equipo) => equipo.periferico)
equipo: Equipo[];
}
@Entity('procesador_tipoequipo')
export class ProcesadorTipoEquipo {
@PrimaryGeneratedColumn({ name: 'id_Procesador_tipoEquipo' })
id: number;
@ManyToOne(() => Procesador, (procesador) => procesador.procesadorTipoEquipos)
@JoinColumn({ name: 'id_procesador' })
procesador: Procesador;
@ManyToOne(() => TipoEquipo, (tipoEquipo) => tipoEquipo.procesadorTipoEquipos)
@JoinColumn({ name: 'id_tipoeEquipo' })
tipoEquipo: TipoEquipo;
@OneToMany(() => Equipo, (equipo) => equipo.procesador_tipoequipo)
equipo: Equipo[];
}
+3 -7
View File
@@ -12,7 +12,6 @@ import {
Marca,
Periferico,
Procesador,
ProcesadorTipoEquipo,
SistemaOperativo,
TipoEquipo,
Uso,
@@ -66,12 +65,9 @@ export class Equipo {
@ManyToOne(() => TipoEquipo, (tipoEquipo) => tipoEquipo.equipo)
tipoEquipo: TipoEquipo;
@JoinColumn({ name: 'id_procesador_tipoEquipo' })
@ManyToOne(
() => ProcesadorTipoEquipo,
(procesador_tipoequipo) => procesador_tipoequipo.equipo,
)
procesador_tipoequipo: ProcesadorTipoEquipo;
@JoinColumn({ name: 'id_procesador' })
@ManyToOne(() => Procesador, (procesador) => procesador.equipo)
procesador: Procesador;
@JoinColumn({ name: 'id_uso' })
@ManyToOne(() => Uso, (tipoUso) => tipoUso.equipo)
-13
View File
@@ -103,14 +103,6 @@ export class EquipoController {
return this.equipoService.findAllProcesadorTipoEquipos();
}
@UseGuards(AuthGuard('jwt'))
@Get('procesador-tipo-equipos/:idEquipo')
findProcesadorforTipoEquipos(
@Param('idEquipo', ParseIntPipe) idEquipo: number,
) {
return this.equipoService.findAllProcesadorforTipoEquipos(idEquipo);
}
@UseGuards(AuthGuard('jwt'))
@Get('reporteXLSX')
async generarReporte(@Res() res: Response) {
@@ -131,9 +123,4 @@ export class EquipoController {
throw new BadRequestException('Error al generar el reporte:', error);
}
}
@UseGuards(AuthGuard('jwt'))
@Post('example')
async generate() {
this.equipoService.example();
}
}
+5 -77
View File
@@ -16,7 +16,6 @@ import {
Marca,
Periferico,
Procesador,
ProcesadorTipoEquipo,
SistemaOperativo,
TipoEquipo,
Uso,
@@ -56,9 +55,6 @@ export class EquipoService {
@InjectRepository(Periferico)
private readonly perifericoRepo: Repository<Periferico>,
@InjectRepository(ProcesadorTipoEquipo)
private readonly procesadorTipoEquipoRepo: Repository<ProcesadorTipoEquipo>,
) {}
async buscarEquipos(filtros: any, page: number = 1, limit: number = 10) {
@@ -143,29 +139,6 @@ export class EquipoService {
throw new NotFoundException('No se encontó equipo');
}
let procesador_tipoequipo;
if (equipoNuevo.id_procesador) {
procesador_tipoequipo = await this.procesadorTipoEquipoRepo.findOne({
where: {
procesador: { id_procesador: equipoNuevo.id_procesador },
tipoEquipo: {
id_tipo_de_equipo: equipo.tipoEquipo.id_tipo_de_equipo,
},
},
relations: ['procesador_tipoequipo', 'tipoEquipo'],
});
if (!procesador_tipoequipo) {
procesador_tipoequipo = await this.procesadorTipoEquipoRepo.save({
procesador: { id_procesador: equipoNuevo.id_procesador },
tipoEquipo: {
id_tipo_de_equipo: equipo.tipoEquipo.id_tipo_de_equipo,
},
});
}
}
const updateData = {
id_equipo,
lugar: equipoNuevo.lugar ? equipoNuevo.lugar : undefined,
@@ -180,8 +153,8 @@ export class EquipoService {
sistemaOperativo: equipoNuevo.id_sistema_operativo
? { id_sistema_operativo: equipoNuevo.id_sistema_operativo }
: undefined,
procesador_tipoequipo: procesador_tipoequipo
? procesador_tipoequipo
procesador: equipoNuevo.id_procesador
? { id_procesador: equipoNuevo.id_procesador }
: undefined,
tipoUso: equipoNuevo.id_tipo_uso
? { id_uso: equipoNuevo.id_tipo_uso }
@@ -279,34 +252,7 @@ export class EquipoService {
tipoEquipo: { id_tipo_de_equipo: equipo.id_tipo_equipo },
});
} else {
let procesador = await this.procesadorRepo.findOne({
where: { id_procesador: equipo.id_procesador },
});
let tipo_equipo = await this.tipoEquipoRepo.findOne({
where: { id_tipo_de_equipo: equipo.id_procesador },
});
if (!procesador || !tipo_equipo) {
throw new NotFoundException(
'No se encontro procesador ni tipo de equipo',
);
}
let procesador_tipoequipo = await this.procesadorTipoEquipoRepo.findOne({
where: { procesador: procesador, tipoEquipo: tipo_equipo },
});
if (!procesador_tipoequipo) {
procesador_tipoequipo = await this.procesadorTipoEquipoRepo.create({
procesador,
tipoEquipo: tipo_equipo,
});
procesador_tipoequipo = await this.procesadorTipoEquipoRepo.save(
procesador_tipoequipo,
);
}
nuevoEquipo = this.equipoRepository.create({
procesador_tipoequipo: procesador_tipoequipo,
inventario: equipo.inventario,
serie: equipo.serie,
lugar: equipo.lugar,
@@ -318,7 +264,8 @@ export class EquipoService {
sistemaOperativo: { id_sistema_operativo: equipo.id_sistema_operativo },
tipoUso: { id_uso: equipo.id_uso },
marca: { id_marca: equipo.id_marca },
tipoEquipo: tipo_equipo,
tipoEquipo: { id_tipo_de_equipo: equipo.id_tipo_equipo },
procesador: { id_procesador: equipo.id_procesador },
});
}
@@ -358,14 +305,7 @@ export class EquipoService {
}
async findAllProcesadorTipoEquipos() {
return await this.procesadorTipoEquipoRepo.find();
}
async findAllProcesadorforTipoEquipos(idEquipo: number) {
return await this.procesadorTipoEquipoRepo.find({
where: { tipoEquipo: { id_tipo_de_equipo: idEquipo } },
relations: ['procesador', 'tipoEquipo'],
});
return await this.procesadorRepo.find();
}
async createEcxel(res: Response) {
@@ -860,18 +800,6 @@ export class EquipoService {
}
return res;
}
async example() {
await this.usoRepo.save({ tipo_uso: 'ej' });
await this.marcaRepo.save({ marca: 'ej' });
await this.estadoRepo.save({ estado: 'ej' });
await this.adscripcionRepo.save({ adscripcion: 'ej' });
let tipo = await this.tipoEquipoRepo.save({ tipo_equipo: 'ej' });
await this.sistemaOperativoRepo.save({ sistema_operativo: 'ej' });
let procesador = await this.procesadorRepo.save({ procesador: 'ej' });
await this.perifericoRepo.save({ periferico: 'el' });
await this.procesadorTipoEquipoRepo.save({ procesador, tipoEquipo: tipo });
}
}
let escritorio = ['ESCRITORIO PC', 'ESCRITORIO MAC OS ', 'ESCRITORIO LINUX'];