Merged in new-onepercent (pull request #66)
fix auto tawarruq thousand seperator
This commit is contained in:
@@ -293,7 +293,7 @@
|
|||||||
<b>BAYARAN PELANGGAN (RM)</b>
|
<b>BAYARAN PELANGGAN (RM)</b>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-8">
|
<div class="col-8">
|
||||||
<input type="text" id="perludibayarAT" style="font-weight:bold;" class="form-control" onselectstart="return false;" onkeyup="bayaranATfunc(this)" onkeypress="return validateFloatKeyPress(this,event);" onchange="blockbayaranAT(this)" readonly/>
|
<input type="text" id="perludibayarAT" style="font-weight:bold;" class="form-control" onselectstart="return false;" onpaste="return false;" ondrop="return false;" onkeyup="bayaranATfunc(this)" onkeypress="return validateFloatKeyPressAT(this,event);" onchange="blockbayaranAT(this)" readonly/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group row" id="divbayaran">
|
<div class="form-group row" id="divbayaran">
|
||||||
@@ -301,7 +301,7 @@
|
|||||||
<b>BAYARAN PELANGGAN (RM)</b>
|
<b>BAYARAN PELANGGAN (RM)</b>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-8">
|
<div class="col-8">
|
||||||
<input type="text" id="bayaran" onkeyup="bayartambahan(this)" placeholder="0.00" class="form-control" disabled/>
|
<input type="text" id="bayaran" onkeyup="bayartambahan(this)" onkeypress="return validateFloatKeyPressAnsuran(this,event);" placeholder="0.00" class="form-control" disabled/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<fieldset class="scheduler-border">
|
<fieldset class="scheduler-border">
|
||||||
@@ -2627,7 +2627,7 @@
|
|||||||
var nowakil = nw;
|
var nowakil = nw;
|
||||||
var perludibayar = parseFloat($('#perludibayarAT').val().replace(/[^0-9.-]+/g,""));
|
var perludibayar = parseFloat($('#perludibayarAT').val().replace(/[^0-9.-]+/g,""));
|
||||||
var bayaranpelanggan = parseFloat($('#duitPelanggan').val());
|
var bayaranpelanggan = parseFloat($('#duitPelanggan').val());
|
||||||
var bakipelanggan = parseFloat($('#bakiPelanggan').val());
|
var bakipelanggan = parseFloat($('#bakiPelanggan').val().replace(/[^0-9.-]+/g,""));
|
||||||
|
|
||||||
var kadarupahbaru = 0;
|
var kadarupahbaru = 0;
|
||||||
// if(nilai_marhun > 0 && nilai_marhun < 400.99){
|
// if(nilai_marhun > 0 && nilai_marhun < 400.99){
|
||||||
@@ -3458,10 +3458,48 @@ function funcexcuse(toggle){
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
function validateFloatKeyPress(el, evt) {
|
function validateFloatKeyPressAnsuran(el, evt) {
|
||||||
|
var charCode = (evt.which) ? evt.which : event.keyCode;
|
||||||
|
var number = el.value;
|
||||||
|
let keypress = evt.key;
|
||||||
|
|
||||||
|
// Split the current value by dot to check the number of decimal places
|
||||||
|
var numberParts = number.split('.');
|
||||||
|
|
||||||
|
// Check if the pressed key is a valid character for a floating-point number
|
||||||
|
if (charCode != 46 && charCode > 31 && (charCode < 48 || charCode > 57)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Check if there is already a dot, and the pressed key is another dot
|
||||||
|
if (numberParts.length > 1 && charCode == 46) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get the caret position in the input field
|
||||||
|
var caratPos = getSelectionStart(el);
|
||||||
|
|
||||||
|
// Get the position of the existing dot
|
||||||
|
var dotPos = el.value.indexOf(".");
|
||||||
|
|
||||||
|
// Check if the caret is after the existing dot, and there are more than 2 digits after the dot
|
||||||
|
if (caratPos > dotPos && dotPos > -1 && (numberParts[1] && numberParts[1].length > 1)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// If the last digit is not 5 or 0, disallow the input
|
||||||
|
if (numberParts[1] && numberParts[1].length === 1 && !['0', '5'].includes(keypress)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
function validateFloatKeyPressAT(el, evt) {
|
||||||
let hargamarhun = parseFloat("{{ $nilaihargasemasa }}");
|
let hargamarhun = parseFloat("{{ $nilaihargasemasa }}");
|
||||||
let tenpercent = hargamarhun * (10/100);
|
let tenpercent = hargamarhun * (10/100);
|
||||||
let pembiayaan = parseFloat($('#pinjamanbaru').val().replace(/[^0-9.-]+/g,""));
|
let pembiayaan = parseFloat($('#hargapembiayaansemasa').val().replace(/[^0-9.-]+/g,""));
|
||||||
|
let bakiupah = parseFloat($('#jumlahupah').val().replace(/[^0-9.-]+/g,""));
|
||||||
var charCode = (evt.which) ? evt.which : event.keyCode;
|
var charCode = (evt.which) ? evt.which : event.keyCode;
|
||||||
var number = el.value;
|
var number = el.value;
|
||||||
let pembiayaanbaru = 0;
|
let pembiayaanbaru = 0;
|
||||||
@@ -3470,7 +3508,7 @@ function validateFloatKeyPress(el, evt) {
|
|||||||
|
|
||||||
|
|
||||||
if(!isNaN(keypress)){
|
if(!isNaN(keypress)){
|
||||||
tot = number.toString() + keypress.toString();
|
tot = number.toString().replace(/[^0-9.-]+/g,"") + keypress.toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
var number = el.value.split('.');
|
var number = el.value.split('.');
|
||||||
@@ -3482,8 +3520,10 @@ function validateFloatKeyPress(el, evt) {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
let ansuranbaru = parseFloat(tot) - parseFloat(bakiupah);
|
||||||
|
|
||||||
//total pembiayaan baru
|
//total pembiayaan baru
|
||||||
pembiayaanbaru = pembiayaan - parseFloat(tot);
|
pembiayaanbaru = pembiayaan - ansuranbaru;
|
||||||
|
|
||||||
//get the carat position
|
//get the carat position
|
||||||
var caratPos = getSelectionStart(el);
|
var caratPos = getSelectionStart(el);
|
||||||
@@ -3492,7 +3532,8 @@ function validateFloatKeyPress(el, evt) {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(pembiayaanbaru <= tenpercent){
|
if(parseFloat(pembiayaanbaru) <= tenpercent){
|
||||||
|
Swal.fire('Amaran!','Pembiayaan baru < 10%','error');
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -3515,7 +3556,7 @@ function getSelectionStart(o) {
|
|||||||
|
|
||||||
function bayaranATfunc(e){
|
function bayaranATfunc(e){
|
||||||
|
|
||||||
let byr = $(e).val();
|
let byr = $(e).val().replace(/[^0-9.-]+/g,"");
|
||||||
let total = 0;
|
let total = 0;
|
||||||
let pdbyr = 0;
|
let pdbyr = 0;
|
||||||
let pembiayaanbaru = 0;
|
let pembiayaanbaru = 0;
|
||||||
@@ -3547,8 +3588,15 @@ function bayaranATfunc(e){
|
|||||||
pembiayaanbaru = pembiayaan - kumpul;
|
pembiayaanbaru = pembiayaan - kumpul;
|
||||||
totalpercent = (pembiayaanbaru / hargamarhun) * 100;
|
totalpercent = (pembiayaanbaru / hargamarhun) * 100;
|
||||||
|
|
||||||
$('#pinjamanbaru').val(formatter.format(pembiayaanbaru));
|
if(kumpul > 0){
|
||||||
$('#basic-addon2').text(formatter.format(totalpercent.toFixed(2)));
|
$('#pinjamanbaru').val(formatter.format(pembiayaanbaru));
|
||||||
|
$('#basic-addon2').text(formatter.format(totalpercent.toFixed(2)));
|
||||||
|
}else{
|
||||||
|
$('#pinjamanbaru').val(formatter.format(pembiayaan));
|
||||||
|
totalpercent = (pembiayaan / hargamarhun) * 100;
|
||||||
|
$('#basic-addon2').text(formatter.format(totalpercent.toFixed(2)));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
//bakipelanggan
|
//bakipelanggan
|
||||||
// let totalbaki = byr - baki;
|
// let totalbaki = byr - baki;
|
||||||
@@ -3560,7 +3608,7 @@ function bayaranATfunc(e){
|
|||||||
}
|
}
|
||||||
|
|
||||||
function blockbayaranAT(event){
|
function blockbayaranAT(event){
|
||||||
let value = $(event).val();
|
let value = $(event).val().replace(/[^0-9.-]+/g,"");
|
||||||
let upah = parseFloat($('#jumlahupah').val());
|
let upah = parseFloat($('#jumlahupah').val());
|
||||||
let pembiayaan = parseFloat("{{ $pembiayaanbaru }}");
|
let pembiayaan = parseFloat("{{ $pembiayaanbaru }}");
|
||||||
let pembiayaanlama = parseFloat("{{ $bakipjm }}");
|
let pembiayaanlama = parseFloat("{{ $bakipjm }}");
|
||||||
|
|||||||
Reference in New Issue
Block a user