imbangduga add services
This commit is contained in:
@@ -0,0 +1,54 @@
|
||||
<?php
|
||||
|
||||
namespace App\Console\Commands;
|
||||
|
||||
use Illuminate\Console\Command;
|
||||
use Illuminate\Support\Facades\Http;
|
||||
|
||||
class DailyAkru extends Command
|
||||
{
|
||||
/**
|
||||
* The name and signature of the console command.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $signature = 'akru:daily {--zone=1 : Choose which zone to update}';
|
||||
|
||||
/**
|
||||
* The console command description.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $description = 'Generate Daily Akrual For Trial Balance';
|
||||
|
||||
/**
|
||||
* Create a new command instance.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
parent::__construct();
|
||||
}
|
||||
|
||||
/**
|
||||
* Execute the console command.
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
public function handle()
|
||||
{
|
||||
$zone = $this->option('zone');
|
||||
|
||||
$updateAkruDaily = Http::withOptions(['verify' => config('app.api_verify')])->get(config('api.url') . '/admin/laporan/akrual/generateDaily',[
|
||||
'zone' => $zone
|
||||
])->json();
|
||||
|
||||
if($updateAkruDaily == 'succesful')
|
||||
{
|
||||
return 0;
|
||||
}else{
|
||||
return 'failed';
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
<?php
|
||||
|
||||
namespace App;
|
||||
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
|
||||
class ImbangDuga extends Model
|
||||
{
|
||||
protected $table = 'imbangdugadata';
|
||||
|
||||
protected $fillable = [
|
||||
'no',
|
||||
'descpt',
|
||||
'glcode',
|
||||
'api_redirect',
|
||||
'variable',
|
||||
'single_var',
|
||||
'is_array',
|
||||
'jenis'
|
||||
];
|
||||
}
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
namespace App\Services;
|
||||
|
||||
use App\ImbangDuga;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Http;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
@@ -11,18 +12,95 @@ use Carbon\Carbon;
|
||||
|
||||
class ImbangdugaServices
|
||||
{
|
||||
public function SaveImbangDuga(Request $request)
|
||||
{
|
||||
|
||||
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){
|
||||
|
||||
$auth_user = Auth::user();
|
||||
$api_url = config('api.url');
|
||||
|
||||
$current = Carbon::now();
|
||||
$current = new Carbon();
|
||||
|
||||
$tarikh_imbangan = $current->toDateString();
|
||||
$tarikh_imbangan2 = $current->toDateString();
|
||||
$tarikh = $current->toDateString();
|
||||
// dd($tarikh);
|
||||
// $tarikh_imbangan2 = $current->toDateString();
|
||||
|
||||
$imbangdugadata = ImbangDuga::orderBy('glcode')->get();
|
||||
$array_harta = [];
|
||||
$array_tanggungan = [];
|
||||
|
||||
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']};
|
||||
}else $data = 0;
|
||||
|
||||
$data = $this->SwitchFuncImbangDuga($data,$imbangdugaiteration['variable'],$tarikh,$kodcaw);
|
||||
|
||||
if($imbangdugaiteration->jenis == 'harta'){
|
||||
array_push($array_harta,['glcode' => $imbangdugaiteration->glcode, 'descpt' => $imbangdugaiteration->descpt,'amaun' => ($data) ? $data : 0]);
|
||||
}else{
|
||||
array_push($array_tanggungan,['glcode' => $imbangdugaiteration->glcode, 'descpt' => $imbangdugaiteration->descpt,'amaun' => ($data) ? $data : 0]);
|
||||
}
|
||||
}
|
||||
|
||||
dd($array_harta,$array_tanggungan);
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user