From 7d9c36e4182468d9f59978f233872f3b9f3b2324 Mon Sep 17 00:00:00 2001 From: Alexeer Date: Mon, 14 Jul 2025 15:31:59 -0600 Subject: [PATCH] Agente-Agencia --- app/controllers/administrador.php | 16 +++++++++++++- app/controllers/vinculaciones.php | 15 +++++++------ views/admin/aprobar_agencias.php | 36 ++++++++++++++++--------------- 3 files changed, 42 insertions(+), 25 deletions(-) diff --git a/app/controllers/administrador.php b/app/controllers/administrador.php index 98e260a..ee0f5e8 100644 --- a/app/controllers/administrador.php +++ b/app/controllers/administrador.php @@ -535,7 +535,8 @@ function aprobar_agencia() } // Insertar en usuarios_sistema - $sqlInsert2 = "INSERT INTO usuarios_sistema (nombre, email, password_hash, tipo_usuario, activo, creado_en, dos_factores, creado_por) + $sqlInsert2 = "INSERT INTO usuarios_sistema + (nombre, email, password_hash, tipo_usuario, activo, creado_en, dos_factores, creado_por) OUTPUT INSERTED.id_usuario VALUES (?, ?, ?, ?, 1, GETDATE(), 0, ?) "; @@ -572,6 +573,19 @@ function aprobar_agencia() header("Location: /IMPORTADORES/administrador/aprobarAgencias?error=update_failed"); exit; } + + // CREAR RELACIÓN AGENTE-AGENCIA + $sqlInsertRelacion = "INSERT INTO agente_agencia + (id_agente, id_agencia, fecha_asignacion, activo, asignado_por) + VALUES (?, ?, GETDATE(), 1, ?) + "; + $paramsRelacion = [$id_usuario, $id_agencia, $usuario_id]; + $stmtRelacion = sqlsrv_query($conn, $sqlInsertRelacion, $paramsRelacion); + + if (!$stmtRelacion) { + header("Location: /IMPORTADORES/administrador/aprobarAgencias?error=relation_failed"); + exit; + } // Actualizar solicitud $sqlUpdate = "UPDATE solicitudes_agencias diff --git a/app/controllers/vinculaciones.php b/app/controllers/vinculaciones.php index 1c49d13..4452318 100644 --- a/app/controllers/vinculaciones.php +++ b/app/controllers/vinculaciones.php @@ -52,13 +52,14 @@ function nuevaVinculacion() LEFT JOIN solicitudes_vinculacion s ON s.id_agencia = a.id_agencia AND s.id_importador = ? - AND s.estado = 'PENDIENTE' - WHERE NOT EXISTS ( - SELECT 1 - FROM importador_agencia ia - WHERE ia.id_agencia = a.id_agencia - AND ia.id_importador = ? - AND ia.activo = 1 + AND s.estado = 'PENDIENTE' + WHERE a.activo = 1 + AND NOT EXISTS ( + SELECT 1 + FROM importador_agencia ia + WHERE ia.id_agencia = a.id_agencia + AND ia.id_importador = ? + AND ia.activo = 1 ) ORDER BY a.creado_en DESC "; diff --git a/views/admin/aprobar_agencias.php b/views/admin/aprobar_agencias.php index 3f524dc..4e2af3f 100644 --- a/views/admin/aprobar_agencias.php +++ b/views/admin/aprobar_agencias.php @@ -130,24 +130,26 @@