diff --git a/app/Http/Controllers/AdminPageController.php b/app/Http/Controllers/AdminPageController.php index 169331d..511d2df 100644 --- a/app/Http/Controllers/AdminPageController.php +++ b/app/Http/Controllers/AdminPageController.php @@ -27,6 +27,9 @@ use App\Permohonan; use App\Status; use App\LookupStatus; use App\ARFiles; +use App\WTDDraft; +use App\SerahBaki; +use App\WTD; use DB; use Carbon\Carbon; @@ -1983,11 +1986,11 @@ class AdminPageController extends Controller $time = date('g:i a',strtotime($stat['tarikhmasa'])); switch($stat['statusid']){ - case 1: array_push($status_lookup,['tarikh' => $date, 'masa' => $time,'nama_pemohon' => $stat['nama_pemohon']]); + case 1: array_push($status_lookup,['tarikh' => $date, 'masa' => $time,'nama_pemohon' => $stat['nama_pemohon'],'permohonanfiles_id' => $stat['files_permohonan_id']]); break; - case 2: array_push($status_lookup,['tarikh' => $date, 'masa' => $time,'nama_operasi' => $stat['nama_operasi']]); + case 2: array_push($status_lookup,['tarikh' => $date, 'masa' => $time,'nama_operasi' => $stat['nama_operasi'],'operasifiles_id' => $stat['files_kelope_id']]); break; - case 3: array_push($status_lookup,['tarikh' => $date, 'masa' => $time,'nama_akaun' => $stat['nama_akaun']]); + case 3: array_push($status_lookup,['tarikh' => $date, 'masa' => $time,'nama_akaun' => $stat['nama_akaun'],'akaunfiles_id' => $stat['files_kelakaun_id']]); break; case 4: array_push($status_lookup,['tarikh' => $date, 'masa' => $time,'jumlah_diluluskan' => $stat['jumlah_diluluskan'],'pbfiles' => $stat['files_id']]); break; @@ -2011,6 +2014,7 @@ class AdminPageController extends Controller { $timeloni = Carbon::now(); $status = new Status; + $ar_files = new ARFiles; try{ if($request->kelulusan == 'Lulus') @@ -2020,11 +2024,18 @@ class AdminPageController extends Controller $status->tarikhmasa = $timeloni->toDateTimeString(); $status->save(); + $ar_files->data = $request->dataimage; + $ar_files->type = $request->imagetype; + $ar_files->filename = $request->imagename; + $ar_files->tarikhmasa = $timeloni->toDateTimeString(); + $ar_files->save(); + $pengesahan = Pengesahan::where([['nopermohonan',$request->mohonid],['tagoperasi',0]]) ->update(array( 'tagoperasi' => 1, 'nama_operasi' => $request->namaoperasi, - 'tarikh_pengesahanoperasi' => $timeloni->toDateString() + 'tarikh_pengesahanoperasi' => $timeloni->toDateString(), + 'files_kelope_id' => $ar_files->id )); }else{ @@ -2057,6 +2068,7 @@ class AdminPageController extends Controller { $timeloni = Carbon::now(); $status = new Status; + $ar_files = new ARFiles; try{ @@ -2067,11 +2079,18 @@ class AdminPageController extends Controller $status->tarikhmasa = $timeloni->toDateTimeString(); $status->save(); + $ar_files->data = $request->dataimage; + $ar_files->type = $request->imagetype; + $ar_files->filename = $request->imagename; + $ar_files->tarikhmasa = $timeloni->toDateTimeString(); + $ar_files->save(); + $pengesahan = Pengesahan::where([['nopermohonan',$request->mohonid],['tagakaun',0]]) ->update(array( 'tagakaun' => 1, 'nama_akaun' => $request->namaakaun, - 'tarikh_pengesahanakaun' => $timeloni->toDateString() + 'tarikh_pengesahanakaun' => $timeloni->toDateString(), + 'files_kelakaun_id' => $ar_files->id )); }else @@ -2289,4 +2308,275 @@ class AdminPageController extends Controller return response($kp,200); } + + public function rekodWTD(Request $request){ + + $cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$request->kodcaw)->first(); + + $latestbatch = SerahBaki::on($cawangan['mysql'])->where('norujukan','baru')->get(); + + return response()->json($latestbatch,200); + + } + + public function rekodWTDByBatchNo($batchno,Request $request){ + + $cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$request->kodcaw)->first(); + + $wtdnorujukan = WTDDraft::on('mysql7')->where('batchno_serah',$batchno)->pluck('norujukan'); + + $lelong = Lelong::on($cawangan['mysql']) + ->select('gadai.norujukan','lelong.t_lelong','gadai.pinjaman','lelong.baki') + ->whereIn('lelong.norujukan',$wtdnorujukan) + ->join('gadai','lelong.norujukan','=','gadai.norujukan') + ->get(); + + return response()->json($lelong,200); + + } + + public function RangeBakiLelong($kodcaw,Request $request){ + + $current = Carbon::now(); + $current = new Carbon(); + + $cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first(); + $cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first(); + + + $mula = explode('-', $request->mula); + $hingga = explode('-', $request->hingga); + + + $lelong = Lelong::on($cawangan['mysql']) + ->where([['baki','>',0],['trkhtuntut',null]]) + ->whereMonth('t_lelong','>=',$mula[0]) + ->whereMonth('t_lelong','<=',$hingga[0]) + ->whereYear('t_lelong','>=',$mula[1]) + ->whereYear('t_lelong','<=',$hingga[1]); + + $lelongdetails = $lelong->get()->toArray(); + $lelongcount = $lelong->count(); + $lelongpluck = $lelong->pluck('norujukan'); + + $draft = WTDDraft::on('mysql7') + ->whereIn('norujukan',$lelongpluck) + ->where('kodcaw',$kodcaw) + ->whereMonth('t_lelong','>=',$mula[0]) + ->whereMonth('t_lelong','<=',$hingga[0]) + ->whereYear('t_lelong','>=',$mula[1]) + ->whereYear('t_lelong','<=',$hingga[1]); + + $draftcount = $draft->count(); + $draftpluck = $draft->pluck('norujukan'); + + if($lelongcount == $draftcount) + { + $dummy = []; + return response()->json($dummy,200); + }else{ + $dif = array_diff($lelongpluck->toArray(),$draftpluck->toArray()); + + $lelongbaru = Lelong::on($cawangan['mysql']) + ->whereIn('norujukan',$dif) + ->get()->toArray(); + + return response()->json($lelongbaru,200); + } + } + + public function SenaraiTuntutWTD(Request $request){ + + $cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$request->kodcaw)->first(); + + $norujukan = $request->norujukan; + + $lelong = Lelong::on($cawangan['mysql']) + ->select('gadai.norujukan','lelong.t_lelong','gadai.pinjaman','lelong.baki','gadai.nokp') + ->whereIn('lelong.norujukan',$norujukan) + ->join('gadai','lelong.norujukan','=','gadai.norujukan') + ->get(); + + return response()->json($lelong,200); + } + + public function InsertDraftWTD(Request $request){ + + $current = Carbon::now(); + $current = new Carbon(); + + $cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$request->kodcaw)->first(); + + $norujukan = $request->norujukan; + + + try{ + $lelong = Lelong::on($cawangan['mysql']) + ->select('gadai.nokp','lelong.kodcaw','gadai.norujukan','lelong.t_jual','gadai.t_gadai','lelong.t_lelong','lelong.baki') + ->whereIn('lelong.norujukan',$norujukan) + ->join('gadai','lelong.norujukan','=','gadai.norujukan') + ->get(); + + $totalbaki = 0; + $latestbatch = SerahBaki::on($cawangan['mysql'])->max('batchno'); + + foreach($lelong as $lel) + { + $wtddraft = new WTDDraft; + $wtddraft->nokp = $lel->nokp; + $wtddraft->kodcaw = $lel->kodcaw; + $wtddraft->norujukan = $lel->norujukan; + $wtddraft->t_jual = $lel->t_jual; + $wtddraft->t_gadai = $lel->t_gadai; + $wtddraft->t_lelong = $lel->t_lelong; + $wtddraft->batchno_serah = $latestbatch + 1; + $wtddraft->save(); + + $totalbaki += $lel->baki; + } + + + $serahbaki = SerahBaki::on($cawangan['mysql'])->create([ + 'batchno' => $latestbatch + 1, + 'norujukan' => 'baru', + 'hargajual' => 0.00, + 'pinjaman' => 0.00, + 'upah' => 0.00, + 'cajlel' => 0.00, + 'gst_cl' => 0.00, + 'gst_hj' => 0.00, + 'baki' => $totalbaki, + 'tarikh' => $current->toDateString(), + 'nopelanggan' => '', + 'aktif' => 0 + ]); + + + return response()->json(['status' => 'success','batchno' => $latestbatch + 1],200); + + }catch (\Throwable $e){ + return response($e); + } + + + } + + public function ProsesWTD(Request $request){ + + $current = Carbon::now(); + $current = new Carbon(); + + $cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$request->kodcaw)->first(); + + $batchno = $request->batch; + + $selectnorujukan = $lelong = WTDDraft::on('mysql7') + ->where('batchno_serah',$batchno) + ->pluck('norujukan'); + + + $lelong = Lelong::on($cawangan['mysql']) + ->select('lelong.batchno','lelong.kodcaw','gadai.nokp','lelong.t_jual','gadai.pinjaman','gadai.nopelanggan','lelong.norujukan','gadai.bakipjm','gadai.bakiupah','lelong.cajlain','lelong.cajlelong','lelong.baki','lelong.hargajual','lelong.gst_cl') + ->whereIn('lelong.norujukan',$selectnorujukan) + ->join('gadai','lelong.norujukan','=','gadai.norujukan') + ->get()->toArray(); + try{ + foreach($lelong as $lel) + { + $tuntutbaki = TuntutBaki::on($cawangan['mysql'])->create([ + 'batchno' => $lel['batchno'], + 'jenis' => "T", + 'kodcaw' => $lel['kodcaw'], + 'norujukan' => $lel['norujukan'], + 'tarikh' => $current->toDateString(), + 'prkod' => "01", + 'teller' => "DM", + 'bakipjm' => ($lel['bakipjm']) ? $lel['bakipjm'] : 0, + 'bakiupah' => $lel['bakiupah'], + 'cajlain' => '0.00', + 'cajlelong' => $lel['cajlelong'], + 'kodgl' => '', + 'glcode' => '', + 'terima' => "*", + 'f_lulus' =>"L", + 'jumlah' => $lel['baki'], + 'nowakil' => 0, + 'hargajual' => $lel['hargajual'] + ]); + + $wtd = WTD::on($cawangan['mysql'])->create([ + 'norujukan' => $lel['norujukan'], + 'tarikh' => $current->toDateString(), + 'nokp' => $lel['nokp'], + 'nopelanggan' => $lel['nopelanggan'], + 'nama' => '', + 'batchno' => $lel['batchno'], + 't_jual' => $lel['t_jual'], + 'hargajual' => $lel['hargajual'], + 'pinjaman' => $lel['pinjaman'], + 'bakiupah' => $lel['bakiupah'], + 'cajlelong' => $lel['cajlelong'], + 'gst_cl' => $lel['gst_cl'], + 'baki' => $lel['baki'], + 'rugi' => 0.00, + 'ansrugi' => 0.00, + 'wtd' => $lel['baki'], + + ]); + + $lelong=Lelong::on($cawangan['mysql']) + ->where('norujukan',$lel['norujukan']) + ->update( + array('trkhtuntut'=> $current->toDateString(), + 't_update' => $current->toDateString())); + } + + $serahbakiupdate = SerahBaki::on($cawangan['mysql'])->where('batchno',$batchno)->update(array('aktif' => 1));; + + return response()->json('success',200); + + }catch (\Throwable $e){ + return response($e); + } + + + + } + + public function PenjanaanPC(Request $request){ + + $timeloni = Carbon::now(); + $status = new Status; + + try{ + if($request->status == 'jana') + { + $pengesahan = Permohonan::where('nopermohonan',$request->mohonid) + ->update(array( + 'tagjanapc' => 1 + )); + }else{ + + $ar_files = new ARFiles; + $ar_files->data = $request->dataimage; + $ar_files->type = $request->imagetype; + $ar_files->filename = $request->imagename; + $ar_files->tarikhmasa = $timeloni->toDateTimeString(); + $ar_files->save(); + + + $pengesahan = Permohonan::where('nopermohonan',$request->mohonid) + ->update(array( + 'tagjanapc' => 2, + 'files_permohonan_id' => $ar_files->id + )); + } + + + return response()->json($pengesahan); + }catch (\Throwable $e){ + return response($e); + } + + } } \ No newline at end of file diff --git a/app/Http/Controllers/CustomerController.php b/app/Http/Controllers/CustomerController.php index 3a38793..66b17e9 100644 --- a/app/Http/Controllers/CustomerController.php +++ b/app/Http/Controllers/CustomerController.php @@ -146,7 +146,7 @@ class CustomerController extends Controller $gadai = Gadai::on($cawangan['mysql']) ->where([['sttebus','=',$gadai_status],['nokp','=',$ic]]) ->orderBy('t_update', 'desc') - ->take(50)->get(); + ->take(100)->get(); }elseif($status == 'lelong'){ $gadai = Gadai::on($cawangan['mysql']) ->where([['sttebus','=',$gadai_status],['nokp','=',$ic]]) diff --git a/app/Http/Controllers/LelongController.php b/app/Http/Controllers/LelongController.php index 006cbc4..54a50b4 100644 --- a/app/Http/Controllers/LelongController.php +++ b/app/Http/Controllers/LelongController.php @@ -802,4 +802,52 @@ class LelongController extends Controller } } + public function getSenaraiTuntutBaki($kodcaw,Request $request){ + + $current = Carbon::now(); + $current = new Carbon(); + $arraylelong = []; + + $cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first(); + + $bulanlepas = $current->subMonth()->toDateString(); + + $lelong = Lelong::on($cawangan['mysql']) + ->select('lelong.t_lelong','lelong.norujukan','gadai.nokp','gadai.bakipjm','lelong.bakiupah','lelong.t_jual','lelong.cajlelong','lelong.baki','lelong.cajlain','lelong.gst_hj','lelong.gst_cl','lelong.hargajual') + ->leftJoin('gadai', 'gadai.norujukan', '=', 'lelong.norujukan') + ->where('baki','>',0) + ->where('lelong.t_lelong','>=',$bulanlepas) + ->whereNotNull('t_jual') + ->whereNull('trkhtuntut') + ->orderBy('gadai.t_gadai','asc') + ->orderBy('gadai.sirig','asc') + ->where('gadai.taglel','=', 1); + $lelonglist = $lelong->get(); + + foreach($lelonglist as $index=>$lel) + { + $customer = Customer::on('mysql7') + ->select('nama','telefon','telefon2','alamat1','alamat2','poskod','koddaerah') + ->where('kpbaru','=',$lel['nokp']) + ->orWhere('kplama','=',$lel['nokp']) + ->first(); + + $poskod = Poskod::on('mysql7') + ->where('poskod','=',$customer['poskod']) + ->first(); + + $daerah = Daerah::on('mysql7') + ->where('koddaerah','=',$poskod['koddaerah']) + ->first(); + + $negeri = Negeri::on('mysql7') + ->where('kodnegeri','=',$poskod['kodnegeri']) + ->first(); + + array_push($arraylelong,['poskod'=>$customer['poskod'],'negeri' => $negeri['negeri'],'daerah' => $daerah['namadaerah'],'alamat' => $customer['alamat1'],'alamat2' => $customer['alamat2'],'tarikhlelong' => $lel['t_lelong'],'nama' => $customer['nama'], 'telefon1' => $customer['telefon'], 'telefon2' => $customer['telefon2'], 'norujukan' => $lel['norujukan'], 't_jual' => $lel['t_jual'], 'IC' => $lel['nokp'], 'bakipjm' => $lel['bakipjm'], 'bakiupah' => $lel['bakiupah'],'cajlelong' => $lel['cajlelong'],'baki' => $lel['baki'],'cajlain' => $lel['cajlain'],'gst_hj' => $lel['gst_hj'],'gst_cl' => $lel['gst_cl'],'hargajual' => $lel['hargajual']]); + } + + return response()->json($arraylelong); + } + } diff --git a/app/Permohonan.php b/app/Permohonan.php index 3503c13..8f79d90 100644 --- a/app/Permohonan.php +++ b/app/Permohonan.php @@ -29,6 +29,7 @@ class Permohonan extends Model 'nama_penerima', 'outstandingsemasa', 'nopermohonan', + 'tagjanapc', 'tagterima' ]; diff --git a/routes/web.php b/routes/web.php index 4566789..7d0da34 100644 --- a/routes/web.php +++ b/routes/web.php @@ -267,6 +267,7 @@ $router->group(['prefix'=>'api'], function () use ($router){ $router->get('senaraibatch/aktif/{kodcaw}/{fasa}',['uses'=>'LelongController@getSenaraiLelongAktif']); $router->get('senaraibatch/laporan/{kodcaw}/{fasa}',['uses'=>'LelongController@getSenaraiBatchNoAktif']); $router->get('details/notislelong/{kodcaw}',['uses'=>'LelongController@DetailsNotisLelong']); + $router->get('senaraituntutbaki/laporan/{kodcaw}',['uses'=>'LelongController@getSenaraiTuntutBaki']); //API BARU @@ -704,6 +705,19 @@ $router->group(['prefix'=>'admin'], function () use ($router){ $router->put('permohonan/tagterima',['uses'=>'AdminPageController@TagTerima']); $router->post('permohonan/tagcit',['uses'=>'AdminPageController@TagCit']); $router->get('permohonan/viewfiles',['uses'=>'AdminPageController@downloadFile']); + $router->post('permohonan/updatejanapc',['uses'=>'AdminPageController@PenjanaanPC']); + + + $router->get('rangebakilelong/{kodcaw}',['uses'=>'AdminPageController@RangeBakiLelong']); + $router->get('wtd/senarai',['uses'=>'AdminPageController@SenaraiTuntutWTD']); + $router->post('wtd/insert',['uses'=>'AdminPageController@InsertDraftWTD']); + $router->post('wtd/process',['uses'=>'AdminPageController@ProsesWTD']); + $router->get('wtd/rekod',['uses'=>'AdminPageController@rekodWTD']); + $router->get('wtd/rekod/{batchno}',['uses'=>'AdminPageController@rekodWTDByBatchNo']); + + + + });