sintonia_webapp/app/Http/Controllers/Show/ShowDaysController.php

49 lines
1.3 KiB
PHP

<?php
namespace App\Http\Controllers\Show;
use App\Filters\Show\ShowFilters;
use App\Http\Controllers\Controller;
use App\Http\Requests\ShowDaysRequest;
use App\Http\Resources\ShowDaysResource;
use App\Models\Show\Show;
use App\Models\Show\ShowDays;
use App\Traits\Show\ShowDaysTrait;
use Illuminate\Http\ReqshowDaysFlatest;
use Illuminate\Http\Request;
class ShowDaysController extends Controller
{
use ShowDaysTrait;
public function index(Request $request)
{
$queryParams = collect($request->except('flattenShowDays'));
$showDays = (new ShowDays())->searchFilter($queryParams)->get();
if($request->flattenShowDays) $showDays = $this->showDaysFlat($showDays);
return response()->json($showDays);
}
public function store(ShowDaysRequest $request)
{
return new ShowDaysResource(ShowDays::create($request->validated()));
}
public function show(ShowDays $ShowDays)
{
return new ShowDaysResource($ShowDays);
}
public function update(ShowDaysRequest $request, ShowDays $ShowDays)
{
$ShowDays->update($request->validated());
return new ShowDaysResource($ShowDays);
}
public function destroy(ShowDays $ShowDays)
{
$ShowDays->delete();
return response()->json();
}
}