diff --git a/src/app.gateway.ts b/src/app.gateway.ts index 536f974..0a90568 100644 --- a/src/app.gateway.ts +++ b/src/app.gateway.ts @@ -10,8 +10,8 @@ import { Socket, Server } from 'socket.io'; @WebSocketGateway({ cors: { origin: [ - // 'http://localhost:3176', - // 'http://localhost:3186', + 'http://localhost:3176', + 'http://localhost:3186', // 'https://pmodulospcpuma.unam.mx', // 'https://pmodulospcpuma.unam.mx:3015', 'https://modulospcpuma.unam.mx', diff --git a/src/institucion-tipo-carrito/institucion-tipo-carrito.controller.ts b/src/institucion-tipo-carrito/institucion-tipo-carrito.controller.ts index 887a053..7628663 100644 --- a/src/institucion-tipo-carrito/institucion-tipo-carrito.controller.ts +++ b/src/institucion-tipo-carrito/institucion-tipo-carrito.controller.ts @@ -62,9 +62,9 @@ export class InstitucionTipoCarritoController { @ApiOperation({ description: 'Todos los tipos de carrito.' }) @ApiBearerAuth('jwt') get(@Request() req) { - const superAdmin: Operador = req.user.operador; + const operador: Operador = req.user.operador; - this.validarUsuarioService.validarSuperAdmin(superAdmin); + this.validarUsuarioService.validarOperador(operador); return this.institucionTipoCarritoService.findAll(); } diff --git a/src/modulo/modulo.controller.ts b/src/modulo/modulo.controller.ts index e915bfc..84cc29a 100644 --- a/src/modulo/modulo.controller.ts +++ b/src/modulo/modulo.controller.ts @@ -74,15 +74,29 @@ export class ModuloController { @Serealize(OnlyModuloOutputDto) @Get('modulos') @UseGuards(AuthGuard('jwt')) + @ApiOperation({ + description: 'Todos los módulos de una institución.', + }) + @ApiBearerAuth('jwt') + modulos(@Request() req, @Query() query: IdInstitucionDto) { + const superAdmin: Operador = req.user.operador; + + this.validarUsuarioService.validarSuperAdmin(superAdmin); + return this.moduloService.findAll(parseInt(query.id_institucion)); + } + + @Serealize(OnlyModuloOutputDto) + @Get('modulos-operador') + @UseGuards(AuthGuard('jwt')) @ApiOperation({ description: 'Todos los módulos de una institución de un operador.', }) @ApiBearerAuth('jwt') - modulos(@Request() req) { - const admin: Operador = req.user.operador; + modulosOperador(@Request() req) { + const operador: Operador = req.user.operador; - this.validarUsuarioService.validarAdmin(admin); - return this.moduloService.findAllAdmin(admin); + this.validarUsuarioService.validarAdmin(operador); + return this.moduloService.findAllAdmin(operador); } @Serealize(OnlyModuloOutputDto) @@ -100,9 +114,7 @@ export class ModuloController { @Serealize(MessageOutputDto) @Put() @UseGuards(AuthGuard('jwt')) - @ApiOperation({ - description: 'Actualizar la información de un módulo.', - }) + @ApiOperation({ description: 'Actualizar la información de un módulo.' }) @ApiBearerAuth('jwt') @ApiBody({ description: diff --git a/src/modulo/modulo.service.ts b/src/modulo/modulo.service.ts index c78642a..58503f4 100644 --- a/src/modulo/modulo.service.ts +++ b/src/modulo/modulo.service.ts @@ -43,6 +43,23 @@ export class ModuloService { .then((_) => ({ message: 'Se creó correctamente un nuevo módulo.' })); } + findAll(id_institucion: number): Promise { + return this.institucionService + .findById(id_institucion) + .then((institucion) => + this.fullInformacionModuloView.find({ + where: { id_institucion: institucion.id_institucion }, + }), + ) + .then((infoModulos) => { + const modulos: Modulo[] = []; + + for (let i = 0; i < infoModulos.length; i++) + modulos.push(this.fullViewToModulo(infoModulos[i])); + return modulos; + }); + } + findAllActivo(id_institucion: number): Promise { return this.institucionService .findById(id_institucion) diff --git a/src/multa/multa.service.ts b/src/multa/multa.service.ts index 32c907d..c15c3fb 100644 --- a/src/multa/multa.service.ts +++ b/src/multa/multa.service.ts @@ -352,6 +352,7 @@ export class MultaService { throw new ConflictException( 'No puedes modificar la información este usuario porque no pertenece a tu institución.', ); + // Quitamos la multa a todas las carreras del usuario en la institución del admin return this.institucionUsuarioService .updateMulta(admin.institucion, institucionUsuario.usuario, false) .then(async (_) => { diff --git a/src/operador/operador.service.ts b/src/operador/operador.service.ts index 8874b33..c478e50 100644 --- a/src/operador/operador.service.ts +++ b/src/operador/operador.service.ts @@ -174,6 +174,7 @@ export class OperadorService { 'id_operador', 'activo', 'correo', + 'operador', 'id_institucion', 'id_tipo_usuario', ], @@ -214,6 +215,7 @@ export class OperadorService { ): Promise<{ message: string }> { return this.findById(id_operador) .then((operador) => { + console.log(operador); this.validarUpdate(admin, operador); // Generamos un password por si no se mando uno if (!password) password = this.bcryptService.generarPassword();