From 100695148ad4ea606b3cd35b7a26571c053bf48a Mon Sep 17 00:00:00 2001 From: evenegas Date: Thu, 3 Jul 2025 11:14:35 -0600 Subject: [PATCH] se hicieron cambios --- src/app.module.ts | 2 +- src/excel/excel.controller.ts | 11 ++++++++++- src/main.ts | 8 ++++---- src/movimiento/movimiento.service.ts | 7 ++++--- src/usuarios/usuarios.service.ts | 9 +++++---- 5 files changed, 24 insertions(+), 13 deletions(-) diff --git a/src/app.module.ts b/src/app.module.ts index a98f4f9..ddda6df 100644 --- a/src/app.module.ts +++ b/src/app.module.ts @@ -31,7 +31,7 @@ import { ScheduleModule } from '@nestjs/schedule'; // no prints en claro en prod: password: config.get('DB_PASS', ''), database: config.get('DB_NAME', 'test'), - dropSchema: false, // solo para desarrollo + dropSchema: true, // solo para desarrollo }; Logger.log('[DB CONFIG] ' + JSON.stringify({ ...dbConfig, diff --git a/src/excel/excel.controller.ts b/src/excel/excel.controller.ts index ca9bcf3..1554c5e 100644 --- a/src/excel/excel.controller.ts +++ b/src/excel/excel.controller.ts @@ -103,6 +103,7 @@ export class ExcelController { return result } + console.log(result.id_movimiento) await this.movimientoService.updateStatus( result.id_movimiento, 'SUCCESS', @@ -176,10 +177,18 @@ export class ExcelController { 'descarga de csv', `size=${csv.length}` ); + let filename + if (origen == 'CORREO') { + filename = 'usuarios_correo.csv'; + } + else { + filename = 'usuarios.csv'; + } + return res .status(HttpStatus.OK) .header('Content-Type', 'text/csv') - .header('Content-Disposition', 'attachment; filename="usuarios_correo.csv"') + .header('Content-Disposition', `attachment; filename="${filename}"`) .send(csv); } catch (err) { await this.movimientoService.log( diff --git a/src/main.ts b/src/main.ts index 96bd98b..5eeb055 100644 --- a/src/main.ts +++ b/src/main.ts @@ -6,7 +6,7 @@ import { SwaggerModule, DocumentBuilder } from '@nestjs/swagger'; async function bootstrap() { const app = await NestFactory.create(AppModule); - app.enableCors(); + app.enableCors({ exposedHeaders: ['Content-Disposition'] }); app.useGlobalPipes( new ValidationPipe({ @@ -23,9 +23,9 @@ async function bootstrap() { ) .setVersion('1.0') .addBearerAuth( - { - type: 'http', - scheme: 'bearer', + { + type: 'http', + scheme: 'bearer', bearerFormat: 'JWT', name: 'Authorization', in: 'header', diff --git a/src/movimiento/movimiento.service.ts b/src/movimiento/movimiento.service.ts index 12e2080..337632c 100644 --- a/src/movimiento/movimiento.service.ts +++ b/src/movimiento/movimiento.service.ts @@ -53,8 +53,8 @@ export class MovimientoService { queryRunner: QueryRunner, origenNombre: string, status: string, - reporte: string | undefined, - observaciones: string + observaciones?: string, + reporte?: string ): Promise { const origenEntidad = await queryRunner.manager.findOne(Origen, { where: { origen: origenNombre }, @@ -191,9 +191,10 @@ export class MovimientoService { }, }, }, + relations: ['usuario'], }); const todosLosMovimientos = [...movimientos, ...mov, ...mov2]; - console.log(todosLosMovimientos, movimientos) + return { move: todosLosMovimientos, button: true }; } diff --git a/src/usuarios/usuarios.service.ts b/src/usuarios/usuarios.service.ts index aa5e342..9ecb9d6 100644 --- a/src/usuarios/usuarios.service.ts +++ b/src/usuarios/usuarios.service.ts @@ -46,7 +46,7 @@ export class UsuariosService { async findOneStatus(noCuenta: string) { const usuario = await this.usuarioRepository.findOne({ where: { num_cuenta: noCuenta }, - select: ['id_usuario'], + }); if (!usuario) { @@ -103,9 +103,10 @@ export class UsuariosService { }]; } - console.log('Servicios encontrados:', resultado); - return resultado; + console.log({ resultado, usuario: usuario.num_cuenta }) + + return { resultado, usuario: usuario.num_cuenta }; } @@ -119,7 +120,7 @@ export class UsuariosService { - @Cron('0 6 27 * *') // minuto hora día mes díaDeSemana + @Cron('0 0 0 10,25 * *') async tareaMensual() { this.logger.log('Ejecutando consulta mensual de profesores'); await this.enviarSolicitud(); // tu función de importación