Commit ac083826 authored by Jean-Philippe Metivier's avatar Jean-Philippe Metivier
Browse files

Refactoring HasMetier : interface, trait et form

parent aebac72d
Loading
Loading
Loading
Loading
+1 −7
Original line number Diff line number Diff line
@@ -4,10 +4,6 @@ namespace Application;

use Application\Controller\FicheMetierController;
use Application\Controller\FicheMetierControllerFactory;
use Application\Form\FicheMetier\LibelleForm;
use Application\Form\FicheMetier\LibelleFormFactory;
use Application\Form\FicheMetier\LibelleHydrator;
use Application\Form\FicheMetier\LibelleHydratorFactory;
use Application\Form\FicheMetierImportation\FicheMetierImportationForm;
use Application\Form\FicheMetierImportation\FicheMetierImportationFormFactory;
use Application\Form\FicheMetierImportation\FichierMetierImportationHydrator;
@@ -24,9 +20,9 @@ use Application\Service\FicheMetier\FicheMetierServiceFactory;
use Application\View\Helper\FicheMetierExterneViewHelper;
use Application\View\Helper\RaisonsViewHelper;
use Application\View\Helper\SpecificitePosteViewHelper;
use UnicaenPrivilege\Guard\PrivilegeController;
use Laminas\Router\Http\Literal;
use Laminas\Router\Http\Segment;
use UnicaenPrivilege\Guard\PrivilegeController;

return [
    'bjyauthorize' => [
@@ -538,7 +534,6 @@ return [
    ],
    'form_elements' => [
        'factories' => [
            LibelleForm::class => LibelleFormFactory::class,
            SelectionFicheMetierForm::class => SelectionFicheMetierFormFactory::class,
            FicheMetierImportationForm::class => FicheMetierImportationFormFactory::class,
            RaisonForm::class => RaisonFormFactory::class,
@@ -546,7 +541,6 @@ return [
    ],
    'hydrators' => [
        'factories' => [
            LibelleHydrator::class => LibelleHydratorFactory::class,
            FichierMetierImportationHydrator::class => FichierMetierImportationHydratorFactory::class,
            RaisonHydrator::class => RaisonHydratorFactory::class,
        ],
+5 −8
Original line number Diff line number Diff line
@@ -7,8 +7,6 @@ use Application\Entity\Db\FicheMetier;
use Application\Entity\Db\ParcoursDeFormation;
use Application\Form\Activite\ActiviteForm;
use Application\Form\Activite\ActiviteFormAwareTrait;
use Application\Form\FicheMetier\LibelleForm;
use Application\Form\FicheMetier\LibelleFormAwareTrait;
use Application\Form\FicheMetierImportation\FicheMetierImportationFormAwareTrait;
use Application\Form\Raison\RaisonFormAwareTrait;
use Application\Form\SelectionFicheMetier\SelectionFicheMetierFormAwareTrait;
@@ -35,6 +33,7 @@ use Laminas\Http\Response;
use Laminas\Mvc\Controller\AbstractActionController;
use Laminas\Mvc\Plugin\FlashMessenger\FlashMessenger;
use Laminas\View\Model\ViewModel;
use Metier\Form\SelectionnerMetier\SelectionnerMetierFormAwareTrait;
use Metier\Service\Domaine\DomaineServiceAwareTrait;
use Metier\Service\Metier\MetierServiceAwareTrait;
use Mpdf\MpdfException;
@@ -66,7 +65,6 @@ class FicheMetierController extends AbstractActionController

    /** Traits associés aux formulaires */
    use ActiviteFormAwareTrait;
    use LibelleFormAwareTrait;
    use FicheMetierImportationFormAwareTrait;
    use RaisonFormAwareTrait;
    use SelectionApplicationFormAwareTrait;
@@ -74,6 +72,7 @@ class FicheMetierController extends AbstractActionController
    use SelectionEtatFormAwareTrait;
    use SelectionFicheMetierFormAwareTrait;
    use SelectionFormationFormAwareTrait;
    use SelectionnerMetierFormAwareTrait;


    const REFERENS_SEP = "|";
@@ -125,8 +124,7 @@ class FicheMetierController extends AbstractActionController
        $fiche = new FicheMetier();
        $fiche->setEtat($this->getEtatService()->getEtatByCode(FicheMetierEtats::ETAT_REDACTION));

        /** @var LibelleForm $form */
        $form = $this->getLibelleForm();
        $form = $this->getSelectionnerMetierForm();
        $form->setAttribute('action', $this->url()->fromRoute('fiche-metier-type/ajouter', [], [], true));
        $form->bind($fiche);

@@ -150,7 +148,7 @@ class FicheMetierController extends AbstractActionController
        $vm = new ViewModel();
        $vm->setTemplate('application/default/default-form');
        $vm->setVariables([
            'title' => 'Ajout d\'une fiche metier',
            'title' => "Ajout d'une fiche metier",
            'form' => $form,
        ]);
        return $vm;
@@ -281,8 +279,7 @@ class FicheMetierController extends AbstractActionController
    {
        $fiche = $this->getFicheMetierService()->getRequestedFicheMetier($this, 'id', true);

        /** @var LibelleForm $form */
        $form = $this->getLibelleForm();
        $form = $this->getSelectionnerMetierForm();
        $form->setAttribute('action', $this->url()->fromRoute('fiche-metier-type/editer-libelle', ['id' => $fiche->getId()], [], true));
        $form->bind($fiche);

+8 −8
Original line number Diff line number Diff line
@@ -3,22 +3,22 @@
namespace Application\Controller;

use Application\Form\Activite\ActiviteForm;
use Application\Form\FicheMetier\LibelleForm;
use Application\Form\FicheMetierImportation\FicheMetierImportationForm;
use Application\Form\Raison\RaisonForm;
use Application\Service\ActiviteDescription\ActiviteDescriptionService;
use Element\Form\SelectionApplication\SelectionApplicationForm;
use Element\Form\SelectionCompetence\SelectionCompetenceForm;
use Application\Form\SelectionFicheMetier\SelectionFicheMetierForm;
use Application\Service\Activite\ActiviteService;
use Application\Service\ActiviteDescription\ActiviteDescriptionService;
use Application\Service\Agent\AgentService;
use Application\Service\Configuration\ConfigurationService;
use Application\Service\FicheMetier\FicheMetierService;
use Application\Service\ParcoursDeFormation\ParcoursDeFormationService;
use Element\Form\SelectionApplication\SelectionApplicationForm;
use Element\Form\SelectionCompetence\SelectionCompetenceForm;
use Element\Service\HasApplicationCollection\HasApplicationCollectionService;
use Element\Service\HasCompetenceCollection\HasCompetenceCollectionService;
use Application\Service\ParcoursDeFormation\ParcoursDeFormationService;
use Formation\Form\SelectionFormation\SelectionFormationForm;
use Interop\Container\ContainerInterface;
use Metier\Form\SelectionnerMetier\SelectionnerMetierForm;
use Metier\Service\Domaine\DomaineService;
use Metier\Service\Metier\MetierService;
use Psr\Container\ContainerExceptionInterface;
@@ -69,7 +69,6 @@ class FicheMetierControllerFactory
        $parcoursService = $container->get(ParcoursDeFormationService::class);

        /**
         * @var LibelleForm $libelleForm
         * @var FicheMetierImportationForm $ficheMetierImportationForm
         * @var ActiviteForm $activiteForm
         * @var RaisonForm $raisonForm
@@ -78,8 +77,8 @@ class FicheMetierControllerFactory
         * @var SelectionFormationForm $selectionFormationForm
         * @var SelectionEtatForm $selectionEtatForm
         * @var SelectionFicheMetierForm $selectionFicheMetierForm
         * @var SelectionnerMetierForm $selectionnerMetierForm
         */
        $libelleForm = $container->get('FormElementManager')->get(LibelleForm::class);
        $activiteForm = $container->get('FormElementManager')->get(ActiviteForm::class);
        $raisonForm = $container->get('FormElementManager')->get(RaisonForm::class);
        $selectionApplicationForm = $container->get('FormElementManager')->get(SelectionApplicationForm::class);
@@ -88,6 +87,7 @@ class FicheMetierControllerFactory
        $selectionEtatForm = $container->get('FormElementManager')->get(SelectionEtatForm::class);
        $selectionFicheMetierForm = $container->get('FormElementManager')->get(SelectionFicheMetierForm::class);
        $ficheMetierImportationForm = $container->get('FormElementManager')->get(FicheMetierImportationForm::class);
        $selectionnerMetierForm = $container->get('FormElementManager')->get(SelectionnerMetierForm::class);

        /** @var FicheMetierController $controller */
        $controller = new FicheMetierController();
@@ -106,7 +106,6 @@ class FicheMetierControllerFactory
        $controller->setMetierService($metierService);
        $controller->setParcoursDeFormationService($parcoursService);

        $controller->setLibelleForm($libelleForm);
        $controller->setActiviteForm($activiteForm);
        $controller->setRaisonForm($raisonForm);
        $controller->setSelectionApplicationForm($selectionApplicationForm);
@@ -115,6 +114,7 @@ class FicheMetierControllerFactory
        $controller->setSelectionEtatForm($selectionEtatForm);
        $controller->setSelectionFicheMetierForm($selectionFicheMetierForm);
        $controller->setFicheMetierImportationForm($ficheMetierImportationForm);
        $controller->setSelectionnerMetierForm($selectionnerMetierForm);

        return $controller;
    }
+4 −22
Original line number Diff line number Diff line
@@ -4,13 +4,15 @@ namespace Application\Entity\Db;

use Application\Entity\Db\Interfaces\HasPeriodeInterface;
use Application\Entity\Db\Traits\HasPeriodeTrait;
use Metier\Entity\Db\Metier;
use Metier\Entity\HasMetierInterface;
use Metier\Entity\HasMetierTrait;
use Structure\Entity\Db\Structure;
use UnicaenEtat\Entity\Db\Etat;
use UnicaenUtilisateur\Entity\Db\HistoriqueAwareInterface;
use UnicaenUtilisateur\Entity\Db\HistoriqueAwareTrait;

class AgentStageObservation implements HistoriqueAwareInterface, HasPeriodeInterface {
class AgentStageObservation implements HistoriqueAwareInterface, HasMetierInterface, HasPeriodeInterface {
    use HasMetierTrait;
    use HasPeriodeTrait;
    use HistoriqueAwareTrait;

@@ -20,8 +22,6 @@ class AgentStageObservation implements HistoriqueAwareInterface, HasPeriodeInter
    private $agent;
    /** @var Structure|null */
    private $structure;
    /** @var Metier|null */
    private $metier;
    /** @var string|null */
    private $complement;
    /** @var Etat|null */
@@ -71,24 +71,6 @@ class AgentStageObservation implements HistoriqueAwareInterface, HasPeriodeInter
        return $this;
    }

    /**
     * @return Metier|null
     */
    public function getMetier(): ?Metier
    {
        return $this->metier;
    }

    /**
     * @param Metier|null $metier
     * @return AgentStageObservation
     */
    public function setMetier(?Metier $metier): AgentStageObservation
    {
        $this->metier = $metier;
        return $this;
    }

    /**
     * @return string|null
     */
+4 −21
Original line number Diff line number Diff line
@@ -5,11 +5,14 @@ namespace Application\Entity\Db;
use Application\Entity\Db\Interfaces\HasPeriodeInterface;
use Application\Entity\Db\Traits\HasPeriodeTrait;
use Metier\Entity\Db\Metier;
use Metier\Entity\HasMetierInterface;
use Metier\Entity\HasMetierTrait;
use UnicaenEtat\Entity\Db\Etat;
use UnicaenUtilisateur\Entity\Db\HistoriqueAwareInterface;
use UnicaenUtilisateur\Entity\Db\HistoriqueAwareTrait;

class AgentTutorat implements HistoriqueAwareInterface, HasPeriodeInterface {
class AgentTutorat implements HistoriqueAwareInterface, HasMetierInterface, HasPeriodeInterface {
    use HasMetierTrait;
    use HasPeriodeTrait;
    use HistoriqueAwareTrait;

@@ -19,8 +22,6 @@ class AgentTutorat implements HistoriqueAwareInterface, HasPeriodeInterface {
    private $agent;
    /** @var Agent|null  */
    private $cible;
    /** @var Metier|null */
    private $metier;
    /** @var string|null */
    private $complement;
    /** @var bool|null */
@@ -72,24 +73,6 @@ class AgentTutorat implements HistoriqueAwareInterface, HasPeriodeInterface {
        return $this;
    }

    /**
     * @return Metier|null
     */
    public function getMetier(): ?Metier
    {
        return $this->metier;
    }

    /**
     * @param Metier|null $metier
     * @return AgentTutorat
     */
    public function setMetier(?Metier $metier): AgentTutorat
    {
        $this->metier = $metier;
        return $this;
    }

    /**
     * @return string|null
     */
Loading