false, 'message' => 'ID non valido']); exit; } try { $db = DBHandlerSelect::getInstance(); $pdo = $db->getConnection(); $sql = " SELECT m.id, m.nome, m.nomeuscita, m.is_active, IFNULL(q.qty_totale, 0) AS qty_totale, GROUP_CONCAT(DISTINCT pl.name SEPARATOR ', ') AS linee FROM mescole m LEFT JOIN ( SELECT idmescola, SUM(qty) AS qty_totale FROM mescole_supplier_lots GROUP BY idmescola ) q ON q.idmescola = m.id LEFT JOIN mescole_lines ml ON m.id = ml.idmescola LEFT JOIN production_lines pl ON ml.idlinea = pl.id WHERE m.id = ? GROUP BY m.id "; $stmt = $pdo->prepare($sql); $stmt->execute([$id]); $row = $stmt->fetch(PDO::FETCH_ASSOC); if (!$row) { echo json_encode(['success' => false, 'message' => 'Mescola non trovata']); exit; } echo json_encode(['success' => true, 'data' => $row]); } catch (Throwable $e) { echo json_encode(['success' => false, 'message' => 'Errore database: ' . $e->getMessage()]); }