diff --git a/app/Http/Controllers/Api/EvaluationsController.php b/app/Http/Controllers/Api/EvaluationsController.php index 151c3597c43790e17590124af2208a868b53dd73..b1820dd42eeab476b4a9e4777a9dfed920fec070 100644 --- a/app/Http/Controllers/Api/EvaluationsController.php +++ b/app/Http/Controllers/Api/EvaluationsController.php @@ -194,17 +194,20 @@ public function save(EvaluationRepository $repository, EvaluationRequest $reques $evaluation->save(); - // Ajout du niveau supérieur pour les mesures preconisées - $preconizedMeasure = array_slice($this->repository->getBestMeasuresForEvaluation($evaluation), 0, 4); - foreach ($evaluation->measureLevels as $measureLevel) { - $measureLevelpreconized = MeasureLevel::whereId($measureLevel->id) - ->first(); - if ($measureLevelpreconized && in_array($measureLevelpreconized['measure_id'], $preconizedMeasure, true)) { - $measureLevelpreconized->expected_level = $measureLevelpreconized['actual_level'] < 3 ? $measureLevelpreconized['actual_level'] + 1 : null; + if ((Evaluation::STEP_ACTIONS === intval($evaluation->current_step))){ + // Ajout du niveau supérieur pour les mesures preconisées + $preconizedMeasure = array_slice($this->repository->getBestMeasuresForEvaluation($evaluation), 0, 4); + foreach ($evaluation->measureLevels as $measureLevel) { + $measureLevelpreconized = MeasureLevel::whereId($measureLevel->id) + ->first(); + if ($measureLevelpreconized && in_array($measureLevelpreconized['measure_id'], $preconizedMeasure, true)) { + $measureLevelpreconized->expected_level = $measureLevelpreconized['actual_level'] < 3 ? $measureLevelpreconized['actual_level'] + 1 : null; + } + $measureLevelpreconized->save(); } - $measureLevelpreconized->save(); } + // si mofification d'un step, reinitialisation des steps suivants if (isset($data['draft']) && $data['draft']) { if (1 === $evaluation->current_step) {