Fix: Properly determine if job profiles requirements are met by teamer
This commit is contained in:
@@ -36,20 +36,27 @@ class SkillsController extends AbstractController
|
||||
|
||||
foreach ($jobProfiles as $profile) {
|
||||
/** @var JobProfile $profile */
|
||||
$jobProfileIsSelectable = false;
|
||||
$requiredTrainingsSatisfied = false;
|
||||
if (0 === $profile->getRequiredTrainings()->count()) {
|
||||
$requiredTrainingsSatisfied = true;
|
||||
}
|
||||
foreach ($profile->getRequiredTrainings() as $training) {
|
||||
if (null !== $teamer->getTrainingAttendance($training)) {
|
||||
$jobProfileIsSelectable = true;
|
||||
$requiredTrainingsSatisfied = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
$requiredLicensesSatisfied = false;
|
||||
if (0 === count($profile->getRequiredLicenses())) {
|
||||
$requiredLicensesSatisfied = true;
|
||||
}
|
||||
foreach ($profile->getRequiredLicenses() as $license) {
|
||||
if (null !== $teamer->getLicenseOfType($license)) {
|
||||
$jobProfileIsSelectable = true;
|
||||
$requiredLicensesSatisfied = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
$selectableJobProfiles[$profile->getId()] = $jobProfileIsSelectable;
|
||||
$selectableJobProfiles[$profile->getId()] = $requiredTrainingsSatisfied && $requiredLicensesSatisfied;
|
||||
}
|
||||
|
||||
$form = $this->createForm(TeamerJobProfileType::class, $teamer, ['job_profiles' => $jobProfiles, 'selectable_job_profiles' => $selectableJobProfiles]);
|
||||
|
||||
Reference in New Issue
Block a user