user(); $accounts = Account::query() ->where('user_id', $user->id) ->with('bank:id,name,logo') ->orderByRaw("FIELD(type, 'checking', 'savings', 'investment', 'retirement', 'loan', 'credit_card', 'others')") ->orderBy('name') ->get(['id', 'name', 'name_iv', 'bank_id', 'type', 'currency_code']); return Inertia::render('Accounts/Index', [ 'accounts' => $accounts, ]); } public function show(Request $request, Account $account): Response { $this->authorize('view', $account); $user = $request->user(); $categories = Category::query() ->where('user_id', $user->id) ->orderBy('name') ->get(['id', 'name', 'icon', 'color']); $accounts = Account::query() ->where('user_id', $user->id) ->with('bank:id,name,logo') ->orderBy('name') ->get(['id', 'name', 'name_iv', 'bank_id', 'type', 'currency_code']); $banks = Bank::query() ->where(function ($q) use ($user) { $q->whereNull('user_id') ->orWhere('user_id', $user->id); }) ->orderBy('name') ->get(['id', 'name', 'logo']); $account->load('bank:id,name,logo'); return Inertia::render('Accounts/Show', [ 'account' => $account->only(['id', 'name', 'name_iv', 'bank_id', 'type', 'currency_code', 'bank']), 'categories' => $categories, 'accounts' => $accounts, 'banks' => $banks, ]); } }