78 lines
3.2 KiB
PHP
78 lines
3.2 KiB
PHP
<?php
|
|
$pageTitle = "Pedidos Duplicados";
|
|
include 'layout_header.php';
|
|
include 'db/config.php';
|
|
|
|
$db = db();
|
|
|
|
// Subconsulta para encontrar DNIs duplicados
|
|
$sub_query_dni = "SELECT dni_cliente FROM pedidos WHERE dni_cliente IS NOT NULL AND dni_cliente != '' GROUP BY dni_cliente HAVING COUNT(*) > 1";
|
|
|
|
// Subconsulta para encontrar nombres duplicados
|
|
$sub_query_nombre = "SELECT nombre_completo FROM pedidos WHERE nombre_completo IS NOT NULL AND nombre_completo != '' GROUP BY nombre_completo HAVING COUNT(*) > 1";
|
|
|
|
// Consulta principal para obtener los pedidos duplicados
|
|
$sql = "
|
|
SELECT p.*, u.nombre_asesor
|
|
FROM pedidos p
|
|
LEFT JOIN users u ON p.asesor_id = u.id
|
|
WHERE p.dni_cliente IN ($sub_query_dni) OR p.nombre_completo IN ($sub_query_nombre)
|
|
ORDER BY p.nombre_completo, p.dni_cliente, p.created_at DESC
|
|
";
|
|
|
|
$stmt = $db->prepare($sql);
|
|
$stmt->execute();
|
|
$duplicated_orders = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
|
|
|
?>
|
|
|
|
<div class="container mt-4">
|
|
<p>Aquí se muestran los pedidos que tienen el mismo DNI o el mismo nombre completo que otro pedido en el sistema.</p>
|
|
|
|
<?php if (empty($duplicated_orders)): ?>
|
|
<div class="alert alert-success" role="alert">
|
|
No se encontraron pedidos duplicados.
|
|
</div>
|
|
<?php else: ?>
|
|
<table class="table table-bordered table-striped">
|
|
<thead class="thead-dark">
|
|
<tr>
|
|
<th>ID Pedido</th>
|
|
<th>DNI Cliente</th>
|
|
<th>Nombre Completo</th>
|
|
<th>Producto</th>
|
|
<th>Asesora</th>
|
|
<th>Fecha Creación</th>
|
|
<th>Estado</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<?php
|
|
$last_key = null;
|
|
$row_color = '#f8f9fa'; // Start with a light gray
|
|
foreach ($duplicated_orders as $order):
|
|
$current_key = $order['nombre_completo'] . '-' . $order['dni_cliente'];
|
|
// Cambiar de color cada vez que el nombre o DNI del cliente cambie
|
|
if ($last_key !== $current_key) {
|
|
$row_color = ($row_color === '#f8f9fa') ? '#e9ecef' : '#f8f9fa';
|
|
}
|
|
?>
|
|
<tr style="background-color: <?php echo $row_color; ?>;">
|
|
<td><?php echo htmlspecialchars($order['id']); ?></td>
|
|
<td><?php echo htmlspecialchars($order['dni_cliente']); ?></td>
|
|
<td><?php echo htmlspecialchars($order['nombre_completo']); ?></td>
|
|
<td><?php echo htmlspecialchars($order['producto']); ?></td>
|
|
<td><?php echo htmlspecialchars($order['nombre_asesor'] ?? 'N/A'); ?></td>
|
|
<td><?php echo htmlspecialchars($order['created_at']); ?></td>
|
|
<td><?php echo ($order['estado'] == 'Gestion') ? 'GESTIONES ⚙️' : htmlspecialchars($order['estado']); ?></td>
|
|
</tr>
|
|
<?php
|
|
$last_key = $current_key;
|
|
endforeach;
|
|
?>
|
|
</tbody>
|
|
</table>
|
|
<?php endif; ?>
|
|
</div>
|
|
|
|
<?php include 'layout_footer.php'; ?>
|