Fix payment balance calculation

This commit is contained in:
afiq.hamzah
2023-05-22 13:49:32 +08:00
parent 4ddd24016c
commit 02dd47cfca
@@ -53,10 +53,10 @@
<th width="10%">No <br>Rujukan</th>
<th width="10%">Tarikh Akhir</th>
<th width="10%">Bayaran</th>
<th width="10%">Baki <br>Pembiayaan</th>
<!-- <th width="10%">Pembiayaan Asal</th>
<th width="10%">Baki <br>Pembiayaan</th>
<!-- <th width="10%">Pembiayaan Asal</th>
<th width="10%">Tempoh</th> -->
</tr>
</thead>
@php $counter = 1;$jenisbayaran = 'tawarruq'; $totalupahasal = 1; @endphp
@@ -81,9 +81,9 @@
$t_akhir = date("d/m/Y", $t_matang);
}
@endphp
<td>
<td>
{{ $t_akhir }}
</td>
</td>
@php
$upahtawarruq = Http::withOptions(['verify' => config('app.api_verify')])->get(config('api.url') . '/api/upahtawarruq/'. $bayar['kodcaw'] . '/' . $bayar['norujukan'])->json();
$totalupahasal = $totalupahasal + $upahtawarruq;
@@ -101,25 +101,25 @@
<input type="hidden" name="txtjenisbayaran[]" value="{{ $jenisbayaran }}" style="text-align: center;" />
<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>-->
<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;" />
<input type="hidden" name="txtkodcawhidden[]" value="{{ $bayar['kodcaw'] }}" style="text-align: center;" />
<input type="hidden" name="txtkodcawhidden[]" value="{{ $bayar['kodcaw'] }}" style="text-align: center;" />
</td>
<td>
<input style="border: none; text-align: center;" type="text" value="{{ number_format($bayar['bakipjm'],2) }}" class="bakibaru" readonly>
</td>
<!-- <td>
{{ number_format($bayar['pinjaman'],2) }}
</td>
</td>
<td>
{{ $bayar['tempoh'] }}
</td> -->
</tr>
</tbody>
@php $counter++; @endphp
@@ -128,7 +128,7 @@
</table>
<hr>
</div>
</div>
<div class="row pb-4 font-weight-light">
<div class="col-6">
@@ -153,11 +153,11 @@
</div>
</div>
<div class="col-md-10 col-sm-12">
<div class="card shadow">
<div class="form" style="text-align: center;">
<div class="card shadow">
<div class="form" style="text-align: center;">
</div>
</div>
@@ -184,7 +184,7 @@
var test = document.getElementById('selepas_tawarruq');
console.log(test);
$('#selepas_tawarruq > tbody > tr').each(function() {
$(this).find("td:gt(0)").each(function(){
// console.log($(this).html());
@@ -292,20 +292,50 @@
});
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) {
let upah = parseFloat($(this).data('upah').replace(",",""));
let bakipinjam = $(this).data('bakipjm');
let jenis = $(this).data('jenis');
let nm = $(this).data('nm');
let taglel = $(this).data('taglel');
let bayar = Number(this.value);
let taglel = $(this).data('taglel');
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'));
let inputvalue = Number(this.value);
// if (inputvalue > upahasal) {
var lebihbyr = inputvalue.toFixed(2) - upahasal.toFixed(2);
let bakipinjambaru = parseFloat(bakipinjam - lebihbyr.toFixed(2));
@@ -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)