Add function to view 1 specific log, fix query for transaction online trail controller

This commit is contained in:
Afiq Hamzah
2024-08-06 16:38:12 +08:00
parent be8a6e72fb
commit 2e4b54c37e
2 changed files with 24 additions and 14 deletions
@@ -3,6 +3,7 @@
namespace App\Http\Controllers; namespace App\Http\Controllers;
use App\Services\Loggers\OnlineTransactionLoggerService; use App\Services\Loggers\OnlineTransactionLoggerService;
use App\Transaction;
use App\TransactionOnlineLog; use App\TransactionOnlineLog;
use App\TransactionOnlineStatus; use App\TransactionOnlineStatus;
use Illuminate\Http\Request; use Illuminate\Http\Request;
@@ -30,4 +31,17 @@ class TransactionOnlineLogController extends Controller
return response()->json($transactionOnlineLogs, 200); return response()->json($transactionOnlineLogs, 200);
} }
public function show($bill_id)
{
$transactionOnlineLogs = TransactionOnlineLog::query()
->where('bill_id', $bill_id)
->get()
->map(function ($x) {
$x->status_label = TransactionOnlineStatus::statusLabel($x->status);
return $x;
});
return response()->json($transactionOnlineLogs, 200);
}
} }
@@ -67,9 +67,6 @@ class TransactionOnlineTrailController extends Controller
->when($request->filled('norujukan'), function ($query) use ($request) { ->when($request->filled('norujukan'), function ($query) use ($request) {
return $query->where('norujukan', $request->norujukan); return $query->where('norujukan', $request->norujukan);
}) })
->when($request->filled('isGroupedByNorujukan') && $request->isGroupedByNorujukan === '1', function ($query) {
return $query->groupBy('norujukan')->sortKeysDesc();
})
->get(); ->get();
if ($transaction->isEmpty()) { if ($transaction->isEmpty()) {
@@ -78,13 +75,14 @@ class TransactionOnlineTrailController extends Controller
->when($request->filled('norujukan'), function ($query) use ($request) { ->when($request->filled('norujukan'), function ($query) use ($request) {
return $query->where('norujukan', 'LIKE', '%' . $request->norujukan . '%'); return $query->where('norujukan', 'LIKE', '%' . $request->norujukan . '%');
}) })
->when($request->filled('isGroupedByNorujukan') && $request->isGroupedByNorujukan === '1', function ($query) {
return $query->groupBy('norujukan')->sortKeysDesc();
})
->get(); ->get();
} }
return $transaction->sortByDesc('created_at')->toArray(); return $transaction
->when($request->filled('isGroupedByNorujukan') && $request->isGroupedByNorujukan === '1', function ($query) {
return $query->groupBy('norujukan')->sortKeysDesc();
})
->sortByDesc('created_at')->toArray();
} }
private function getTransaksiKeuntunganQuery($date, $request) private function getTransaksiKeuntunganQuery($date, $request)
@@ -93,9 +91,6 @@ class TransactionOnlineTrailController extends Controller
->when($request->filled('norujukan'), function ($query) use ($request) { ->when($request->filled('norujukan'), function ($query) use ($request) {
return $query->where('norujukan', $request->norujukan); return $query->where('norujukan', $request->norujukan);
}) })
->when($request->filled('isGroupedByNorujukan') && $request->isGroupedByNorujukan === '1', function ($query) {
return $query->groupBy('norujukan')->sortKeysDesc();
})
->get(); ->get();
if ($transaksiKeuntungan->isEmpty()) { if ($transaksiKeuntungan->isEmpty()) {
@@ -103,13 +98,14 @@ class TransactionOnlineTrailController extends Controller
->when($request->filled('norujukan'), function ($query) use ($request) { ->when($request->filled('norujukan'), function ($query) use ($request) {
return $query->where('norujukan', 'LIKE', '%' . $request->norujukan . '%'); return $query->where('norujukan', 'LIKE', '%' . $request->norujukan . '%');
}) })
->when($request->filled('isGroupedByNorujukan') && $request->isGroupedByNorujukan === '1', function ($query) {
return $query->groupBy('norujukan')->sortKeysDesc();
})
->get(); ->get();
} }
return $transaksiKeuntungan->toArray(); return $transaksiKeuntungan
->when($request->filled('isGroupedByNorujukan') && $request->isGroupedByNorujukan === '1', function ($query) {
return $query->groupBy('norujukan')->sortKeysDesc();
})
->toArray();
} }
public function getGlDetailQuery($date, $request) public function getGlDetailQuery($date, $request)