29 lines
915 B
PHP
29 lines
915 B
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use App\Models\AuditionedEnsemble;
|
|
use App\Models\Instrument;
|
|
use App\Services\AuditionEtudeService;
|
|
|
|
class EtudesController extends Controller
|
|
{
|
|
public function __invoke(AuditionEtudeService $service)
|
|
{
|
|
$ensembles = AuditionedEnsemble::all();
|
|
$instruments = Instrument::has('etudes')->withCount('etudes')->get();
|
|
$schoolYear = $service->getActiveSchoolYear();
|
|
$currentSet = [];
|
|
$etudes = [];
|
|
foreach ($ensembles as $ensemble) {
|
|
$thisSet = $service->getSetForEnsemble($ensemble);
|
|
$currentSet[$ensemble->id] = $thisSet;
|
|
$etudes[$ensemble->id] = $ensemble
|
|
->etudes()->where('set', '=', $thisSet)
|
|
->get()->keyBy('instrument_id');
|
|
}
|
|
|
|
return view('etudes', compact('ensembles', 'schoolYear', 'currentSet', 'instruments','etudes'));
|
|
}
|
|
}
|