Loading module/Application/src/Application/Provider/IdentityProvider.php +2 −1 Original line number Diff line number Diff line Loading @@ -133,10 +133,11 @@ class IdentityProvider implements ProviderInterface, ChainableProvider $acteursDirecteurThese = $this->acteurService->filterActeursDirecteurThese($acteurs); $acteursCoDirecteurThese = $this->acteurService->filterActeursCoDirecteurThese($acteurs); $acteursPresidentJury = $this->acteurService->filterActeursPresidentJury($acteurs); $acteursRapporteurJury = $this->acteurService->filterActeursRapporteurJury($acteurs); return array_map( function(Acteur $a) { return $a->getRole(); }, array_merge($acteursDirecteurThese, $acteursCoDirecteurThese, $acteursPresidentJury) array_merge($acteursDirecteurThese, $acteursCoDirecteurThese, $acteursPresidentJury, $acteursRapporteurJury) ); } Loading module/Application/src/Application/Service/Acteur/ActeurService.php +11 −0 Original line number Diff line number Diff line Loading @@ -68,6 +68,17 @@ class ActeurService extends BaseService }); } /** * @param Acteur[] $acteurs * @return Acteur[] */ public function filterActeursRapporteurJury(array $acteurs): array { return array_filter($acteurs, function(Acteur $a) { return $a->getRole()->getCode() === Role::CODE_RAPPORTEUR_JURY; }); } /** * @param Acteur[] $acteurs * @return Acteur[] Loading module/Application/src/Application/Service/StructureDocument/StructureDocumentService.php +8 −2 Original line number Diff line number Diff line Loading @@ -229,10 +229,16 @@ class StructureDocumentService { return $contenus; } public function getContenu(Structure $structure, string $nature_code) { /** * @param Structure $structure * @param string $nature_code * @param Etablissement|null $etablissement * @return string|null */ public function getContenu(Structure $structure, string $nature_code, ?Etablissement $etablissement = null) { $documents = $this->getStructuresDocumentsByStructure($structure); foreach ($documents as $document) { if ($document->getNature()->getCode() === $nature_code) return $this->fichierService->fetchContenuFichier($document->getFichier()); if ($document->getNature()->getCode() === $nature_code AND $document->getEtablissement() === $etablissement) return $this->fichierService->fetchContenuFichier($document->getFichier()); } return null; } Loading module/Soutenance/src/Soutenance/Controller/PresoutenanceController.php +3 −34 Original line number Diff line number Diff line Loading @@ -8,22 +8,17 @@ use Application\Entity\Db\Etablissement; use Application\Entity\Db\NatureFichier; use Application\Entity\Db\Profil; use Application\Entity\Db\TypeValidation; use Application\Entity\Db\Utilisateur; use Application\Entity\Db\Validation; use Application\Service\Acteur\ActeurServiceAwareTrait; use Application\Service\Fichier\FichierServiceAwareTrait; use Application\Service\FichierThese\PdcData; use Application\Service\Individu\IndividuServiceAwareTrait; use Application\Service\Role\RoleServiceAwareTrait; use Application\Service\StructureDocument\StructureDocumentServiceAwareTrait; use Application\Service\These\TheseServiceAwareTrait; use Application\Service\Utilisateur\UtilisateurServiceAwareTrait; use DateInterval; use Soutenance\Entity\Avis; use Soutenance\Entity\Etat; use Soutenance\Entity\Membre; use Soutenance\Form\AdresseSoutenance\AdresseSoutenanceFormAwareTrait; use Soutenance\Form\DateRenduRapport\DateRenduRapportForm; use Soutenance\Form\DateRenduRapport\DateRenduRapportFormAwareTrait; use Soutenance\Service\Avis\AvisServiceAwareTrait; use Soutenance\Service\EngagementImpartialite\EngagementImpartialiteServiceAwareTrait; Loading @@ -38,7 +33,6 @@ use Soutenance\Service\Validation\ValidatationServiceAwareTrait; use UnicaenApp\Exception\LogicException; use UnicaenApp\Exception\RuntimeException; use UnicaenAuth\Service\Traits\UserServiceAwareTrait; use Zend\Http\Request; use Zend\Mvc\Plugin\FlashMessenger\FlashMessenger; use Zend\View\Model\ViewModel; use Zend\View\Renderer\PhpRenderer; Loading Loading @@ -116,12 +110,10 @@ class PresoutenanceController extends AbstractController $these = $this->requestedThese(); $proposition = $this->getPropositionService()->findByThese($these); /** @var DateRenduRapportForm $form */ $form = $this->getDateRenduRapportForm(); $form->setAttribute('action', $this->url()->fromRoute('soutenance/presoutenance/date-rendu-rapport', ['these' => $these->getId()], [], true)); $form->bind($proposition); /** @var Request $request */ $request = $this->getRequest(); if ($request->isPost()) { $data = $request->getPost(); Loading Loading @@ -198,7 +190,6 @@ class PresoutenanceController extends AbstractController if ($libre) $acteurs_libres[] = $acteur; } /** @var Request $request */ $request = $this->getRequest(); if ($request->isPost()) { $data = $request->getPost(); Loading @@ -212,8 +203,6 @@ class PresoutenanceController extends AbstractController //mise à jour du membre de soutenance $membre->setActeur($acteur); $this->getMembreService()->update($membre); //affectation du rôle $this->getRoleService()->addIndividuRole($individu, $acteur->getRole()); //creation de l'utilisateur $utilisateurs = $this->utilisateurService->getRepository()->findByIndividu($individu); if (empty($utilisateurs)) { Loading @@ -238,7 +227,6 @@ class PresoutenanceController extends AbstractController $these = $this->requestedThese(); $membre = $this->getMembreService()->getRequestedMembre($this); /** @var Acteur[] $acteurs */ $acteurs = $this->getActeurService()->getRepository()->findActeurByThese($these); $acteur = null; foreach ($acteurs as $acteur_) { Loading @@ -250,15 +238,12 @@ class PresoutenanceController extends AbstractController $username = $this->generateUsername($membre); $membre->setActeur(null); $this->getMembreService()->update($membre); $this->getRoleService()->removeIndividuRole($acteur->getIndividu(), $acteur->getRole()); $validations = $this->getValidationService()->getRepository()->findValidationByTheseAndCodeAndIndividu($these, TypeValidation::CODE_ENGAGEMENT_IMPARTIALITE, $acteur->getIndividu()); if (!empty($validations)) { $this->getValidationService()->unsignEngagementImpartialite(current($validations)); } /** @var Utilisateur $utilisateur */ $utilisateur = $this->utilisateurService->getRepository()->findByUsername($username); if ($utilisateur) $this->utilisateurService->supprimerUtilisateur($utilisateur); Loading @@ -283,7 +268,6 @@ class PresoutenanceController extends AbstractController $rapporteurs = $this->getPropositionService()->getRapporteurs($proposition); } /** @var Membre $rapporteur */ foreach ($rapporteurs as $rapporteur) { $this->getNotifierSoutenanceService()->triggerDemandeAvisSoutenance($these, $proposition, $rapporteur); } Loading @@ -310,7 +294,6 @@ class PresoutenanceController extends AbstractController $proposition->setEtat($etat); $this->getPropositionService()->update($proposition); /** @var Avis[] $avis */ $avis = $this->getAvisService()->getAvisByThese($these); $this->getNotifierSoutenanceService()->triggerFeuVertSoutenance($these, $proposition, $avis); Loading Loading @@ -347,7 +330,6 @@ class PresoutenanceController extends AbstractController $form->setAttribute('action', $this->url()->fromRoute('soutenance/presoutenance/modifier-adresse', ['these' => $these->getId()], [], true)); $form->bind($proposition); /** @var Request $request */ $request = $this->getRequest(); if ($request->isPost()) { $data = $request->getPost(); Loading @@ -371,7 +353,6 @@ class PresoutenanceController extends AbstractController $these = $this->requestedThese(); $proposition = $this->getPropositionService()->findByThese($these); /** @var PdcData $pdcData */ $pdcData = $this->getTheseService()->fetchInformationsPageDeCouverture($these); $exporter = new ProcesVerbalSoutenancePdfExporter($this->renderer, 'A4'); Loading @@ -390,7 +371,6 @@ class PresoutenanceController extends AbstractController $these = $this->requestedThese(); $proposition = $this->getPropositionService()->findByThese($these); /** @var PdcData $pdcData */ $pdcData = $this->getTheseService()->fetchInformationsPageDeCouverture($these); $exporter = new AvisSoutenancePdfExporter($this->renderer, 'A4'); Loading Loading @@ -433,17 +413,14 @@ class PresoutenanceController extends AbstractController { $these = $this->requestedThese(); $proposition = $this->getPropositionService()->findByThese($these); $signature = $this->getStructureDocumentService()->getContenu($these->getEcoleDoctorale()->getStructure(), NatureFichier::CODE_SIGNATURE_CONVOCATION); $signature = $this->getStructureDocumentService()->getContenu($these->getEcoleDoctorale()->getStructure(), NatureFichier::CODE_SIGNATURE_CONVOCATION, $these->getEtablissement()); if ($signature === null) $signature = $this->getStructureDocumentService()->getContenu($these->getEtablissement()->getStructure(), NatureFichier::CODE_SIGNATURE_CONVOCATION); /** @var PdcData $pdcData */ $pdcData = $this->getTheseService()->fetchInformationsPageDeCouverture($these); /** @var Validation[] $validationMDD */ $validationMDD = $this->getValidationService()->getRepository()->findValidationByCodeAndThese(TypeValidation::CODE_VALIDATION_PROPOSITION_BDD, $these); $dateValidation = (!empty($validationMDD)) ? current($validationMDD)->getHistoModification() : null; /** @var string $ville */ $ville = $this->getVille($these->getEtablissement()); $exporter = new ConvocationPdfExporter($this->renderer, 'A4'); Loading @@ -463,17 +440,14 @@ class PresoutenanceController extends AbstractController { $these = $this->requestedThese(); $proposition = $this->getPropositionService()->findByThese($these); $signature = $this->getStructureDocumentService()->getContenu($these->getEcoleDoctorale()->getStructure(), NatureFichier::CODE_SIGNATURE_CONVOCATION); $signature = $this->getStructureDocumentService()->getContenu($these->getEcoleDoctorale()->getStructure(), NatureFichier::CODE_SIGNATURE_CONVOCATION, $these->getEtablissement()); if ($signature === null) $signature = $this->getStructureDocumentService()->getContenu($these->getEtablissement()->getStructure(), NatureFichier::CODE_SIGNATURE_CONVOCATION); /** @var PdcData $pdcData */ $pdcData = $this->getTheseService()->fetchInformationsPageDeCouverture($these); /** @var Validation[] $validationMDD */ $validationMDD = $this->getValidationService()->getRepository()->findValidationByCodeAndThese(TypeValidation::CODE_VALIDATION_PROPOSITION_BDD, $these); $dateValidation = (!empty($validationMDD)) ? current($validationMDD)->getHistoModification() : null; /** @var string $ville */ $ville = $this->getVille($these->getEtablissement()); $exporter = new ConvocationPdfExporter($this->renderer, 'A4'); Loading @@ -494,18 +468,14 @@ class PresoutenanceController extends AbstractController $these = $this->requestedThese(); $proposition = $this->getPropositionService()->findByThese($these); $membre = $this->getMembreService()->getRequestedMembre($this); $signature = $this->getStructureDocumentService()->getContenu($these->getEcoleDoctorale()->getStructure(), NatureFichier::CODE_SIGNATURE_CONVOCATION); $signature = $this->getStructureDocumentService()->getContenu($these->getEcoleDoctorale()->getStructure(), NatureFichier::CODE_SIGNATURE_CONVOCATION, $these->getEtablissement()); if ($signature === null) $signature = $this->getStructureDocumentService()->getContenu($these->getEtablissement()->getStructure(), NatureFichier::CODE_SIGNATURE_CONVOCATION); /** @var PdcData $pdcData */ $pdcData = $this->getTheseService()->fetchInformationsPageDeCouverture($these); /** @var Validation[] $validationMDD */ $validationMDD = $this->getValidationService()->getRepository()->findValidationByCodeAndThese(TypeValidation::CODE_VALIDATION_PROPOSITION_BDD, $these); $dateValidation = (!empty($validationMDD)) ? current($validationMDD)->getHistoModification() : null; /** @var string $ville */ $ville = $this->getVille($these->getEtablissement()); $exporter = new ConvocationPdfExporter($this->renderer, 'A4'); Loading @@ -527,7 +497,6 @@ class PresoutenanceController extends AbstractController $these = $this->requestedThese(); $proposition = $this->getPropositionService()->findByThese($these); /** @var Validation[] $validationMDD */ $validationMDD = $this->getValidationService()->getRepository()->findValidationByCodeAndThese(TypeValidation::CODE_VALIDATION_PROPOSITION_BDD, $these); $dateValidation = (!empty($validationMDD)) ? current($validationMDD)->getHistoModification() : null; Loading module/Soutenance/src/Soutenance/Service/EngagementImpartialite/EngagementImpartialiteService.php +1 −0 Original line number Diff line number Diff line Loading @@ -2,6 +2,7 @@ namespace Soutenance\Service\EngagementImpartialite; use Application\Entity\Db\Acteur; use Application\Entity\Db\Individu; use Application\Entity\Db\These; use Application\Entity\Db\TypeValidation; Loading Loading
module/Application/src/Application/Provider/IdentityProvider.php +2 −1 Original line number Diff line number Diff line Loading @@ -133,10 +133,11 @@ class IdentityProvider implements ProviderInterface, ChainableProvider $acteursDirecteurThese = $this->acteurService->filterActeursDirecteurThese($acteurs); $acteursCoDirecteurThese = $this->acteurService->filterActeursCoDirecteurThese($acteurs); $acteursPresidentJury = $this->acteurService->filterActeursPresidentJury($acteurs); $acteursRapporteurJury = $this->acteurService->filterActeursRapporteurJury($acteurs); return array_map( function(Acteur $a) { return $a->getRole(); }, array_merge($acteursDirecteurThese, $acteursCoDirecteurThese, $acteursPresidentJury) array_merge($acteursDirecteurThese, $acteursCoDirecteurThese, $acteursPresidentJury, $acteursRapporteurJury) ); } Loading
module/Application/src/Application/Service/Acteur/ActeurService.php +11 −0 Original line number Diff line number Diff line Loading @@ -68,6 +68,17 @@ class ActeurService extends BaseService }); } /** * @param Acteur[] $acteurs * @return Acteur[] */ public function filterActeursRapporteurJury(array $acteurs): array { return array_filter($acteurs, function(Acteur $a) { return $a->getRole()->getCode() === Role::CODE_RAPPORTEUR_JURY; }); } /** * @param Acteur[] $acteurs * @return Acteur[] Loading
module/Application/src/Application/Service/StructureDocument/StructureDocumentService.php +8 −2 Original line number Diff line number Diff line Loading @@ -229,10 +229,16 @@ class StructureDocumentService { return $contenus; } public function getContenu(Structure $structure, string $nature_code) { /** * @param Structure $structure * @param string $nature_code * @param Etablissement|null $etablissement * @return string|null */ public function getContenu(Structure $structure, string $nature_code, ?Etablissement $etablissement = null) { $documents = $this->getStructuresDocumentsByStructure($structure); foreach ($documents as $document) { if ($document->getNature()->getCode() === $nature_code) return $this->fichierService->fetchContenuFichier($document->getFichier()); if ($document->getNature()->getCode() === $nature_code AND $document->getEtablissement() === $etablissement) return $this->fichierService->fetchContenuFichier($document->getFichier()); } return null; } Loading
module/Soutenance/src/Soutenance/Controller/PresoutenanceController.php +3 −34 Original line number Diff line number Diff line Loading @@ -8,22 +8,17 @@ use Application\Entity\Db\Etablissement; use Application\Entity\Db\NatureFichier; use Application\Entity\Db\Profil; use Application\Entity\Db\TypeValidation; use Application\Entity\Db\Utilisateur; use Application\Entity\Db\Validation; use Application\Service\Acteur\ActeurServiceAwareTrait; use Application\Service\Fichier\FichierServiceAwareTrait; use Application\Service\FichierThese\PdcData; use Application\Service\Individu\IndividuServiceAwareTrait; use Application\Service\Role\RoleServiceAwareTrait; use Application\Service\StructureDocument\StructureDocumentServiceAwareTrait; use Application\Service\These\TheseServiceAwareTrait; use Application\Service\Utilisateur\UtilisateurServiceAwareTrait; use DateInterval; use Soutenance\Entity\Avis; use Soutenance\Entity\Etat; use Soutenance\Entity\Membre; use Soutenance\Form\AdresseSoutenance\AdresseSoutenanceFormAwareTrait; use Soutenance\Form\DateRenduRapport\DateRenduRapportForm; use Soutenance\Form\DateRenduRapport\DateRenduRapportFormAwareTrait; use Soutenance\Service\Avis\AvisServiceAwareTrait; use Soutenance\Service\EngagementImpartialite\EngagementImpartialiteServiceAwareTrait; Loading @@ -38,7 +33,6 @@ use Soutenance\Service\Validation\ValidatationServiceAwareTrait; use UnicaenApp\Exception\LogicException; use UnicaenApp\Exception\RuntimeException; use UnicaenAuth\Service\Traits\UserServiceAwareTrait; use Zend\Http\Request; use Zend\Mvc\Plugin\FlashMessenger\FlashMessenger; use Zend\View\Model\ViewModel; use Zend\View\Renderer\PhpRenderer; Loading Loading @@ -116,12 +110,10 @@ class PresoutenanceController extends AbstractController $these = $this->requestedThese(); $proposition = $this->getPropositionService()->findByThese($these); /** @var DateRenduRapportForm $form */ $form = $this->getDateRenduRapportForm(); $form->setAttribute('action', $this->url()->fromRoute('soutenance/presoutenance/date-rendu-rapport', ['these' => $these->getId()], [], true)); $form->bind($proposition); /** @var Request $request */ $request = $this->getRequest(); if ($request->isPost()) { $data = $request->getPost(); Loading Loading @@ -198,7 +190,6 @@ class PresoutenanceController extends AbstractController if ($libre) $acteurs_libres[] = $acteur; } /** @var Request $request */ $request = $this->getRequest(); if ($request->isPost()) { $data = $request->getPost(); Loading @@ -212,8 +203,6 @@ class PresoutenanceController extends AbstractController //mise à jour du membre de soutenance $membre->setActeur($acteur); $this->getMembreService()->update($membre); //affectation du rôle $this->getRoleService()->addIndividuRole($individu, $acteur->getRole()); //creation de l'utilisateur $utilisateurs = $this->utilisateurService->getRepository()->findByIndividu($individu); if (empty($utilisateurs)) { Loading @@ -238,7 +227,6 @@ class PresoutenanceController extends AbstractController $these = $this->requestedThese(); $membre = $this->getMembreService()->getRequestedMembre($this); /** @var Acteur[] $acteurs */ $acteurs = $this->getActeurService()->getRepository()->findActeurByThese($these); $acteur = null; foreach ($acteurs as $acteur_) { Loading @@ -250,15 +238,12 @@ class PresoutenanceController extends AbstractController $username = $this->generateUsername($membre); $membre->setActeur(null); $this->getMembreService()->update($membre); $this->getRoleService()->removeIndividuRole($acteur->getIndividu(), $acteur->getRole()); $validations = $this->getValidationService()->getRepository()->findValidationByTheseAndCodeAndIndividu($these, TypeValidation::CODE_ENGAGEMENT_IMPARTIALITE, $acteur->getIndividu()); if (!empty($validations)) { $this->getValidationService()->unsignEngagementImpartialite(current($validations)); } /** @var Utilisateur $utilisateur */ $utilisateur = $this->utilisateurService->getRepository()->findByUsername($username); if ($utilisateur) $this->utilisateurService->supprimerUtilisateur($utilisateur); Loading @@ -283,7 +268,6 @@ class PresoutenanceController extends AbstractController $rapporteurs = $this->getPropositionService()->getRapporteurs($proposition); } /** @var Membre $rapporteur */ foreach ($rapporteurs as $rapporteur) { $this->getNotifierSoutenanceService()->triggerDemandeAvisSoutenance($these, $proposition, $rapporteur); } Loading @@ -310,7 +294,6 @@ class PresoutenanceController extends AbstractController $proposition->setEtat($etat); $this->getPropositionService()->update($proposition); /** @var Avis[] $avis */ $avis = $this->getAvisService()->getAvisByThese($these); $this->getNotifierSoutenanceService()->triggerFeuVertSoutenance($these, $proposition, $avis); Loading Loading @@ -347,7 +330,6 @@ class PresoutenanceController extends AbstractController $form->setAttribute('action', $this->url()->fromRoute('soutenance/presoutenance/modifier-adresse', ['these' => $these->getId()], [], true)); $form->bind($proposition); /** @var Request $request */ $request = $this->getRequest(); if ($request->isPost()) { $data = $request->getPost(); Loading @@ -371,7 +353,6 @@ class PresoutenanceController extends AbstractController $these = $this->requestedThese(); $proposition = $this->getPropositionService()->findByThese($these); /** @var PdcData $pdcData */ $pdcData = $this->getTheseService()->fetchInformationsPageDeCouverture($these); $exporter = new ProcesVerbalSoutenancePdfExporter($this->renderer, 'A4'); Loading @@ -390,7 +371,6 @@ class PresoutenanceController extends AbstractController $these = $this->requestedThese(); $proposition = $this->getPropositionService()->findByThese($these); /** @var PdcData $pdcData */ $pdcData = $this->getTheseService()->fetchInformationsPageDeCouverture($these); $exporter = new AvisSoutenancePdfExporter($this->renderer, 'A4'); Loading Loading @@ -433,17 +413,14 @@ class PresoutenanceController extends AbstractController { $these = $this->requestedThese(); $proposition = $this->getPropositionService()->findByThese($these); $signature = $this->getStructureDocumentService()->getContenu($these->getEcoleDoctorale()->getStructure(), NatureFichier::CODE_SIGNATURE_CONVOCATION); $signature = $this->getStructureDocumentService()->getContenu($these->getEcoleDoctorale()->getStructure(), NatureFichier::CODE_SIGNATURE_CONVOCATION, $these->getEtablissement()); if ($signature === null) $signature = $this->getStructureDocumentService()->getContenu($these->getEtablissement()->getStructure(), NatureFichier::CODE_SIGNATURE_CONVOCATION); /** @var PdcData $pdcData */ $pdcData = $this->getTheseService()->fetchInformationsPageDeCouverture($these); /** @var Validation[] $validationMDD */ $validationMDD = $this->getValidationService()->getRepository()->findValidationByCodeAndThese(TypeValidation::CODE_VALIDATION_PROPOSITION_BDD, $these); $dateValidation = (!empty($validationMDD)) ? current($validationMDD)->getHistoModification() : null; /** @var string $ville */ $ville = $this->getVille($these->getEtablissement()); $exporter = new ConvocationPdfExporter($this->renderer, 'A4'); Loading @@ -463,17 +440,14 @@ class PresoutenanceController extends AbstractController { $these = $this->requestedThese(); $proposition = $this->getPropositionService()->findByThese($these); $signature = $this->getStructureDocumentService()->getContenu($these->getEcoleDoctorale()->getStructure(), NatureFichier::CODE_SIGNATURE_CONVOCATION); $signature = $this->getStructureDocumentService()->getContenu($these->getEcoleDoctorale()->getStructure(), NatureFichier::CODE_SIGNATURE_CONVOCATION, $these->getEtablissement()); if ($signature === null) $signature = $this->getStructureDocumentService()->getContenu($these->getEtablissement()->getStructure(), NatureFichier::CODE_SIGNATURE_CONVOCATION); /** @var PdcData $pdcData */ $pdcData = $this->getTheseService()->fetchInformationsPageDeCouverture($these); /** @var Validation[] $validationMDD */ $validationMDD = $this->getValidationService()->getRepository()->findValidationByCodeAndThese(TypeValidation::CODE_VALIDATION_PROPOSITION_BDD, $these); $dateValidation = (!empty($validationMDD)) ? current($validationMDD)->getHistoModification() : null; /** @var string $ville */ $ville = $this->getVille($these->getEtablissement()); $exporter = new ConvocationPdfExporter($this->renderer, 'A4'); Loading @@ -494,18 +468,14 @@ class PresoutenanceController extends AbstractController $these = $this->requestedThese(); $proposition = $this->getPropositionService()->findByThese($these); $membre = $this->getMembreService()->getRequestedMembre($this); $signature = $this->getStructureDocumentService()->getContenu($these->getEcoleDoctorale()->getStructure(), NatureFichier::CODE_SIGNATURE_CONVOCATION); $signature = $this->getStructureDocumentService()->getContenu($these->getEcoleDoctorale()->getStructure(), NatureFichier::CODE_SIGNATURE_CONVOCATION, $these->getEtablissement()); if ($signature === null) $signature = $this->getStructureDocumentService()->getContenu($these->getEtablissement()->getStructure(), NatureFichier::CODE_SIGNATURE_CONVOCATION); /** @var PdcData $pdcData */ $pdcData = $this->getTheseService()->fetchInformationsPageDeCouverture($these); /** @var Validation[] $validationMDD */ $validationMDD = $this->getValidationService()->getRepository()->findValidationByCodeAndThese(TypeValidation::CODE_VALIDATION_PROPOSITION_BDD, $these); $dateValidation = (!empty($validationMDD)) ? current($validationMDD)->getHistoModification() : null; /** @var string $ville */ $ville = $this->getVille($these->getEtablissement()); $exporter = new ConvocationPdfExporter($this->renderer, 'A4'); Loading @@ -527,7 +497,6 @@ class PresoutenanceController extends AbstractController $these = $this->requestedThese(); $proposition = $this->getPropositionService()->findByThese($these); /** @var Validation[] $validationMDD */ $validationMDD = $this->getValidationService()->getRepository()->findValidationByCodeAndThese(TypeValidation::CODE_VALIDATION_PROPOSITION_BDD, $these); $dateValidation = (!empty($validationMDD)) ? current($validationMDD)->getHistoModification() : null; Loading
module/Soutenance/src/Soutenance/Service/EngagementImpartialite/EngagementImpartialiteService.php +1 −0 Original line number Diff line number Diff line Loading @@ -2,6 +2,7 @@ namespace Soutenance\Service\EngagementImpartialite; use Application\Entity\Db\Acteur; use Application\Entity\Db\Individu; use Application\Entity\Db\These; use Application\Entity\Db\TypeValidation; Loading