= DATE_SUB(CURDATE(), INTERVAL 5 DAY) ORDER BY created_at DESC LIMIT 200"; $stmt = $con->prepare($sql); $stmt->execute(); $rows = $stmt->fetchAll(PDO::FETCH_ASSOC); $registered = []; foreach ($con->query("SELECT phone FROM driver WHERE phone IS NOT NULL")->fetchAll(PDO::FETCH_COLUMN) as $enc) { $plain = $encryptionHelper->decryptData($enc); if ($plain) $registered[normalizePhone($plain)] = true; } $contacted = []; try { foreach ($con->query("SELECT phone FROM notesForDriverService")->fetchAll(PDO::FETCH_COLUMN) as $enc) { $plain = $encryptionHelper->decryptData($enc) ?: $enc; if ($plain) $contacted[normalizePhone($plain)] = true; } } catch (PDOException $e) { error_log('[getDriversPhoneNotComplete] notes unavailable: ' . $e->getMessage()); } $result = []; foreach ($rows as $row) { $phone = $encryptionHelper->decryptData($row['phone_enc'] ?? null); if (!$phone) continue; $key = normalizePhone($phone); if (isset($registered[$key])) continue; // أكمل تسجيله if (isset($contacted[$key])) continue; // تم التواصل معه سابقاً $result[] = [ 'id' => $row['id'], 'phone_number' => $phone, 'created_at' => $row['created_at'], ]; if (count($result) >= 25) break; } if ($result) { jsonSuccess($result); } else { jsonError("No records found"); }