<?php
require_once "connection.php";

// Pastikan semua parameter ada
if (isset($_GET['namaMerk']) && isset($_GET['namaJenis']) && isset($_GET['namaTipe']) && isset($_GET['tahun']) && isset($_GET['checkBpkb']) && isset($_GET['tenor'])) {
    $namaMerk   = $con->real_escape_string($_GET['namaMerk']);
    $namaJenis  = $con->real_escape_string($_GET['namaJenis']);
    $namaTipe   = $con->real_escape_string($_GET['namaTipe']);
    $tahun      = (int)$con->real_escape_string($_GET['tahun']);
    $checkBpkb  = (int)$con->real_escape_string($_GET['checkBpkb']); // 1 atau 0
    $tenor      = (int)$con->real_escape_string($_GET['tenor']);    // tenor bulan

    $sql = "
        SELECT taksasi 
        FROM tblTahunKendaraan 
        WHERE idMerk IN (SELECT idMerk FROM tblMerkKendaraan WHERE namaMerk='$namaMerk')
          AND idJenis IN (SELECT idJenis FROM tblJenisKendaraan WHERE namaJenis='$namaJenis')
          AND idTipe IN (SELECT idTipe FROM tblTipeKendaraan WHERE namaTipe='$namaTipe')
          AND tahun='$tahun'
        LIMIT 1
    ";

    $result = $con->query($sql);

    if ($result && $result->num_rows > 0) {
        $row = $result->fetch_assoc();
        $taksasi = (int)$row['taksasi'];

        $nilaiLSR = 0;

        // 🔹 Logika Motor
        if ($namaJenis == 'Motor') {
            if ($checkBpkb == 1) {
                if ($taksasi <= 20000000) {
                    if ($tahun >= 2023) $nilaiLSR = 110;
                    elseif ($tahun >= 2017 && $tahun <= 2022) $nilaiLSR = 100;
                    elseif ($tahun >= 2014 && $tahun <= 2016) $nilaiLSR = 95;
                    elseif ($tahun >= 2011 && $tahun <= 2013) $nilaiLSR = 90;
                } else {
                    if ($tahun >= 2023) $nilaiLSR = 100;
                    elseif ($tahun >= 2017 && $tahun <= 2022) $nilaiLSR = 90;
                    elseif ($tahun >= 2014 && $tahun <= 2016) $nilaiLSR = 85;
                    elseif ($tahun >= 2011 && $tahun <= 2013) $nilaiLSR = 70;
                }
            } else {
                if ($taksasi <= 20000000) {
                    if ($tahun >= 2023) $nilaiLSR = 90;
                    elseif ($tahun >= 2017 && $tahun <= 2022) $nilaiLSR = 80;
                    elseif ($tahun >= 2014 && $tahun <= 2016) $nilaiLSR = 75;
                    elseif ($tahun >= 2011 && $tahun <= 2013) $nilaiLSR = 70;
                } else {
                    if ($tahun >= 2023) $nilaiLSR = 80;
                    elseif ($tahun >= 2017 && $tahun <= 2022) $nilaiLSR = 70;
                    elseif ($tahun >= 2014 && $tahun <= 2016) $nilaiLSR = 70;
                    elseif ($tahun >= 2011 && $tahun <= 2013) $nilaiLSR = 50;
                }
            }
        }

        // 🔹 Logika Mobil
        if ($namaJenis == 'Mobil') {
            if ($checkBpkb == 1) {
                if ($tahun >= 2020) $nilaiLSR = 95;
                elseif ($tahun >= 2016 && $tahun <= 2019) $nilaiLSR = 90;
                elseif ($tahun >= 2013 && $tahun <= 2015) $nilaiLSR = 85;
                elseif ($tahun >= 2010 && $tahun <= 2012) $nilaiLSR = 75;
                elseif ($tahun >= 2006 && $tahun <= 2009) $nilaiLSR = 65;
            } else {
                if ($tahun >= 2020) $nilaiLSR = 85;
                elseif ($tahun >= 2016 && $tahun <= 2019) $nilaiLSR = 80;
                elseif ($tahun >= 2013 && $tahun <= 2015) $nilaiLSR = 75;
                elseif ($tahun >= 2010 && $tahun <= 2012) $nilaiLSR = 65;
                elseif ($tahun >= 2006 && $tahun <= 2009) $nilaiLSR = 65;
            }
        }

        // 🔹 Hitung hasil LSR dalam rupiah
        $hasilLSR = $taksasi * ($nilaiLSR / 100);

        // 🔹 Hitung biaya provisi & admin
        $biayaProvisi = 0;
        $biayaAdmin = 0;

        if ($namaJenis == 'Motor') {
            if ($hasilLSR <= 3000000) $biayaProvisi = 300000;
            elseif ($hasilLSR > 3000000 && $hasilLSR <= 10000000) $biayaProvisi = 350000;
            elseif ($hasilLSR > 10000000 && $hasilLSR <= 15000000) $biayaProvisi = 400000;
            elseif ($hasilLSR > 15000000 && $hasilLSR <= 25000000) $biayaProvisi = 500000;
            elseif ($hasilLSR > 25000000) $biayaProvisi = $hasilLSR * 0.025;

            $biayaAdmin = 0;
        }

        if ($namaJenis == 'Mobil') {
            if ($hasilLSR <= 50000000) $biayaAdmin = $hasilLSR * 0.05;
            elseif ($hasilLSR > 50000000 && $hasilLSR <= 100000000) $biayaAdmin = 2500000;
            elseif ($hasilLSR > 100000000) $biayaAdmin = 3000000;

            $biayaProvisi = 0;
        }

        // 🔹 Hitung bunga per tahun
        $bungaPersen = 0;
        if ($namaJenis == 'Motor') {
            if ($hasilLSR <= 10000000) $bungaPersen = 35;
            elseif ($hasilLSR > 10000000 && $hasilLSR <= 50000000) $bungaPersen = 30;
        } elseif ($namaJenis == 'Mobil') {
            if ($checkBpkb == 1) {
                if ($tahun >= 2020) $bungaPersen = 9.5;
                elseif ($tahun >= 2016 && $tahun <= 2019) $bungaPersen = 12;
                elseif ($tahun >= 2013 && $tahun <= 2015) $bungaPersen = 15;
                elseif ($tahun >= 2009 && $tahun <= 2012) $bungaPersen = 17;
                elseif ($tahun >= 2006 && $tahun <= 2008) $bungaPersen = 19.5;
            } else {
                if ($tahun >= 2020) $bungaPersen = 10.5;
                elseif ($tahun >= 2016 && $tahun <= 2019) $bungaPersen = 13;
                elseif ($tahun >= 2013 && $tahun <= 2015) $bungaPersen = 16;
                elseif ($tahun >= 2009 && $tahun <= 2012) $bungaPersen = 18;
                elseif ($tahun >= 2006 && $tahun <= 2008) $bungaPersen = 20.5;
            }
        }

        // 🔹 Hitung angsuran per bulan
        $bungaTotal = ($hasilLSR * $bungaPersen / 100);
        if ($tenor % 12 == 0) {
            $tahunPinjaman = $tenor / 12;
            $bungaTotal = $bungaTotal * $tahunPinjaman; // kali tahun
        }

        $totalPinjaman = $hasilLSR + $bungaTotal;
        $angsuranPerBulan = $totalPinjaman / $tenor;

        // 🔹 Hitung nominal diterima
        $nominalDiterima = $hasilLSR - $biayaProvisi - $biayaAdmin;


        // 🔹 Hitung Express (khusus Motor, taksasi <= 25 jt, BPKB wajib ada)
$lsrExpres = 0;
$bungaExpres = 0;
$angsuranBlnExpress = 0;
$nominalDiterimaExpress = 0;
$biayaProvisiExpress = 0;

if ($namaJenis == 'Motor' && $taksasi <= 25000000 && $checkBpkb == 1) {
    $lsrExpres = $taksasi * 0.5;
    $bungaExpres = 36; // persen per tahun

    // 🔹 Hitung provisi express
    if ($lsrExpres <= 3000000) $biayaProvisiExpress = 300000;
    elseif ($lsrExpres > 3000000 && $lsrExpres <= 10000000) $biayaProvisiExpress = 350000;
    elseif ($lsrExpres > 10000000 && $lsrExpres <= 15000000) $biayaProvisiExpress = 400000;
    elseif ($lsrExpres > 15000000 && $lsrExpres <= 25000000) $biayaProvisiExpress = 500000;
    elseif ($lsrExpres > 25000000) $biayaProvisiExpress = $lsrExpres * 0.025;

    // hitung bunga total express
    $bungaTotalExpress = ($lsrExpres * $bungaExpres / 100);
    if ($tenor % 12 == 0) {
        $tahunPinjamanExpress = $tenor / 12;
        $bungaTotalExpress = $bungaTotalExpress * $tahunPinjamanExpress; 
    }

    $totalPinjamanExpress = $lsrExpres + $bungaTotalExpress;
    $angsuranBlnExpress = $totalPinjamanExpress / $tenor;

    // diterima bersih express
    $nominalDiterimaExpress = $lsrExpres - $biayaProvisiExpress; 
}


        $response = array(
    "status" => "success",
    "data" => array(
        "taksasi" => $taksasi,
        "checkBpkb" => $checkBpkb,
        "tenor" => $tenor,
        "nilaiLSR" => $nilaiLSR,
        "hasilLSR" => $hasilLSR,
        "biayaProvisi" => $biayaProvisi,
        "biayaAdmin" => $biayaAdmin,
        "bungaPersen" => $bungaPersen,
        "bungaTotal" => $bungaTotal,
        "angsuranPerBulan" => $angsuranPerBulan,
        "nominalDiterima" => $nominalDiterima,
        "lsrExpres" => $lsrExpres,
        "bungaExpres" => $bungaExpres,
        "angsuranBlnExpress" => $angsuranBlnExpress,
        "biayaProvisiExpress" => $biayaProvisiExpress,
        "nominalDiterimaExpress" => $nominalDiterimaExpress
    )
);

        echo json_encode($response);
    } else {
        echo json_encode(array(
            "status" => "error",
            "message" => "Data tidak ditemukan"
        ));
    }
} else {
    echo json_encode(array(
        "status" => "error",
        "message" => "Parameter tidak lengkap"
    ));
}
?>
