Files
famous-ly4-ev/app-modules/catalog/src/Http/Controllers/DestinationController.php
T

33 lines
1.0 KiB
PHP
Raw Normal View History

<?php
namespace Modules\Catalog\Http\Controllers;
2026-08-16 23:50:39 +07:00
use Illuminate\Http\Request;
use Illuminate\Http\Resources\Json\AnonymousResourceCollection;
use Illuminate\Routing\Controller;
use Modules\Catalog\Http\Resources\DestinationResource;
use Modules\Catalog\Models\Destination;
class DestinationController extends Controller
{
2026-08-16 23:50:39 +07:00
public function index(Request $request): AnonymousResourceCollection
{
2026-08-16 23:50:39 +07:00
$terms = array_filter(array_map(
trim(...),
explode(',', (string) $request->string('search')),
));
return DestinationResource::collection(
2026-08-16 23:50:39 +07:00
Destination::query()
->where('is_active', true)
->when($terms !== [], fn ($query) => $query->where(function ($query) use ($terms) {
foreach ($terms as $term) {
$query->orWhere('name', 'ilike', "%{$term}%")
->orWhere('mm_name', 'ilike', "%{$term}%");
}
}))
->paginate()
);
}
}