Commit 8772c26d authored by Bertrand Gauthier's avatar Bertrand Gauthier
Browse files

[FIX] Soutenance HDR : la génération des convocations devait planter (méthode...

[FIX] Soutenance HDR : la génération des convocations devait planter (méthode manquante dans une classe).
parent 737011a9
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -7,6 +7,7 @@ Journal des modifications
- Admission (convention de formation) : correction du texte à l'attention du candidat, des directions de thèse et des unités de recherche.
- Admission (documents à fournir) : déplacement du passeport dans la section des documents obligatoires pour tous.
- Admission (convention et charte) : retrait du filigrane 'PROJET' sur le PDF.
- [FIX] Soutenance HDR : la génération des convocations devait planter (méthode manquante dans une classe).

11.1.0
------
+23 −0
Original line number Diff line number Diff line
@@ -485,6 +485,29 @@ abstract class PresoutenanceController extends AbstractSoutenanceController
        }
    }

    protected function findSignatureEcoleDoctorale(These|HDR $object): ?string
    {
        $fichier = $this->structureDocumentService->findDocumentFichierForStructureNatureAndEtablissement(
            $object->getEcoleDoctorale()->getStructure(),
            NatureFichier::CODE_SIGNATURE_CONVOCATION,
            $object->getEtablissement()
        );

        if ($fichier === null) {
            return null;
        }

        try {
            $this->fichierStorageService->setGenererFichierSubstitutionSiIntrouvable(false);
            return $this->fichierStorageService->getFileForFichier($fichier);
        } catch (StorageAdapterException $e) {
            throw new RuntimeException(
                "Un problème est survenu lors de la récupération de la signature de l'ED pour la convocation !",
                previous: $e
            );
        }
    }

    public function envoyerConvocationAction() : Response
    {
        $this->initializeFromType(false, false);
+0 −19
Original line number Diff line number Diff line
@@ -271,25 +271,6 @@ class PresoutenanceTheseController extends PresoutenanceController
        return $this->redirect()->toRoute("soutenance_{$this->type}/presoutenance", ['these' => $this->entity->getId()], [], true);
    }

    protected function findSignatureEcoleDoctorale(These $object): ?string
    {
        $fichier = $this->structureDocumentService->findDocumentFichierForStructureNatureAndEtablissement(
            $object->getEcoleDoctorale()->getStructure(),
            NatureFichier::CODE_SIGNATURE_CONVOCATION,
            $object->getEtablissement());

        if ($fichier === null) {
            return null;
        }

        try {
            $this->fichierStorageService->setGenererFichierSubstitutionSiIntrouvable(false);
            return $this->fichierStorageService->getFileForFichier($fichier);
        } catch (StorageAdapterException $e) {
            throw new RuntimeException("Un problème est survenu lors de la récupération de la signature de l'ED !", 0, $e);
        }
    }

    /**
     *
     * Génération des documents liés à la présoutenance