Fix payment balance calculation

This commit is contained in:
afiq.hamzah
2023-05-22 13:49:32 +08:00
parent 4ddd24016c
commit 02dd47cfca
@@ -102,7 +102,7 @@
<input type="hidden" name="txtnorujukanhidden[]" value="{{ $bayar['norujukan'] }}" style="text-align: center;" />
<input type="hidden" name="txtkodcawhidden[]" value="{{ $bayar['kodcaw'] }}" style="text-align: center;" />
</td>-->
<td><input name="txtbayarantawarruq" type="text" value="{{ $upahtawarruq }}" class="form-control" style="text-align: center; border: outset;" data-bakipjm="{{ $bayar['bakipjm'] }}" data-upah="{{ $upahtawarruq }}">
<td><input name="txtbayarantawarruq" type="text" value="{{ $upahtawarruq }}" class="form-control" style="text-align: center; border: outset;" data-bakipjm="{{ $bayar['bakipjm'] }}" data-upah="{{ $upahtawarruq }}" data-nm="{{ $bayar['nilaimarhun'] }}" data-taglel="{{ $bayar['taglel'] }}">
<input type="hidden" name="txtbayaranhidden[]" value="{{ $upahtawarruq }}" class="bayaran" style="text-align: center;" />
<input type="hidden" name="txtjenisbayaran[]" value="{{ $jenisbayaran }}" style="text-align: center;" />
<input type="hidden" name="txtnorujukanhidden[]" value="{{ $bayar['norujukan'] }}" style="text-align: center;" />
@@ -292,6 +292,31 @@
});
function cleanPaymentInput(paymentValue){
let removeAllCommaFromPaymentValue = (paymentValue) => {
return paymentValue.replaceAll(',', '');
}
let removeAllDotExceptForLastFromPaymentValue = (paymentValue) => {
let lastIndexOfDot = paymentValue.lastIndexOf('.');
let first_portion_value = paymentValue.slice(0, lastIndexOfDot);
let second_portion_value = paymentValue.slice(lastIndexOfDot);
first_portion_value = first_portion_value.replaceAll('.', '');
paymentValue = String(first_portion_value) + String(second_portion_value);
return paymentValue;
}
let cleanedPaymentValue = removeAllCommaFromPaymentValue(paymentValue);
cleanedPaymentValue = removeAllDotExceptForLastFromPaymentValue(cleanedPaymentValue);
return cleanedPaymentValue;
}
$("input[name=txtbayarantawarruq]").change(function(e) {
// $("input[name=txtbayarantawarruq]").click(function(e) {
@@ -300,7 +325,12 @@
let jenis = $(this).data('jenis');
let nm = $(this).data('nm');
let taglel = $(this).data('taglel');
let bayar = Number(this.value);
let bayar = cleanPaymentInput(this.value)
bayar = Number(bayar);
$("input[name=txtbayarantawarruq]").val(bayar.toFixed(2))
let errorlebih = (bakipinjam - (nm * 0.1) + upah);
let upahasal = Number($(this).data('upah'));
@@ -322,6 +352,8 @@
)
$(this).val(errorlebih.toFixed(2));
$(this).closest('tr').find('.bayaran').val(errorlebih.toFixed(2));
let bakipinjambaru = parseFloat(bakipinjam - errorlebih.toFixed(2));
$(this).closest('tr').find('.bakibaru').val(bakipinjambaru.toFixed(2));
calculateall(jenis, taglel);
return false;
}else if(bayar < parseFloat(upah) && parseFloat(upah) !== 0.00)