File "SalesTaxApiController.php"
Full Path: /home/clickysoft/public_html/jmapi5.clickysoft.net/app/Http/Controllers/Api/V1/Admin/SalesTaxApiController.php
File size: 1.51 KB
MIME-type: text/x-php
Charset: utf-8
<?php
namespace App\Http\Controllers\Api\V1\Admin;
use App\Http\Controllers\Controller;
use App\Http\Requests\Admin\UpdateSalesTaxRequest;
use App\Http\Resources\Admin\StateResource;
use App\Http\Resources\Admin\StateSalesTaxResource;
use App\Models\StateSalesTax;
use Gate;
use Illuminate\Http\Request;
use Symfony\Component\HttpFoundation\Response;
class SalesTaxApiController extends Controller
{
public function index(Request $request)
{
abort_if(Gate::denies('sales_tax_access'), Response::HTTP_FORBIDDEN, '403 Forbidden');
$noPaging = $request->get('no_paging') === "true";
$taxes = StateSalesTax::when($request->filled('name'), function ($query) use ($request){
$query->where('name', 'like', "%{$request->get('name')}%");
});
if($noPaging) {
$taxes = $taxes->get();
} else {
$taxes = $taxes->paginate(50);
}
return new StateSalesTaxResource($taxes);
}
public function states()
{
StateResource::withoutWrapping();
return StateResource::collection(StateSalesTax::all());
}
public function show(StateSalesTax $stateSalesTax)
{
return new StateSalesTaxResource($stateSalesTax);
}
public function update(UpdateSalesTaxRequest $request, StateSalesTax $stateSalesTax)
{
$stateSalesTax->update($request->all());
return (new StateSalesTaxResource($stateSalesTax))
->response()
->setStatusCode(Response::HTTP_CREATED);
}
}