getConfig('warning_days_normal', 90); $warning_days_priority = (int)$db->getConfig('warning_days_priority', 180); $warning_days_return = (int)$db->getConfig('warning_days_return', 120); // Ottieni il limite (default 10, se expanded = all) $limit_normal = isset($_GET['expand_normal']) ? '' : 'LIMIT 10'; $limit_priority = isset($_GET['expand_priority']) ? '' : 'LIMIT 10'; $limit_return = isset($_GET['expand_return']) ? '' : 'LIMIT 10'; // Territori da assegnare (in reparto da più di X giorni) $territories_to_assign = $db->fetchAll(" SELECT t.id, t.numero, t.zona, t.tipologia, MAX(a.returned_date) as last_returned_date, DATEDIFF(CURDATE(), MAX(a.returned_date)) as days_in_depot FROM territories t LEFT JOIN assignments a ON t.id = a.territory_id WHERE t.id NOT IN ( SELECT territory_id FROM assignments WHERE returned_date IS NULL ) GROUP BY t.id, t.numero, t.zona, t.tipologia HAVING days_in_depot >= ? OR MAX(a.returned_date) IS NULL ORDER BY last_returned_date ASC NULLS FIRST $limit_normal ", [$warning_days_normal]); // Territori prioritari (in reparto da più di X giorni) $territories_priority = $db->fetchAll(" SELECT t.id, t.numero, t.zona, t.tipologia, MAX(a.returned_date) as last_returned_date, DATEDIFF(CURDATE(), MAX(a.returned_date)) as days_in_depot FROM territories t LEFT JOIN assignments a ON t.id = a.territory_id WHERE t.id NOT IN ( SELECT territory_id FROM assignments WHERE returned_date IS NULL ) GROUP BY t.id, t.numero, t.zona, t.tipologia HAVING days_in_depot >= ? ORDER BY last_returned_date ASC NULLS FIRST $limit_priority ", [$warning_days_priority]); // Territori da riconsegnare (assegnati da più di X giorni) $territories_to_return = $db->fetchAll(" SELECT t.id, t.numero, t.zona, t.tipologia, a.assigned_to, a.assigned_date, DATEDIFF(CURDATE(), a.assigned_date) as days_assigned FROM territories t INNER JOIN assignments a ON t.id = a.territory_id WHERE a.returned_date IS NULL AND DATEDIFF(CURDATE(), a.assigned_date) >= ? ORDER BY a.assigned_date ASC $limit_return ", [$warning_days_return]); // Conteggi totali $count_to_assign = $db->fetchOne(" SELECT COUNT(*) as total FROM ( SELECT t.id FROM territories t LEFT JOIN assignments a ON t.id = a.territory_id WHERE t.id NOT IN ( SELECT territory_id FROM assignments WHERE returned_date IS NULL ) GROUP BY t.id HAVING DATEDIFF(CURDATE(), MAX(a.returned_date)) >= ? OR MAX(a.returned_date) IS NULL ) as subquery ", [$warning_days_normal])['total']; $count_priority = $db->fetchOne(" SELECT COUNT(*) as total FROM ( SELECT t.id FROM territories t LEFT JOIN assignments a ON t.id = a.territory_id WHERE t.id NOT IN ( SELECT territory_id FROM assignments WHERE returned_date IS NULL ) GROUP BY t.id HAVING DATEDIFF(CURDATE(), MAX(a.returned_date)) >= ? ) as subquery ", [$warning_days_priority])['total']; $count_to_return = $db->fetchOne(" SELECT COUNT(*) as total FROM assignments WHERE returned_date IS NULL AND DATEDIFF(CURDATE(), assigned_date) >= ? ", [$warning_days_return])['total']; include 'header.php'; ?>
Territori in reparto da più di giorni
0): ?>| Numero | Zona | Tipologia | Ultima Restituzione | Giorni in Reparto | Azioni |
|---|---|---|---|---|---|
| giorni | Assegna |
Nessun territorio da assegnare
Territori in reparto da più di giorni
0): ?>| Numero | Zona | Tipologia | Ultima Restituzione | Giorni in Reparto | Azioni |
|---|---|---|---|---|---|
| giorni | Assegna |
Nessun territorio prioritario
Territori assegnati da più di giorni
0): ?>| Numero | Zona | Tipologia | Assegnato a | Data Assegnazione | Giorni Assegnato | Azioni |
|---|---|---|---|---|---|---|
| giorni | Riconsegna |
Nessun territorio da riconsegnare