Merge branch 'ujrah_master' of https://bitbucket.org/arrahn-pkb/kaunter into finadev

This commit is contained in:
Afrina Alimi
2024-01-04 11:14:51 +08:00
2 changed files with 72 additions and 17 deletions
+11 -4
View File
@@ -42,6 +42,8 @@ class ImbangdugaServices
protected float $utgterkumpulxtra = 0;
protected float $jualan1stop = 0;
protected float $hapuskira = 0;
protected float $ujrah = 0;
protected float $onepercent = 0;
private function SwitchFuncImbangDuga($value = 0.0,$name_variable = null,$tarikh,$kodcaw) : Float{
$value = floatval($value);
@@ -132,6 +134,8 @@ class ImbangdugaServices
'utgterkumpulxtra' => ($this->utgterkumpulxtra) ? $this->utgterkumpulxtra : 0,
'jualan1stop' => ($this->jualan1stop) ? $this->jualan1stop : 0,
'hapuskira' => ($this->hapuskira) ? $this->hapuskira : 0,
'ujrah' => ($this->ujrah) ? $this->ujrah : 0,
'onepercent' => ($this->onepercent) ? $this->onepercent : 0,
'totalharta' => $sum_harta,
'totaltanggungan' => $sum_tanggungan,
'tagtally' => $tagtally,
@@ -148,7 +152,8 @@ class ImbangdugaServices
$current = new Carbon();
$tarikh = $current->toDateString();
$yesterday = Carbon::now()->subDays(1)->toDateString();
$imbangdugadata = ImbangDuga::orderBy('glcode')->get();
$array_harta = [];
$array_tanggungan = [];
@@ -161,9 +166,11 @@ class ImbangdugaServices
foreach($imbangdugadata as $index => $imbangdugaiteration){
if($imbangdugaiteration->api_redirect != null){
if($imbangdugaiteration['variable'] == 'keun_sebenar' || $imbangdugaiteration['variable'] == 'pend_terakru'){
${$imbangdugaiteration['variable']} = Http::get(config('api.url'). $imbangdugaiteration['api_redirect'],['tarikh' => $tarikh,'kodcaw' => $kodcaw])->json();
// ${$imbangdugaiteration['variable']} = Http::get(config('api.url'). $imbangdugaiteration['api_redirect'],['tarikh' => $tarikh,'kodcaw' => $kodcaw])->json();
${$imbangdugaiteration['variable']} = Http::get(config('api.url'). $imbangdugaiteration['api_redirect'],['tarikh' => ($imbangdugaiteration['variable'] == 'pend_terakru') ? $tarikh : $yesterday,'kodcaw' => $kodcaw])->json();
}else{
${$imbangdugaiteration['variable']} = Http::get(config('api.url'). $imbangdugaiteration['api_redirect'] . $kodcaw,['tarikh' => $tarikh])->json();
// ${$imbangdugaiteration['variable']} = Http::get(config('api.url'). $imbangdugaiteration['api_redirect'] . $kodcaw,['tarikh' => $tarikh])->json();
${$imbangdugaiteration['variable']} = Http::get(config('api.url'). $imbangdugaiteration['api_redirect'] . $kodcaw,['tarikh' => ($imbangdugaiteration['variable'] == 'keun_penggadai') ? $tarikh : $yesterday])->json();
}
if(is_object($imbangdugaiteration)) $data = ($imbangdugaiteration->is_array == 1) ? ${$imbangdugaiteration['variable']}[$imbangdugaiteration['single_var']] : ${$imbangdugaiteration['variable']};
@@ -195,7 +202,7 @@ class ImbangdugaServices
}
$tagtally = (number_format($summation_harta,2) == number_format($summation_tanggungan,2)) ? 1 : 0;
$response = $this->InsertImbangDugaBackup($tarikh,$kodcaw,$summation_harta,$summation_tanggungan,$tagtally);
$response = $this->InsertImbangDugaBackup($yesterday,$kodcaw,$summation_harta,$summation_tanggungan,$tagtally);
if($response == 'successful'){
return response('succesful');
+61 -13
View File
@@ -293,7 +293,7 @@
<b>BAYARAN PELANGGAN (RM)</b>
</div>
<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 class="form-group row" id="divbayaran">
@@ -301,7 +301,7 @@
<b>BAYARAN PELANGGAN (RM)</b>
</div>
<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>
<fieldset class="scheduler-border">
@@ -2627,7 +2627,7 @@
var nowakil = nw;
var perludibayar = parseFloat($('#perludibayarAT').val().replace(/[^0-9.-]+/g,""));
var bayaranpelanggan = parseFloat($('#duitPelanggan').val());
var bakipelanggan = parseFloat($('#bakiPelanggan').val());
var bakipelanggan = parseFloat($('#bakiPelanggan').val().replace(/[^0-9.-]+/g,""));
var kadarupahbaru = 0;
// if(nilai_marhun > 0 && nilai_marhun < 400.99){
@@ -3458,10 +3458,48 @@ function funcexcuse(toggle){
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 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 number = el.value;
let pembiayaanbaru = 0;
@@ -3470,7 +3508,7 @@ function validateFloatKeyPress(el, evt) {
if(!isNaN(keypress)){
tot = number.toString() + keypress.toString();
tot = number.toString().replace(/[^0-9.-]+/g,"") + keypress.toString();
}
var number = el.value.split('.');
@@ -3482,9 +3520,11 @@ function validateFloatKeyPress(el, evt) {
return false;
}
let ansuranbaru = parseFloat(tot) - parseFloat(bakiupah);
//total pembiayaan baru
pembiayaanbaru = pembiayaan - parseFloat(tot);
pembiayaanbaru = pembiayaan - ansuranbaru;
//get the carat position
var caratPos = getSelectionStart(el);
var dotPos = el.value.indexOf(".");
@@ -3492,7 +3532,8 @@ function validateFloatKeyPress(el, evt) {
return false;
}
if(pembiayaanbaru <= tenpercent){
if(parseFloat(pembiayaanbaru) <= tenpercent){
Swal.fire('Amaran!','Pembiayaan baru < 10%','error');
return false;
}
@@ -3553,7 +3594,7 @@ function getSelectionStart(o) {
function bayaranATfunc(e){
let byr = $(e).val();
let byr = $(e).val().replace(/[^0-9.-]+/g,"");
let total = 0;
let pdbyr = 0;
let pembiayaanbaru = 0;
@@ -3585,8 +3626,15 @@ function bayaranATfunc(e){
pembiayaanbaru = pembiayaan - kumpul;
totalpercent = (pembiayaanbaru / hargamarhun) * 100;
$('#pinjamanbaru').val(formatter.format(pembiayaanbaru));
$('#basic-addon2').text(formatter.format(totalpercent.toFixed(2)));
if(kumpul > 0){
$('#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
// let totalbaki = byr - baki;
@@ -3598,7 +3646,7 @@ function bayaranATfunc(e){
}
function blockbayaranAT(event){
let value = $(event).val();
let value = $(event).val().replace(/[^0-9.-]+/g,"");
let upah = parseFloat($('#jumlahupah').val());
let pembiayaan = parseFloat("{{ $pembiayaanbaru }}");
let pembiayaanlama = parseFloat("{{ $bakipjm }}");