<?php 
include "/www/wwwroot/bilspro/config/connect.php";

try {
    // Ambil data user dari view
    $stmt = $pdo->prepare("SELECT * FROM v_jumlah_data_server");
    $stmt->execute();

    while ($data = $stmt->fetch(PDO::FETCH_ASSOC)) {
        if ($data['status_sewa'] == 'normal') {
            // Tentukan harga berdasarkan jumlah user_aktif
            if ($data['user_aktif'] <= 200) {
                $harga_user = 200000;
            } elseif ($data['user_aktif'] > 200 && $data['user_aktif'] <= 500) {
                $harga_user = 300000;
            } elseif ($data['user_aktif'] > 500 && $data['user_aktif'] <= 800) {
                $harga_user = 450000;
            } elseif ($data['user_aktif'] > 800 && $data['user_aktif'] <= 1200) {
                $harga_user = 750000;
            } elseif ($data['user_aktif'] > 1200 && $data['user_aktif'] <= 1600) {
                $harga_user = 1000000;
            } else {
                $harga_user = 1500000; // Harga default jika user_aktif lebih dari 1600
            }

            // Tentukan harga berdasarkan jumlah_agen
            if ($data['jumlah_agen'] <= 15) {
                $harga_agen = 200000;
            } elseif ($data['jumlah_agen'] > 15 && $data['jumlah_agen'] <= 30) {
                $harga_agen = 300000;
            } elseif ($data['jumlah_agen'] > 30 && $data['jumlah_agen'] <= 60) {
                $harga_agen = 450000;
            } elseif ($data['jumlah_agen'] > 60 && $data['jumlah_agen'] <= 90) {
                $harga_agen = 750000;
            } elseif ($data['jumlah_agen'] > 90 && $data['jumlah_agen'] <= 130) {
                $harga_agen = 1000000;
            } else {
                $harga_agen = 1500000; // Harga default jika jumlah_agen lebih dari 130
            }

            // Gunakan harga tertinggi di antara harga_user dan harga_agen
            $harga = max($harga_user, $harga_agen);

            // Bandingkan harga yang dihitung dengan harga di database
            if ($data['harga_sewa'] < $harga) {
                // Update harga di database (uncomment saat digunakan di produksi)
                $updateStmt = $pdo->prepare("UPDATE data_server SET harga_sewa = :harga WHERE id = :id");
                $updateStmt->execute([':harga' => $harga, ':id' => $data['id']]);
                echo "Harga harus diupdate untuk ID Data Server: " . $data['id'] . " Rp." . number_format($harga) . "<br>";
            } else {
                echo "Tidak perlu update untuk ID: " . $data['id'] . " Rp." . number_format($data['harga_sewa']) . "<br>";
            }
        } else {
            // Jika status_sewa bukan 'normal', gunakan harga khusus
            echo "Harga khusus untuk ID: " . $data['id'] . " Rp." . number_format($data['harga_sewa']) . "<br>";
        }
    }
} catch (PDOException $e) {
    // Tangani kesalahan koneksi atau query
    echo "Terjadi kesalahan: " . $e->getMessage();
}
?>