Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
File Manager
/
app
/
Http
/
Controllers
:
EstimatesController-20250319091212.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php namespace App\Http\Controllers\V1\Customer\Estimate; use App\Http\Controllers\Controller; use App\Http\Resources\Customer\EstimateResource; use App\Models\Company; use App\Models\Estimate; use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; class EstimatesController extends Controller { /** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function index(Request $request) { $limit = $request->has('limit') ? $request->limit : 10; $estimates = Estimate::with([ 'items', 'customer', 'taxes', 'creator', ]) ->where('status', '<>', 'DRAFT') ->whereCustomer(Auth::guard('customer')->id()) ->applyFilters($request->only([ 'status', 'estimate_number', 'from_date', 'to_date', 'orderByField', 'orderBy', ])) ->latest() ->paginateData($limit); return EstimateResource::collection($estimates) ->additional(['meta' => [ 'estimateTotalCount' => Estimate::where('status', '<>', 'DRAFT')->whereCustomer(Auth::guard('customer')->id())->count(), ]]); } /** * Display the specified resource. * * @param Estimate $estimate * @return \Illuminate\Http\Response */ public function show(Company $company, $id) { $estimate = $company->estimates() ->whereCustomer(Auth::guard('customer')->id()) ->where('id', $id) ->first(); if (! $estimate) { return response()->json(['error' => 'estimate_not_found'], 404); } return new EstimateResource($estimate); } }