has('limit') ? $request->limit : 10; $expenses = Expense::with('category', 'creator', 'fields') ->whereUser(Auth::guard('customer')->id()) ->applyFilters($request->only([ 'expense_category_id', 'from_date', 'to_date', 'orderByField', 'orderBy', ])) ->paginateData($limit); return (ExpenseResource::collection($expenses)) ->additional(['meta' => [ 'expenseTotalCount' => Expense::whereCustomer(Auth::guard('customer')->id())->count(), ]]); } /** * Display the specified resource. * * @param \Crater\Models\Expense $expense * @return \Illuminate\Http\Response */ public function show(Company $company, $id) { $expense = $company->expenses() ->whereCustomer(Auth::guard('customer')->id()) ->where('id', $id) ->first(); if (! $expense) { return response()->json(['error' => 'expense_not_found'], 404); } return new ExpenseResource($expense); } }