ResolutionController.php
1 <?php 2 3 namespace App\Http\Controllers\Filter; 4 5 use App\Http\Controllers\Controller; 6 use App\Models\Resolution; 7 use Illuminate\Contracts\Database\Eloquent\Builder; 8 use Illuminate\Http\Request; 9 10 class ResolutionController extends Controller 11 { 12 public function resolution_numbers(Request $request) 13 { 14 return Resolution::query() 15 ->select('id', 'code_seq', 'code_year') 16 ->orderBy('code_year', 'asc') 17 ->when( 18 $request->search, 19 fn (Builder $query) => $query 20 ->where('code_year', 'like', "%{$request->search}%") 21 ) 22 ->when( 23 $request->exists('selected'), 24 fn (Builder $query) => $query->whereIn('id', $request->input('selected', [])), 25 fn (Builder $query) => $query->limit(10) 26 )->get()->map(function ($resolution) { 27 return [ 28 'id' => $resolution->id, 29 'name' => $resolution->resolutionNumber, 30 ]; 31 }); 32 } 33 }