diff --git a/app/Http/Controllers/PayableUjrahBranchController.php b/app/Http/Controllers/PayableUjrahBranchController.php index 2cf812e..2a6dbbb 100644 --- a/app/Http/Controllers/PayableUjrahBranchController.php +++ b/app/Http/Controllers/PayableUjrahBranchController.php @@ -14,8 +14,7 @@ class PayableUjrahBranchController extends Controller { $this->syncCawangan(); - $payableUjrahBranch = PayableUjrahBranch::with('cawangan_information')->get()->toJson(); - return json_encode($payableUjrahBranch); + return PayableUjrahBranch::with('cawangan_information')->get()->toJson(); } public function syncCawangan() diff --git a/app/Http/Controllers/TransactionOnlineController.php b/app/Http/Controllers/TransactionOnlineController.php index ae0e982..10e9c9e 100644 --- a/app/Http/Controllers/TransactionOnlineController.php +++ b/app/Http/Controllers/TransactionOnlineController.php @@ -2,25 +2,24 @@ namespace App\Http\Controllers; -use App\TransactionOnline; use App\Advansur; -use App\Transaction; -use App\TransaksiKeuntungan; -use App\Gadai; -use App\Cawangan; -use App\GlDetail; use App\Audit; -use Illuminate\Http\Request; -use Carbon\Carbon; -use App\Services\OnePercentServices; -use Illuminate\Support\Facades\Log; -use Illuminate\Support\Facades\DB; -use Illuminate\Http\Request as HttpRequest; -use App\Support\v2\GadaiV2 as Version2Gadai; -use App\Support\v2\Calculation; - +use App\Cawangan; +use App\Gadai; +use App\GlDetail; use App\Http\Controllers\TebusController as TebusController; -use Illuminate\Support\Facades\Http; +use App\Services\Loggers\OnlineTransactionLoggerService; +use App\Services\OnePercentServices; +use App\Support\v2\Calculation; +use App\Support\v2\GadaiV2 as Version2Gadai; +use App\Transaction; +use App\TransactionOnline; +use App\TransactionOnlineStatus; +use App\TransaksiKeuntungan; +use Carbon\Carbon; +use Illuminate\Http\Request; +use Illuminate\Support\Facades\DB; +use Illuminate\Support\Facades\Log; class TransactionOnlineController extends Controller { @@ -30,6 +29,18 @@ class TransactionOnlineController extends Controller return response()->json($transactionOnline); } + + public function getListTransactionOnlineQuery(Request $request) + { + + $date = $request->date ? $request->date : Carbon::now()->toDateString(); + $transactionOnline = TransactionOnline::on('mysql7') + ->whereDate('tarikh', $date) + ->get(); + + return response()->json($transactionOnline); + } + public function getLatestNosiri() { $current = Carbon::now(); @@ -61,7 +72,7 @@ class TransactionOnlineController extends Controller 'masa' => $current->toTimeString(), 'customer_name' => $request->customer_name, 'tempohbayar' => $sag['tempoh'], - 'jenisbayaran' => $request->jenisbayaran ? $request->jenisbayaran : 'A' + 'jenisbayaran' => $request->jenisbayaran ? $request->jenisbayaran : 'A', ]); return response()->json($transaction, 201); @@ -71,7 +82,7 @@ class TransactionOnlineController extends Controller { $transaction = TransactionOnline::on('mysql7')->where('billplz_id', '=', $request->billplz_id)->update(array( 'status' => $request->status, - 'paid_at' => $request->paid_at + 'paid_at' => $request->paid_at, )); return response()->json($transaction, 200); @@ -89,27 +100,42 @@ class TransactionOnlineController extends Controller $gadai_data = Gadai::on($cawangan['mysql'])->where([['norujukan', $transaction['norujukan']], ['nokp', $transaction['nokp']]])->first(); if ($transaction->jenisbayaran == 'A') { if ($gadai_data['hargajualan'] > 0) { - $response = $this->updateGadaiMarhunOnline($transaction['kodcaw'], $transaction['norujukan'], $transaction['total_payment'], $transaction['paid_at'], $transaction['tempohbayar']); + $response = $this->updateGadaiMarhunOnline($transaction['kodcaw'], $transaction['norujukan'], $transaction['total_payment'], $transaction['paid_at'], $transaction['tempohbayar'], $transaction['billplz_id']); } else { $this->createAdvansur($transaction['kodcaw'], $transaction['norujukan'], $transaction['total_payment'], $transaction['paid_at']); } } - - GlDetail::on($cawangan['mysql'])->create([ + $glDetailData = [ 'kodcaw' => $transaction['kodcaw'], 'tarikh' => Carbon::parse($transaction['paid_at'])->format('Y-m-d'), 'dtacct' => '1000/010', 'ktacct' => '1000/020', 'descpt' => 'SERAHAN BAYAR ONLINE - ' . $transaction['norujukan'], 'serahan' => $transaction['total_payment'], - 'teller' => 'ONLINE' - ]); + 'teller' => 'ONLINE', + ]; - TransactionOnline::on('mysql7')->where([['norujukan', $transaction['norujukan']], ['billplz_id', $transaction['billplz_id']]])->update([ + try { + $glDetail = GlDetail::on($cawangan['mysql'])->create($glDetailData); + OnlineTransactionLoggerService::logsAfterDBTransaction($transaction->billplz_id, TransactionOnlineStatus::CRONJOB_REGISTER_GLDETAIL, $glDetail, $glDetailData); + } catch (\Exception $e) { + OnlineTransactionLoggerService::logsAfterDBTransaction($transaction->billplz_id, TransactionOnlineStatus::CRONJOB_REGISTER_GLDETAIL, $glDetail, $e->getMessage()); + throw $e; + } + + $transactionOnlineData = [ 'update_status' => 1, - 'update_serahan' => 1 - ]); + 'update_serahan' => 1, + ]; + + try { + $transactionOnline = TransactionOnline::on('mysql7')->where([['norujukan', $transaction['norujukan']], ['billplz_id', $transaction['billplz_id']]])->update($transactionOnlineData); + OnlineTransactionLoggerService::logsAfterDBTransaction($transaction['billplz_id'], TransactionOnlineStatus::CRONJOB_UPDATE_TRANSAKSI_ONLINE, $transactionOnlineData, $transactionOnline); + } catch (\Exception $e) { + OnlineTransactionLoggerService::logsAfterDBTransaction($transaction['billplz_id'], TransactionOnlineStatus::CRONJOB_UPDATE_TRANSAKSI_ONLINE, $transactionOnlineData, $e->getMessage()); + throw $e; + } } return response()->json('success'); @@ -232,8 +258,6 @@ class TransactionOnlineController extends Controller // } // $bilang_bln = $tempoh - $gadai['tempohbayar']; - - // $transaction_upah = TransaksiKeuntungan::on('mysql7')->create([ // 'norujukan' => $norujukan, // 'bayaran_keuntungan' => $upahsemasa, @@ -251,7 +275,6 @@ class TransactionOnlineController extends Controller // ]); // - // DB::connection($cawangan['mysql'])->transaction(function () use($cawangan,$baki_pinjaman,$current,$norujukan,$gadai,$baki_hargajualan,$lelong_tawarruq,$margin_semasa){ // $margin_updated = ($baki_pinjaman / $gadai['nilaimarhun']) * 100; @@ -295,7 +318,7 @@ class TransactionOnlineController extends Controller // return response()->json("success",200); // } - public function updateGadaiMarhunOnline($kodcaw, $norujukan, $bayaran, $paid_at, $tempohbayar) + public function updateGadaiMarhunOnline($kodcaw, $norujukan, $bayaran, $paid_at, $tempohbayar, $bill_id) { $current = Carbon::now(); $current = new Carbon(); @@ -329,9 +352,9 @@ class TransactionOnlineController extends Controller try { - DB::connection('mysql7')->transaction(function () use ($norujukan, $gadai, $kodcaw, $current, $baki_hargajualan, $cawangan, $old_data, $lelong_tawarruq, $margin_semasa, $bayaran, $tempohbayar) { + DB::connection('mysql7')->transaction(function () use ($norujukan, $gadai, $kodcaw, $current, $baki_hargajualan, $cawangan, $old_data, $lelong_tawarruq, $margin_semasa, $bayaran, $tempohbayar, $bill_id) { - $transaction = Transaction::on('mysql7')->create([ + $data = [ 'trans_type' => 'A', 'norujukan' => $norujukan, 'nokp' => $gadai['nokp'], @@ -340,7 +363,15 @@ class TransactionOnlineController extends Controller 'duit_masuk' => $bayaran, 'created_at' => $current, 'bakiharga' => $baki_hargajualan, - ]); + ]; + + try { + $transaction = Transaction::on('mysql7')->create($data); + OnlineTransactionLoggerService::logsAfterDBTransaction($bill_id, TransactionOnlineStatus::CRONJOB_UPDATE_TRANSACTION, $data, $transaction); + } catch (\Exception $e) { + OnlineTransactionLoggerService::logsAfterDBTransaction($bill_id, TransactionOnlineStatus::CRONJOB_UPDATE_TRANSACTION, $data, $e->getMessage()); + throw $e; + } if ($gadai['tempoh'] >= 12.0) { $tempoh = 12; @@ -354,7 +385,8 @@ class TransactionOnlineController extends Controller $baki_bayaran = $bayaran - $upahsemasa; $upahsemasa = $this->kiraupahTawarruq($kodcaw, $norujukan, $tempohbayar); $upahrebet = $this->kiraUpahRebet($kodcaw, $norujukan, $tempohbayar); - $transaction_upah = TransaksiKeuntungan::on('mysql7')->create([ + + $dataTransactionUpah = [ 'norujukan' => $norujukan, 'bayaran_keuntungan' => $upahsemasa, 'bayaran_pembiayaan' => $baki_bayaran, @@ -368,7 +400,16 @@ class TransactionOnlineController extends Controller 'tempoh' => 0, 'beza_tempoh' => 0, 'margin_semasa' => 0, - ]); + ]; + + try { + $transaction_upah = TransaksiKeuntungan::on('mysql7')->create($dataTransactionUpah); + OnlineTransactionLoggerService::logsAfterDBTransaction($bill_id, TransactionOnlineStatus::CRONJOB_UPDATE_TRANSAKSI_KEUNTUNGAN, $dataTransactionUpah, $transaction_upah); + } catch (\Exception $e) { + OnlineTransactionLoggerService::logsAfterDBTransaction($bill_id, TransactionOnlineStatus::CRONJOB_UPDATE_TRANSAKSI_KEUNTUNGAN, $dataTransactionUpah, $e->getMessage()); + throw $e; + } + } else { $onepercent = new OnePercentServices(); @@ -390,7 +431,7 @@ class TransactionOnlineController extends Controller $keun = $onepercent->getRoundedMethod($onepercentasal * $bilang_bln); $keuntungan_rebate = $onepercent->getRoundedMethod($keuntungan['onepercent'] * $bilang_bln); - $transaction_upah = TransaksiKeuntungan::on('mysql7')->create([ + $dataTransactionUpah = [ 'norujukan' => $norujukan, 'bayaran_keuntungan' => $upahsemasa, 'bayaran_pembiayaan' => $baki_bayaran, @@ -404,15 +445,23 @@ class TransactionOnlineController extends Controller 'tempoh' => $gadai['tempoh'], 'beza_tempoh' => $bilang_bln, 'margin_semasa' => $margin_semasa, - ]); + ]; + + try { + $transaction_upah = TransaksiKeuntungan::on('mysql7')->create($dataTransactionUpah); + OnlineTransactionLoggerService::logsAfterDBTransaction($bill_id, TransactionOnlineStatus::CRONJOB_UPDATE_TRANSAKSI_KEUNTUNGAN, $dataTransactionUpah, $transaction_upah); + } catch (\Exception $e) { + OnlineTransactionLoggerService::logsAfterDBTransaction($bill_id, TransactionOnlineStatus::CRONJOB_UPDATE_TRANSAKSI_KEUNTUNGAN, $dataTransactionUpah, $e->getMessage()); + throw $e; + } } $baki_pinjaman = $gadai['bakipjm'] - $baki_bayaran; - DB::connection($cawangan['mysql'])->transaction(function () use ($cawangan, $baki_pinjaman, $current, $norujukan, $gadai, $baki_hargajualan, $lelong_tawarruq, $margin_semasa) { + DB::connection($cawangan['mysql'])->transaction(function () use ($cawangan, $baki_pinjaman, $current, $norujukan, $gadai, $baki_hargajualan, $lelong_tawarruq, $margin_semasa, $bill_id) { $margin_updated = ($baki_pinjaman / $gadai['nilaimarhun']) * 100; - $update_gadai = Gadai::on($cawangan['mysql'])->where('norujukan', '=', $norujukan)->update(array( + $updateGadaiData = [ 'bakipjm' => $baki_pinjaman, 'jbg' => 0, 't_update' => $current->toDateString(), @@ -420,27 +469,43 @@ class TransactionOnlineController extends Controller 'tempohbayar' => $gadai['tempoh'], 'lelong_tawarruq' => $lelong_tawarruq, 'margin_semasa' => $margin_updated, - )); + ]; + + try { + $update_gadai = Gadai::on($cawangan['mysql'])->where('norujukan', '=', $norujukan)->update($updateGadaiData); + OnlineTransactionLoggerService::logsAfterDBTransaction($bill_id, TransactionOnlineStatus::CRONJOB_UPDATE_GADAI, $updateGadaiData, $update_gadai); + } catch (\Exception $e) { + OnlineTransactionLoggerService::logsAfterDBTransaction($bill_id, TransactionOnlineStatus::CRONJOB_UPDATE_GADAI, $updateGadaiData, $e->getMessage()); + throw $e; + } + }); $new_data = Gadai::on($cawangan['mysql'])->where('norujukan', '=', $norujukan)->first(); - $audit = new Audit(); - $audit->users = 'Online'; - $audit->actions = 'Bayaran Ansuran'; - $audit->norujukan = $norujukan; - $audit->new_data = $new_data; - $audit->old_data = $old_data; - $audit->kodcaw = $kodcaw; - $audit->created_at = $current; - $audit->updated_at = $current; - $audit->save(); + $auditData = [ + 'users' => 'Online', + 'actions' => 'Bayaran Ansuran', + 'norujukan' => $norujukan, + 'new_data' => $new_data, + 'old_data' => $old_data, + 'kodcaw' => $kodcaw, + 'created_at' => $current, + 'updated_at' => $current, + ]; + + try { + $audit = Audit::create($auditData); + OnlineTransactionLoggerService::logsAfterDBTransaction($bill_id, TransactionOnlineStatus::CRONJOB_REGISTER_AUDIT, $auditData, $audit); + } catch (\Exception $e) { + OnlineTransactionLoggerService::logsAfterDBTransaction($bill_id, TransactionOnlineStatus::CRONJOB_REGISTER_AUDIT, $auditData, $e->getMessage()); + throw $e; + } if (!$transaction || !$transaction_upah) { throw new \Exception('One of the database operations failed.'); } - DB::commit(); }); } catch (\Exception $e) { @@ -477,7 +542,7 @@ class TransactionOnlineController extends Controller 'nowakil' => 0, 'hubungan' => 0, 'status' => 0, - 'historygadaian' => $norujukan + 'historygadaian' => $norujukan, ]); return response()->json($create_advansur, 201); @@ -527,7 +592,7 @@ class TransactionOnlineController extends Controller { $transaction = TransactionOnline::on('mysql7')->where('billplz_id', '=', $request->billplz_id)->update(array( 'status' => $request->status, - 'paid_at' => $request->paid_at + 'paid_at' => $request->paid_at, )); return response()->json($transaction, 200); @@ -540,7 +605,6 @@ class TransactionOnlineController extends Controller $gadai_all = []; $akanlelongarray = []; - foreach ($cawangan_all as $index => $cawangan) { $gadai = Gadai::on($cawangan['mysql']) ->where([['sttebus', '=', ''], ['taglel', 0], ['nokp', '=', $request->ic]]) @@ -557,7 +621,7 @@ class TransactionOnlineController extends Controller } $array_utg = new \Illuminate\Http\Request([ - 'jeniskeuntungan' => $jenis + 'jeniskeuntungan' => $jenis, ]); $result = (new TebusController)->upahTawarruq($gad['kodcaw'], $gad['norujukan'], $array_utg); @@ -592,7 +656,7 @@ class TransactionOnlineController extends Controller } $array_utg = new \Illuminate\Http\Request([ - 'jeniskeuntungan' => $jenis + 'jeniskeuntungan' => $jenis, ]); $result = (new TebusController)->kiraupahTawarruq($lelong['kodcaw'], $lelong['norujukan'], $array_utg); @@ -605,7 +669,7 @@ class TransactionOnlineController extends Controller return response()->json( array( 'gadai' => $gadai_all, - 'lelong' => $akanlelongarray + 'lelong' => $akanlelongarray, ), 200 ); @@ -614,7 +678,7 @@ class TransactionOnlineController extends Controller public function updateTagPortal(Request $request) { $transaction = TransactionOnline::on('mysql7')->where('billplz_id', '=', $request->billplz_id)->update(array( - 'tagportal' => 1 + 'tagportal' => 1, )); return response()->json($transaction, 200); @@ -625,7 +689,7 @@ class TransactionOnlineController extends Controller try { $gadai = (new GadaiController())->showOneGadaibyRujukanAndCawangan($kodcaw, $norujukan) - ->getData()[0]; + ->getData()[0]; $jenis_keuntungan = $gadai->tagbaru === 1 ? 'onepercent' : 'asal'; @@ -636,8 +700,8 @@ class TransactionOnlineController extends Controller $upah_rebet_tawarruq = (new TebusController())->upahRebetTawarruq($kodcaw, $norujukan, $request_upah_rebet_tawarruq); if ($jenis_keuntungan === 'onepercent') { - $ujrah_sebenar = (float)$upah_tawarruq['ujrah']; - $ujrah_rebet = $ujrah_sebenar - (float)$upah_rebet_tawarruq['ujrah']; + $ujrah_sebenar = (float) $upah_tawarruq['ujrah']; + $ujrah_rebet = $ujrah_sebenar - (float) $upah_rebet_tawarruq['ujrah']; return [ 'ujrah_sebenar' => $ujrah_sebenar, @@ -646,12 +710,87 @@ class TransactionOnlineController extends Controller } return [ - 'ujrah_sebenar' => (float)$upah_tawarruq, - 'ujrah_rebet' => (float)$upah_rebet_tawarruq, + 'ujrah_sebenar' => (float) $upah_tawarruq, + 'ujrah_rebet' => (float) $upah_rebet_tawarruq, ]; } catch (\Throwable $th) { Log::error($th); return $th; } } + + public function getListTransactionOnlineTrail(Request $request) + { + + $date = $request->date ? $request->date : Carbon::now()->toDateString(); + $isGroupByNorujukan = $request->filled('isGroupedByNorujukan') && $request->isGroupedByNorujukan === '1'; + + $transactionsOnline = TransactionOnline::whereDate('tarikh', $date) + ->when($request->filled('norujukan'), function ($query) use ($request) { + return $query->where('norujukan', $request->norujukan); + }) + ->orderBy('tarikh', 'desc') + ->orderBy('masa', 'desc') + ->get() + ->filter(fn($x) => $x['status'] === 'PAID') + ->when($isGroupByNorujukan, function ($query) { + return $query->groupBy('norujukan')->sortKeysDesc(); + }) + ->toArray(); + + $transaction = Transaction::whereDate('created_at', $date) + ->where('teller', 'Online') + ->when($request->norujukan, function ($query) use ($request) { + return $query->where('norujukan', $request->norujukan); + }) + ->orderBy('created_at', 'desc') + ->get() + ->when($isGroupByNorujukan, function ($query) { + return $query->groupBy('norujukan')->sortKeysDesc(); + }) + ->toArray(); + + $transaksiKeuntungan = TransaksiKeuntungan::whereDate('tarikh_bayaran', $date) + ->when($request->norujukan, function ($query) use ($request) { + return $query->where('norujukan', $request->norujukan); + }) + ->orderBy('tarikh_bayaran', 'desc') + ->get() + ->when($isGroupByNorujukan, function ($query) { + return $query->groupBy('norujukan')->sortKeysDesc(); + }) + ->toArray(); + + $connectionCawangan = Cawangan::on('mysql7')->where('kodcaw', 'KB2')->first()->mysql; + + $cawanganTransactionOnline = TransactionOnline::whereDate('tarikh', $date) + ->get() + ->pluck('kodcaw') + ->unique() + ->all(); + + $connectionCawangan = Cawangan::on('mysql7')->whereIn('kodcaw', $cawanganTransactionOnline)->get()->pluck('mysql'); + + $glDetail = $connectionCawangan->map(fn($x) => GlDetail::on($x)->where('teller', 'ONLINE')->whereDate('tarikh', $date)->get()) + ->flatten() + ->when($isGroupByNorujukan, function ($glDetail) { + return $glDetail->groupBy('descpt') + ->keyBy(function ($group, $key) { + $array = explode(' ', $key); + return end($array); + }); + }) + ->when($request->filled('norujukan'), function ($glDetail) use ($request) { + return $glDetail->filter(fn($x) => strpos($x->descpt, $request->norujukan) !== false); + }) + ->sortKeysDesc() + ->toArray(); + + return response()->json([ + 'transactionsOnline' => $transactionsOnline, + 'transaction' => $transaction, + 'transaksiKeuntungan' => $transaksiKeuntungan, + 'glDetail' => $glDetail, + ]); + } } diff --git a/app/Http/Controllers/TransactionOnlineLogController.php b/app/Http/Controllers/TransactionOnlineLogController.php new file mode 100644 index 0000000..8d62144 --- /dev/null +++ b/app/Http/Controllers/TransactionOnlineLogController.php @@ -0,0 +1,33 @@ +json($log, 201); + } + + public function index(Request $request) + { + $transactionOnlineLogs = TransactionOnlineLog::query() + ->when($request->filled('date'), function ($query) use ($request) { + return $query->whereDate('created_at', $request->date); + }) + ->get() + ->map(function ($x) { + $x->status_label = TransactionOnlineStatus::statusLabel($x->status); + return $x; + }); + + return response()->json($transactionOnlineLogs, 200); + } +} diff --git a/app/Services/Loggers/OnlineTransactionLoggerService.php b/app/Services/Loggers/OnlineTransactionLoggerService.php new file mode 100644 index 0000000..71be5fa --- /dev/null +++ b/app/Services/Loggers/OnlineTransactionLoggerService.php @@ -0,0 +1,40 @@ + $request->bill_id, + 'status' => $request->status, + 'payload' => $request->payload, + 'response' => $request->response, + ]); + + return $log; + } + + public static function logsAfterDBTransaction($bill_id, $status, $request, $response) + { + $formatToString = function ($data) { + if (is_array($data) || is_object($data)) { + return json_encode($data); + } + + return $data; + }; + + $log = TransactionOnlineLog::create([ + 'bill_id' => $formatToString($bill_id), + 'status' => $formatToString($status), + 'payload' => $formatToString($request), + 'response' => $formatToString($response), + ]); + + return $log; + } +} diff --git a/app/TransactionOnlineLog.php b/app/TransactionOnlineLog.php new file mode 100644 index 0000000..2bb983e --- /dev/null +++ b/app/TransactionOnlineLog.php @@ -0,0 +1,20 @@ +format('d/m/Y H:i:s') : null; + } +} diff --git a/app/TransactionOnlineStatus.php b/app/TransactionOnlineStatus.php new file mode 100644 index 0000000..a233d88 --- /dev/null +++ b/app/TransactionOnlineStatus.php @@ -0,0 +1,49 @@ + 'Bill Created', + self::INITIALIZED_TRANSACTION => 'Initialized Transaction', + self::UPDATED_TAG_PORTAL => 'Updated Tag Portal', + self::UPDATE_TRANSACTION_CALLBACK => 'Update Transaction Callback', + self::UPDATE_TRANSACTION_REDIRECT => 'Update Transaction Redirect', + self::CRONJOB_UPDATE_TRANSACTION => 'Cronjob Update Transaction', + self::CRONJOB_UPDATE_TRANSAKSI_KEUNTUNGAN => 'Cronjob Update Transaksi Keuntungan', + self::CRONJOB_UPDATE_GADAI => 'Cronjob Update Gadai', + self::CRONJOB_REGISTER_AUDIT => 'Cronjob Register Audit', + self::CRONJOB_REGISTER_GLDETAIL => 'Cronjob Register GlDetail', + self::CRONJOB_UPDATE_TRANSAKSI_ONLINE => 'Cronjob Update Transaksi Online', + self::UPDATE_UNSUCCESSFUL_TRANSACTION => 'Update Unsuccessful Transaction', + ]; + } + + public static function statusLabel($status_code) + { + $list = self::listStatus(); + + return isset($list[$status_code]) + ? $list[$status_code] + : $status_code; + } +} diff --git a/database/migrations/2024_07_28_163407_create_transaction_online_logs.php b/database/migrations/2024_07_28_163407_create_transaction_online_logs.php new file mode 100644 index 0000000..e308b9c --- /dev/null +++ b/database/migrations/2024_07_28_163407_create_transaction_online_logs.php @@ -0,0 +1,35 @@ +id(); + $table->string('bill_id'); + $table->unsignedInteger('status'); + $table->string('payload', 10000); + $table->string('response', 10000); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('log_transaction_online'); + } +} diff --git a/routes/web.php b/routes/web.php index 43159d3..ba84d71 100644 --- a/routes/web.php +++ b/routes/web.php @@ -10,7 +10,6 @@ | and give it the Closure to call when that URI is requested. | */ - // $router->get('/', function () use ($router) { // return $router->app->version(); // }); @@ -18,6 +17,7 @@ // return \Illuminate\Support\Str::random(32); // }); + $router->group(['namespace' => '\Rap2hpoutre\LaravelLogViewer'], function() use ($router) { $router->get('logs', 'LogViewerController@index'); }); @@ -260,9 +260,10 @@ $router->group(['prefix'=>'api'], function () use ($router){ $router->get('transaction/online/unsuccessful',['uses'=>'TransactionOnlineController@getListUnsuccessful']); $router->put('transaction/online/unsuccesfull/update',['uses'=>'TransactionOnlineController@updateUnsuccessfulTransaction']); $router->put('transaction/online/tagportal',['uses'=>'TransactionOnlineController@updateTagPortal']); - - - + $router->get('transaction/online/query',['uses'=>'TransactionOnlineController@getListTransactionOnlineQuery']); + $router->get('transaction/online/trail',['uses'=>'TransactionOnlineController@getListTransactionOnlineTrail']); + $router->get('transaction/online/log',['uses'=>'TransactionOnlineLogController@index']); + $router->post('transaction/online/log',['uses'=>'TransactionOnlineLogController@create']); //ANSURAN UPAH API $router->get('ansuran/laporan/{kodcaw}',['uses'=>'GadaiController@getLaporanAnsuran']);