query('SELECT * FROM m_cara_bayar');
$arr_cara_bayar = array();
foreach($m_cara_bayar->fetchAll() as $ds){
$arr_cara_bayar[$ds['id_cara_bayar']] = $ds['nama_cara_bayar'];
}
$m_penjamin = $db->query('SELECT * FROM m_penjamin where aktif = 1::bit order by id_penjamin');
$arr_penjamin = array();
foreach($m_penjamin->fetchAll() as $ds){
$arr_penjamin[$ds['id_penjamin']] = trim($ds['nama_penjamin']);
}
?>
Alokasi Billing
Tunai");
}
else if (cek_val == 2) {
$("#kol_penjamin-"+cek_nomor).html(opsi_penjamin.replaceAll("xno",cek_nomor));
}
else {
Toast.fire({title:"Pilih Carabayar dahulu",type:"error"});
}
}
function tambah_alokasi(noindex, val_carabayar = null, val_penjamin = null, jumlah_bayar = null) {
let jumlah_teralokasi = 0;
let idx_bill = [];
for (var key in arr_bill)
{
let tarif = parseFloat(arr_bill[key]);
if(jumlah_bayar != null && jumlah_bayar > 0) {
let sim_alokasi = jumlah_teralokasi + tarif;
// jika jumlah akumulasi perhitungan lebih dari jumlah bayar maka total terbayar tetap
if(sim_alokasi > jumlah_bayar)
{
continue;
}
}
if(sisa - tarif >= 0) {
if($.inArray(key, flag_idxbill) === -1){ // jika tidak ditemukan key di flag
idx_bill.push({[key]:tarif});
jumlah_teralokasi += tarif;
sisa -= tarif;
flag_idxbill.push(key);
}
}
}
nox = (noindex != null) ? noindex : no;
let carabayar = opsi_carabayar.replaceAll("xno",nox);
let penjamin = opsi_penjamin.replaceAll("xno",nox);
let jumlah_alokasi = (jumlah_bayar != null && jumlah_bayar > 0) ? jumlah_bayar : jumlah_teralokasi;
$("#status_billing tbody").append("