fleetCatalogue/app/Http/Controllers/VehicleController.php

105 lines
2.3 KiB
PHP

<?php
namespace App\Http\Controllers;
use App\Models\Manufacturer;
use App\Models\FuelType;
use App\Models\Vehicle;
use App\Http\Requests\StoreVehicleRequest;
use App\Http\Requests\UpdateVehicleRequest;
use App\Models\VehicleClass;
use App\Models\VehicleType;
use App\Models\Vendor;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class VehicleController extends Controller
{
/**
* Display a listing of the resource.
*/
public function index()
{
$vehicles = Vehicle::filter(
request(['search', 'class', 'manufacturer', 'fuelType', 'type'])
)
->paginate(24)->withQueryString();
$manufacturers = Manufacturer::all();
$fuelTypes = FuelType::all();
$classes = VehicleClass::all();
$types = VehicleType::all();
return response(
view('vehicles.index', [
'vehicles' => $vehicles,
'manufacturers' => $manufacturers,
'fuelTypes' => $fuelTypes,
'vehicleClasses' => $classes,
'types' => $types,
])
);
}
/**
* Show the form for creating a new resource.
*/
public function create()
{
//
}
/**
* Store a newly created resource in storage.
*/
public function store(StoreVehicleRequest $request)
{
//
}
/**
* Display the specified resource.
*/
public function show(Vehicle $vehicle)
{
//
}
/**
* Show the form for editing the specified resource.
*/
public function edit(Vehicle $vehicle)
{
//
}
/**
* Update the specified resource in storage.
*/
public function update(UpdateVehicleRequest $request, Vehicle $vehicle)
{
//
}
/**
* Remove the specified resource from storage.
*/
public function destroy(Vehicle $vehicle)
{
//
}
public function autocomplete(Request $request): JsonResponse
{
$games = '';
if ($request->has('q')) {
$search = $request->q;
$games = Vehicle::select(['vehicle_name'])
->where('vehicle_name', 'LIKE', "%$search%")
->get();
}
return response()->json($games);
}
}