This commit is contained in:
Zakwan Hamdan
2023-02-10 18:37:27 +08:00
3 changed files with 122 additions and 10 deletions
+98 -5
View File
@@ -1389,10 +1389,15 @@ class LaporanController extends Controller
public function GenerateMonthlyAkrual(Request $request){
$firstmonth_behind = Carbon::now()->startOfMonth()->subMonthsNoOverflow(1);
$secondmonth_behind = Carbon::now()->startOfMonth()->subMonthsNoOverflow(2);
$tarikh = $request->tahun . '-' . $request->bulan . '-01';
$month_request = $current = new Carbon($tarikh);
$firstmonth_behind = clone $month_request;
$secondmonth_behind = clone $month_request;
$firstmonth_behind_end = clone $month_request;
$firstmonth_behind_end = Carbon::now()->endOfMonth()->subMonthsNoOverflow(1);
$firstmonth_behind->startOfMonth();
$secondmonth_behind->startOfMonth()->subMonthsNoOverflow(1);
$firstmonth_behind_end->endOfMonth();
$firstmonth_behind_month = $firstmonth_behind->format('m');
$secondmonth_behind_month = $secondmonth_behind->format('m');
@@ -1434,13 +1439,16 @@ class LaporanController extends Controller
$available_akru = AkruNet::on($caw['mysql'])
->where('bulan',(int)$firstmonth_behind_month)
->where('tahun',(int)$firstmonth_behind_year)
->first();
try{
if($available_akru){
if($available_akru['jumlah'] !== $accrual_net){
AkruNet::on($caw['mysql'])->where('bulan','=',(int)$firstmonth_behind_month)
->update(['jumlah' => $accrual_net]);
AkruNet::on($caw['mysql'])
->where('bulan','=',(int)$firstmonth_behind_month)
->where('tahun','=',(int)$firstmonth_behind_year)
->update(['jumlah' => $accrual_net]);
}
}else{
$akrunet = new AkruNet();
@@ -1528,4 +1536,89 @@ class LaporanController extends Controller
return response('notfound');
}
}
public function UpdateDailyImbangDuga(Request $request){
// $cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$request->kodcaw)->get();
$tarikh = new Carbon($request->tarikh);
$firstmonth_behind = clone $tarikh;
$secondmonth_behind = clone $tarikh;
$firstmonth_behind_end = clone $tarikh;
$firstmonth_behind->startOfMonth();
$secondmonth_behind->startOfMonth()->subMonthsNoOverflow(1);
$firstmonth_behind_end->endOfMonth();
$firstmonth_behind_month = $firstmonth_behind->format('m');
$secondmonth_behind_month = $secondmonth_behind->format('m');
$firstmonth_behind_year = $firstmonth_behind->format('Y');
$secondmonth_behind_year = $secondmonth_behind->format('Y');
$firstmonth_behind_extension = $firstmonth_behind->toDateString();
$firstmonth_behind_extension_end = $firstmonth_behind_end->toDateString();
$cawangan = Cawangan::on('mysql7')->where('zone',$request->zone)->get();
$tebuscontroller = new TebusController();
foreach($cawangan as $index=>$caw){
DB::connection($caw['mysql'])->beginTransaction();
if($secondmonth_behind_year == 2022 && (int)$secondmonth_behind_month > 4){
$audit_backdate = $tebuscontroller->StokAuditGenerateTerakru($secondmonth_behind_month,$caw,$secondmonth_behind_year);
}
$result_audit_stated = $tebuscontroller->StokAuditGenerateTerakru($firstmonth_behind_month,$caw,$firstmonth_behind_year);
$totaltunggakan_now = $result_audit_stated->sum('upahblmbyar');
$totaltunggakan_past = $audit_backdate->sum('upahblmbyar');
$request_generate = new \Illuminate\Http\Request([
'mula' => $firstmonth_behind_extension,
'hingga' => $firstmonth_behind_extension_end,
'kodcaw' => $caw['kodcaw'],
]);
$keuntungan = $this->SemakanKeuntunganLejer($caw['kodcaw'],$request_generate);
$data_keuntungan = $keuntungan->getContent();
$data = json_decode($data_keuntungan, true);
$calculation = $totaltunggakan_past - $data['keuntungan_semasa'];
$accrual_net = $totaltunggakan_now - $calculation;
$ab = imbangdugabackup::on($caw['mysql'])
->where('tarikh',$request->tarikh)
->first();
$total_akru = AkruNet::on($caw['mysql'])
->where('bulan','<',(int)$firstmonth_behind_month)
->where('tahun',(int)$firstmonth_behind_year)
->sum('jumlah');
$totalpend_terakru = ($total_akru + $accrual_net);
$totalharta = $ab['tunaiditangan'] + $ab['pembiayaantawarruq'] + $ab['bayaranpendahuluan'] + $ab['pinjamankoop'] + $ab['emaspalsu'] + $ab['pindahkekpkb'] + $ab['penghutangkaki'] + $ab['phapuskira'] + $ab['belian1stop'] + $totaltunggakan_now + $ab['serahan'];
$totaltanggungan = $totalpend_terakru + $ab['bds'] + $ab['perubatan'] + $ab['keraian'] + $ab['rugilelong'] + $ab['bakilelong'] + $ab['wtd'] + $ab['untungrugiterkumpul'] + $ab['keun_sebenar'] + $ab['pendahuluan'] + $ab['cajlelong'] + $ab['cajperkhidmatan'] + $ab['cajlelongxtra'] + $ab['upahsimpanxtra'] + $ab['bakilelongxtra'] + $ab['rugilelongxtra'] + $ab['utgterkumpulxtra'] + $ab['jualan1stop'] + $ab['hapuskira'];
$tally = (round($totalharta,2) == round($totaltanggungan,2)) ? 1 : 0;
try{
if($ab){
imbangdugabackup::on($caw['mysql'])->where('tarikh',$request->tarikh)->update([
'tagtally' => $tally,
'totalharta' => $totalharta,
'totaltanggungan' => $totaltanggungan,
'keun_penggadai' => $totaltunggakan_now,
'pend_terakru' => ($total_akru + $accrual_net)
]);
}
DB::connection($caw['mysql'])->commit();
}catch (\Throwable $e){
DB::connection($caw['mysql'])->rollBack();
return response($e);
}
}
return response('succesfully generated!');
}
}
+23 -5
View File
@@ -27,7 +27,9 @@ use App\Audit;
use App\GlDetail;
use App\Pembeli;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Http;
use Log;
use DB;
use Carbon\Carbon;
@@ -560,10 +562,17 @@ class LelongController extends Controller
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$request->kodcaw)->first();
$lelong = Lelong::on($cawangan['mysql'])
->where('norujukan', '=', $request->norujukan)
//->where('t_lelong', '<=', $current->toDateString())
->first();
if($request->kodcaw == 'KB2' || $request->kodcaw == 'WCY' || $request->kodcaw == 'WB' || $request->kodcaw == 'KB1' || $request->kodcaw == 'GC' || $request->kodcaw == '020301' || $request->kodcaw == 'APM' || $request->kodcaw == 'ARM' || $request->kodcaw == '011013' || $request->kodcaw == '011412'){
$lelong = Http::withOptions(['verify' => true])->get('https://adminbid.arrahn.com.my/api/portalApi',[
'norujukan' => $request->norujukan
])->json();
$lelong = ($lelong != null) ? $lelong['lelong'] : [];
}else{
$lelong = Lelong::on($cawangan['mysql'])
->where('norujukan', '=', $request->norujukan)
//->where('t_lelong', '<=', $current->toDateString())
->first();
}
if($lelong)
{
@@ -636,7 +645,13 @@ class LelongController extends Controller
public function searchBlockLelong(Request $request){
$cawangan = Cawangan::on('mysql7')->where('kodcaw',$request->kodcaw)->first();
$lelong = Lelong::on($cawangan['mysql'])->where([['norujukan',$request->norujukan]])->first();
if($request->kodcaw == 'KB2' || $request->kodcaw == 'WCY' || $request->kodcaw == 'WB'|| $request->kodcaw == 'KB1' || $request->kodcaw == 'GC' || $request->kodcaw == '020301' || $request->kodcaw == 'APM' || $request->kodcaw == 'ARM' || $request->kodcaw == '011013' || $request->kodcaw == '011412')
{
$lelong = Http::withOptions(['verify' => true])->get('https://adminbid.arrahn.com.my/api/portalApi',['norujukan' => $request->norujukan])->json();
$lelong = ($lelong != null) ? $lelong['lelong'] : [];
}else{
$lelong = Lelong::on($cawangan['mysql'])->where([['norujukan',$request->norujukan]])->first();
}
return response()->json($lelong);
}
@@ -780,9 +795,12 @@ class LelongController extends Controller
->where('poskod','=',$customer['poskod'])
->first();
if($poskod)
$daerah = Daerah::on('mysql7')
->where('koddaerah','=',$poskod['koddaerah'])
->first();
else
Log::debug('poskod tiada' . $lel['nokp']);
$negeri = Negeri::on('mysql7')
->where('kodnegeri','=',$poskod['kodnegeri'])
+1
View File
@@ -746,6 +746,7 @@ $router->group(['prefix'=>'admin'], function () use ($router){
$router->get('laporan/akrual/generateMonthly',['uses'=>'LaporanController@GenerateMonthlyAkrual']);
$router->get('laporan/akrual/insertImbangDuga',['uses'=>'LaporanController@InsertDailyImbangDuga']);
$router->get('laporan/akrual/UntungRugiTerkumpul/{kodcaw}',['uses' => 'AdminPageController@calculationUntungTerkumpulAkru']);
$router->get('laporan/akrual/updateImbangDuga',['uses'=>'LaporanController@UpdateDailyImbangDuga']);
$router->get('laporan/online',['uses'=>'AdminPageController@LaporanOnline']);
$router->get('laporan/tuntutbaki',['uses'=>'AdminPageController@LaporanTuntutBaki']);