From 79fbef48a8f42419671d7fdcada8e5fda5484f58 Mon Sep 17 00:00:00 2001 From: xXpuma99Xx <51341582+xXpuma99Xx@users.noreply.github.com> Date: Tue, 4 Oct 2022 20:46:31 -0500 Subject: [PATCH] modulo final --- src/auth/auth.service.ts | 2 +- src/equipo/equipo.service.ts | 2 +- .../views/min-informacion-modulo.view.ts | 4 - src/modulo/modulo.service.ts | 104 +++++++----------- src/upload-file/upload-file.service.ts | 1 - 5 files changed, 42 insertions(+), 71 deletions(-) diff --git a/src/auth/auth.service.ts b/src/auth/auth.service.ts index db5e9a3..14e2a45 100644 --- a/src/auth/auth.service.ts +++ b/src/auth/auth.service.ts @@ -37,7 +37,7 @@ export class AuthService { } async loginOperador(id_modulo: number, operador: string, password: string) { - const modulo = await this.moduloService.findById(id_modulo); + const modulo = await this.moduloService.findInfoModuloById(id_modulo); return this.operadorService .informacionOperador(modulo.institucion, operador) diff --git a/src/equipo/equipo.service.ts b/src/equipo/equipo.service.ts index 833f0da..2e04cec 100644 --- a/src/equipo/equipo.service.ts +++ b/src/equipo/equipo.service.ts @@ -140,7 +140,7 @@ export class EquipoService { ? await this.modeloService.findById(parseInt(filtros.id_modelo), 'e') : null; const modulo = filtros.id_modulo - ? await this.moduloService.findById(parseInt(filtros.id_modulo)) + ? await this.moduloService.findInfoModuloById(parseInt(filtros.id_modulo)) : null; const programa = filtros.id_programa ? await this.institucionProgramaService.findProgramaById( diff --git a/src/modulo/entity/views/min-informacion-modulo.view.ts b/src/modulo/entity/views/min-informacion-modulo.view.ts index 77f2c0e..fc3c263 100644 --- a/src/modulo/entity/views/min-informacion-modulo.view.ts +++ b/src/modulo/entity/views/min-informacion-modulo.view.ts @@ -10,7 +10,6 @@ import { Institucion } from '../../../institucion/entity/institucion.entity'; .addSelect('m.activo', 'activo_modulo') .addSelect('m.modulo', 'modulo') .addSelect('m.id_institucion', 'id_institucion') - .addSelect('i.activo', 'activo_institucion') .addSelect('i.institucion', 'institucion') .from(Modulo, 'm') .innerJoin(Institucion, 'i', 'i.id_institucion = m.id_institucion') @@ -21,9 +20,6 @@ export class MinInformacionModuloView { @ViewColumn() id_modulo: number; - @ViewColumn() - activo_institucion: number; - @ViewColumn() activo_modulo: number; diff --git a/src/modulo/modulo.service.ts b/src/modulo/modulo.service.ts index 1706d12..aaf38d8 100644 --- a/src/modulo/modulo.service.ts +++ b/src/modulo/modulo.service.ts @@ -24,8 +24,8 @@ export class ModuloService { ) {} async create(admin: Operador, modulo: string) { - return this.existeModulo(admin.institucion, modulo) - .then(() => + return this.findModulo(admin.institucion, modulo, true) + .then((_) => this.repository.save( this.repository.create({ institucion: admin.institucion, @@ -38,25 +38,6 @@ export class ModuloService { })); } - async existeModulo(id_institucion: number | Institucion, modulo: string) { - const institucion = - typeof id_institucion === 'number' - ? await this.institucionService.findInfoInstitucionById(id_institucion) - : id_institucion; - - return this.minInformacionModuloView - .findOne({ - where: { id_institucion: institucion.id_institucion, modulo }, - }) - .then((existeModulo) => { - if (existeModulo) - throw new ConflictException( - 'Ya existe un módulo en esta institución con este nombre, intente con otro nombre.', - ); - return; - }); - } - findById(id_modulo: number) { return this.repository.findOne({ where: { id_modulo } }).then((modulo) => { if (!modulo) throw new NotFoundException('No existe este id módulo.'); @@ -64,25 +45,6 @@ export class ModuloService { }); } - async findModulo( - id_institucion: number | Institucion, - modulo: string, - validarNoExiste = true, - ) { - const institucion = - typeof id_institucion === 'number' - ? await this.institucionService.findInfoInstitucionById(id_institucion) - : id_institucion; - - return this.repository - .findOne({ where: { institucion, modulo } }) - .then((modulo) => { - if (validarNoExiste && !modulo) - throw new ConflictException('No existe este módulo.'); - return modulo; - }); - } - findInfoModuloById(id_modulo: number) { return this.informacionModuloView .findOne({ where: { id_modulo } }) @@ -91,28 +53,7 @@ export class ModuloService { throw new NotFoundException('No existe este id módulo.'); return this.repository.create({ id_modulo: infoModulo.id_modulo, - institucion: { - id_institucion: infoModulo.id_institucion, - }, - }); - }); - } - - findMinInfoModuloById(id_modulo: number) { - return this.minInformacionModuloView - .findOne({ where: { id_modulo } }) - .then((infoModulo) => { - if (!infoModulo) - throw new NotFoundException('No existe este id módulo.'); - return this.repository.create({ - id_modulo: infoModulo.id_modulo, - activo: infoModulo.activo_modulo === 1, - modulo: infoModulo.modulo, - institucion: { - id_institucion: infoModulo.id_institucion, - institucion: infoModulo.institucion, - activo: infoModulo.activo_institucion === 1, - }, + institucion: { id_institucion: infoModulo.id_institucion }, }); }); } @@ -139,7 +80,6 @@ export class ModuloService { modulo: infoModulos[i].modulo, institucion: { id_institucion: infoModulos[i].id_institucion, - activo: infoModulos[i].activo_institucion === 1, institucion: infoModulos[i].institucion, }, }), @@ -148,6 +88,42 @@ export class ModuloService { }); } + findMinInfoModuloById(id_modulo: number) { + return this.minInformacionModuloView + .findOne({ where: { id_modulo } }) + .then((infoModulo) => { + if (!infoModulo) + throw new NotFoundException('No existe este id módulo.'); + return this.repository.create({ + id_modulo: infoModulo.id_modulo, + activo: infoModulo.activo_modulo === 1, + modulo: infoModulo.modulo, + institucion: { + id_institucion: infoModulo.id_institucion, + institucion: infoModulo.institucion, + }, + }); + }); + } + + findModulo(institucion: Institucion, modulo: string, validarExiste = false) { + return this.minInformacionModuloView + .findOne({ + where: { id_institucion: institucion.id_institucion, modulo }, + }) + .then((infoModulo) => { + if (!infoModulo) return null; + if (validarExiste) + throw new ConflictException( + 'Ya existe un módulo en esta institución con este nombre, intente con otro.', + ); + return this.repository.create({ + id_modulo: infoModulo.id_modulo, + institucion: { id_institucion: infoModulo.id_institucion }, + }); + }); + } + update(admin: Operador, attrs: Partial) { return this.findInfoModuloById(attrs.id_modulo) .then(async (modulo) => { @@ -158,7 +134,7 @@ export class ModuloService { 'No puedes actualizar la información de este módulo porque no le pertenece a tu institución.', ); if (attrs.modulo) - await this.existeModulo(modulo.institucion, attrs.modulo); + await this.findModulo(modulo.institucion, attrs.modulo, true); Object.assign(modulo, attrs); return this.repository.save(modulo); }) diff --git a/src/upload-file/upload-file.service.ts b/src/upload-file/upload-file.service.ts index 9655bcc..b3bc312 100644 --- a/src/upload-file/upload-file.service.ts +++ b/src/upload-file/upload-file.service.ts @@ -194,7 +194,6 @@ export class UploadFileService { const modulo = await this.moduloService.findModulo( institucion, dataEquipo.modulo, - false, ); const marca = await this.marcaService.findByMarca( dataEquipo.marca,