modulo final
This commit is contained in:
parent
9084d5eeda
commit
79fbef48a8
@ -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)
|
||||
|
@ -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(
|
||||
|
@ -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;
|
||||
|
||||
|
@ -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<Modulo>) {
|
||||
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);
|
||||
})
|
||||
|
@ -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,
|
||||
|
Loading…
Reference in New Issue
Block a user