148 lines
8.1 KiB
PHP
148 lines
8.1 KiB
PHP
<?php
|
|
|
|
namespace App\Services;
|
|
|
|
use App\CawanganAR;
|
|
use App\ImbangDuga;
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Support\Facades\Http;
|
|
|
|
use Carbon\Carbon;
|
|
|
|
|
|
class ImbangdugaServices
|
|
{
|
|
|
|
private function SwitchFuncImbangDuga($value = 0.0,$name_variable = null,$tarikh,$kodcaw) : Float{
|
|
$value = floatval($value);
|
|
switch ($name_variable) {
|
|
case 'tunaiditangan' :
|
|
if($tarikh >= '2021-04-22' && $tarikh < '2021-05-05'){
|
|
$advansurharini = Http::get(config('api.url').'/api/advansurharini/' . $kodcaw,['tarikh' => $tarikh])->json();
|
|
$data = floatval($value) - floatval($advansurharini);
|
|
}else $data = $value;
|
|
|
|
if($kodcaw == '010219')
|
|
if($tarikh >= '2022-11-24')
|
|
$data = $value - 78379.9;
|
|
else $data = $value;
|
|
else $data = $value;
|
|
break;
|
|
case 'penghutangkaki' :
|
|
if($kodcaw == '010219')
|
|
if($tarikh < '2022-11-24')
|
|
$data = $value - 78379.9;
|
|
else $data = $value;
|
|
else $data = $value;
|
|
break;
|
|
case 'jualan1stop':
|
|
$data = ($kodcaw === '1STOP') ? floatval(129857.00) : 0;
|
|
break;
|
|
case 'belian1stop':
|
|
$data = ($kodcaw === '1STOP') ? floatval(122446.50) : 0;
|
|
break;
|
|
case 'utgterkumpulxtra':
|
|
$data = ($kodcaw === '1STOP') ? floatval(6727.10) : $value;
|
|
break;
|
|
case 'rugilelongxtra':
|
|
$data = ($kodcaw === '1STOP') ? floatval(10079.30) : -($value);
|
|
break;
|
|
case 'bakilelongxtra':
|
|
$data = ($kodcaw === '1STOP') ? floatval(123.20) : $value;
|
|
break;
|
|
case 'cajlelongxtra':
|
|
$data = ($kodcaw === '1STOP') ? floatval(25.50) : 0;
|
|
break;
|
|
case 'upahsimpanxtra':
|
|
$data = ($kodcaw === '1STOP') ? floatval(4894.40) : $value;
|
|
break;
|
|
case null:
|
|
$data = 0;
|
|
break;
|
|
default:
|
|
$data = $value;
|
|
break;
|
|
}
|
|
|
|
return floatval($data);
|
|
}
|
|
|
|
public function SaveImbangDuga($kodcaw){
|
|
|
|
$current = Carbon::now();
|
|
$current = new Carbon();
|
|
|
|
$tarikh = $current->toDateString();
|
|
|
|
$imbangdugadata = ImbangDuga::orderBy('glcode')->get();
|
|
$array_harta = [];
|
|
$array_tanggungan = [];
|
|
$summation_harta = 0;
|
|
$summation_tanggungan = 0;
|
|
|
|
$penyelarasan = CawanganAR::select('penyelarasan')->where('kodcaw',$kodcaw)->get()->toArray();
|
|
$penyelarasan = $penyelarasan[0];
|
|
|
|
foreach($imbangdugadata as $index => $imbangdugaiteration){
|
|
if($imbangdugaiteration->api_redirect != null){
|
|
${$imbangdugaiteration['variable']} = Http::get(config('api.url'). $imbangdugaiteration['api_redirect'] . $kodcaw,['tarikh' => $tarikh])->json();
|
|
if(is_object($imbangdugaiteration)) $data = ($imbangdugaiteration->is_array == 1) ? ${$imbangdugaiteration['variable']}[$imbangdugaiteration['single_var']] : ${$imbangdugaiteration['variable']};
|
|
$data = ($imbangdugaiteration->neg_values == 1) ? $data = -1 * abs($data) : $data;
|
|
$data = ($imbangdugaiteration['variable'] == 'untungrugiterkumpul') ? $data + $penyelarasan['penyelarasan'] : $data;
|
|
}else $data = 0;
|
|
|
|
$data = $this->SwitchFuncImbangDuga($data,$imbangdugaiteration['variable'],$tarikh,$kodcaw);
|
|
|
|
if($imbangdugaiteration->jenis == 'harta'){
|
|
$summation_harta += $data;
|
|
array_push($array_harta,['variable' => ($imbangdugaiteration->is_array == 1) ? $imbangdugaiteration->single_var : $imbangdugaiteration->variable,'glcode' => $imbangdugaiteration->glcode, 'descpt' => $imbangdugaiteration->descpt,'amaun' => ($data) ? $data : 0]);
|
|
}else{
|
|
$summation_tanggungan += $data;
|
|
array_push($array_tanggungan,['variable' => ($imbangdugaiteration->is_array == 1) ? $imbangdugaiteration->single_var : $imbangdugaiteration->variable,'glcode' => $imbangdugaiteration->glcode, 'descpt' => $imbangdugaiteration->descpt,'amaun' => ($data) ? $data : 0]);
|
|
}
|
|
}
|
|
|
|
|
|
dd($array_harta,$array_tanggungan,$summation_harta,$summation_tanggungan);
|
|
Http::post(config('api.url'). 'admin/laporan/akrual/insertImbangDuga',[
|
|
'tarikh' => $tarikh,
|
|
'kodcaw' => $kodcaw,
|
|
'tunaiditangan' => ($array_harta['variable'] == 'tunaiditangan') ? $array_harta['amaun'] : 0,
|
|
'pembiayaantawarruq' => ($array_harta['variable'] == 'pembiayaantawarruq') ? $array_harta['amaun'] : 0,
|
|
'bayaranpendahuluan' => ($array_harta['variable'] == 'bayaranpendahuluan') ? $array_harta['amaun'] : 0,
|
|
'pinjamankoop' => ($array_harta['variable'] == 'pinjamankoop') ? $array_harta['amaun'] : 0,
|
|
'emaspalsu' => ($array_harta['variable'] == 'emaspalsu') ? $array_harta['amaun'] : 0,
|
|
'serahan' => ($array_harta['variable'] == 'serahan') ? $array_harta['amaun'] : 0,
|
|
'bds' => ($array_tanggungan['variable'] == 'bds') ? $array_tanggungan['amaun'] : 0,
|
|
'perubatan' => ($array_tanggungan['variable'] == 'perubatan') ? $array_tanggungan['amaun'] : 0,
|
|
'keraian' => ($array_tanggungan['variable'] == 'keraian') ? $array_tanggungan['amaun'] : 0,
|
|
'rugilelong' => ($array_tanggungan['variable'] == 'rugilelong') ? $array_tanggungan['amaun'] : 0,
|
|
'bakilelong' => ($array_tanggungan['variable'] == 'bakilelong') ? $array_tanggungan['amaun'] : 0,
|
|
'wtd' => ($array_tanggungan['variable'] == 'wtd') ? $array_tanggungan['amaun'] : 0,
|
|
'untungrugiterkumpul' => ($array_tanggungan['variable'] == 'untungrugiterkumpul') ? $array_tanggungan['amaun'] : 0,
|
|
'keun_sebenar' => ($array_tanggungan['variable'] == 'keun_sebenar') ? $array_tanggungan['amaun'] : 0,
|
|
'pendahuluan' => ($array_tanggungan['variable'] == 'pendahuluan') ? $array_tanggungan['amaun'] : 0,
|
|
'cajlelong' => ($array_tanggungan['variable'] == 'cajlelong') ? $array_tanggungan['amaun'] : 0,
|
|
'pindahkekpkb' => ($array_harta['variable'] == 'pindahkekpkb') ? $array_harta['amaun'] : 0,
|
|
'penghutangkaki' => ($array_harta['variable'] == 'penghutangkaki') ? $array_harta['amaun'] : 0,
|
|
'phapuskira' => ($array_harta['variable'] == 'phapuskira') ? $array_harta['amaun'] : 0,
|
|
'belian1stop' => ($array_harta['variable'] == 'belian1stop') ? $array_harta['amaun'] : 0,
|
|
'keun_penggadai' => ($array_harta['variable'] == 'keun_penggadai') ? $array_harta['amaun'] : 0,
|
|
'pend_terakru' => ($array_tanggungan['variable'] == 'pend_terakru') ? $array_harta['amaun'] : 0,
|
|
'cajperkhidmatan' => ($array_tanggungan['variable'] == 'cajperkhidmatan') ? $array_tanggungan['amaun'] : 0,
|
|
'cajlelongxtra' => ($array_tanggungan['variable'] == 'cajlelongxtra') ? $array_tanggungan['amaun'] : 0,
|
|
'upahsimpanxtra' => ($array_tanggungan['variable'] == 'upahsimpan') ? $array_tanggungan['amaun'] : 0,
|
|
'bakilelongxtra' => ($array_tanggungan['variable'] == 'bakilelong') ? $array_tanggungan['amaun'] : 0,
|
|
'rugilelongxtra' => ($array_tanggungan['variable'] == 'kerugianlelong') ? $array_tanggungan['amaun'] : 0,
|
|
'utgterkumpulxtra' => ($array_tanggungan['variable'] == 'untungrugiterkumpul') ? $array_tanggungan['amaun'] : 0,
|
|
'jualan1stop' => ($array_tanggungan['variable'] == 'jualan1stop') ? $array_tanggungan['amaun'] : 0,
|
|
'hapuskira' => ($array_tanggungan['variable'] == 'hapuskira') ? $array_tanggungan['amaun'] : 0,
|
|
'totalharta' => $request->totalharta,
|
|
'totaltanggungan' => $request->totaltanggungan,
|
|
'tagtally' => $request->tagtally,
|
|
'created_at' => $request->tarikh,
|
|
'updated_at' => $request->tarikh
|
|
])->json();
|
|
// dd($array_harta,$array_tanggungan);
|
|
}
|
|
} |