ldc-legaulois/app/Http/Controllers/MapController.php
2021-04-06 16:08:47 +02:00

34 lines
1.1 KiB
PHP

<?php
namespace App\Http\Controllers;
use App\Enums\EleveurOcbStatus;
use App\Enums\OCBType;
use App\Http\Requests\GetMapBreeders;
use App\Http\Resources\BreederMapCollection;
use App\Models\Breeders;
use App\Models\BreedersSites;
use Illuminate\Http\Request;
class MapController extends Controller
{
public function breeders(GetMapBreeders $request)
{
$sites = BreedersSites::query();
if ($request->isocb) {
$sites = $sites
->whereHas('breeder', function ($q) {
$q->where('display', true)->where('show_on_non_ocb', false);
})->with('breeder')
->where('ocbStatus', EleveurOcbStatus::yes()->value)
->where('ocbType', $request->ocbtype)->get();
} else {
$sites = $sites
->whereHas('breeder', function ($q) {
$q->where('display', true)->where('show_on_non_ocb', true);
})->with('breeder')
->where('ocbType', EleveurOcbStatus::no()->value)->get();
}
return new BreederMapCollection($sites);
}
}