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

Déduction automatique des missions principales

parent ede59f3b
Loading
Loading
Loading
Loading
+0 −16
Changes for module/Application/config/merged/fiche-metier.config.php: 0 added lines, 16 removed lines.
Original line number Diff line number Diff line
@@ -23,8 +23,6 @@ use Application\Form\FicheMetier\LibelleForm;
use Application\Form\FicheMetier\LibelleFormFactory;
use Application\Form\FicheMetier\LibelleHydrator;
use Application\Form\FicheMetier\LibelleHydratorFactory;
use Application\Form\FicheMetier\MissionsPrincipalesForm;
use Application\Form\FicheMetier\MissionsPrincipalesFormFactory;
use Application\Provider\Privilege\FicheMetierPrivileges;
use Application\Service\FicheMetier\FicheMetierService;
use Application\Service\FicheMetier\FicheMetierServiceFactory;
@@ -58,7 +56,6 @@ return [
                        'export',

                        'editer-libelle',
                        'editer-missions-principales',
                        'retirer-activite',
                        'deplacer-activite',
                        'ajouter-nouvelle-activite',
@@ -179,17 +176,6 @@ return [
                        ],
                        'may_terminate' => true,
                    ],
                    'editer-missions-principales' => [
                        'type'  => Segment::class,
                        'options' => [
                            'route'    => '/editer-missions-principales/:id',
                            'defaults' => [
                                'controller' => FicheMetierController::class,
                                'action'     => 'editer-missions-principales',
                            ],
                        ],
                        'may_terminate' => true,
                    ],
                    'retirer-activite' => [
                        'type'  => Segment::class,
                        'options' => [
@@ -301,8 +287,6 @@ return [
        'factories' => [
            ActiviteExistanteForm::class => ActiviteExistanteFormFactory::class,
            LibelleForm::class => LibelleFormFactory::class,
            MissionsPrincipalesForm::class => MissionsPrincipalesFormFactory::class,


            FormationBaseForm::class => FormationBaseFormFactory::class,
            FormationOperationnelleForm::class => FormationOperationnelleFormFactory::class,
+3 −33
Changes for module/Application/src/Application/Controller/FicheMetier/FicheMetierController.php: 3 added lines, 33 removed lines.
Original line number Diff line number Diff line
@@ -4,6 +4,7 @@ namespace Application\Controller\FicheMetier;

use Application\Entity\Db\Activite;
use Application\Entity\Db\FicheMetier;
use Application\Form\Activite\ActiviteForm;
use Application\Form\Activite\ActiviteFormAwareTrait;
use Application\Form\FicheMetier\ActiviteExistanteForm;
use Application\Form\FicheMetier\ActiviteExistanteFormAwareTrait;
@@ -17,8 +18,6 @@ use Application\Form\FicheMetier\FormationOperationnelleForm;
use Application\Form\FicheMetier\FormationOperationnelleFormAwareTrait;
use Application\Form\FicheMetier\LibelleForm;
use Application\Form\FicheMetier\LibelleFormAwareTrait;
use Application\Form\FicheMetier\MissionsPrincipalesForm;
use Application\Form\FicheMetier\MissionsPrincipalesFormAwareTrait;
use Application\Service\Activite\ActiviteServiceAwareTrait;
use Application\Service\Export\FicheMetier\FicheMetierPdfExporter;
use Application\Service\FicheMetier\FicheMetierServiceAwareTrait;
@@ -42,7 +41,6 @@ class FicheMetierController extends AbstractActionController{
    use FormationComportementaleFormAwareTrait;
    use FormationOperationnelleFormAwareTrait;
    use LibelleFormAwareTrait;
    use MissionsPrincipalesFormAwareTrait;

    public function indexAction()
    {
@@ -133,7 +131,7 @@ class FicheMetierController extends AbstractActionController{
    {
        $fiche = $this->getFicheMetierService()->getRequestedFicheMetier($this, 'id', true);

        /** @var MissionsPrincipalesForm $form */
        /** @var LibelleForm $form */
        $form = $this->getLibelleForm();
        $form->setAttribute('action', $this->url()->fromRoute('fiche-metier-type/editer-libelle',['id' => $fiche->getId()],[], true));
        $form->bind($fiche);
@@ -157,40 +155,12 @@ class FicheMetierController extends AbstractActionController{
        return $vm;
    }

    public function editerMissionsPrincipalesAction()
    {
        $fiche = $this->getFicheMetierService()->getRequestedFicheMetier($this, 'id', true);

        /** @var MissionsPrincipalesForm $form */
        $form = $this->getMissionsPrincipalesForm();
        $form->setAttribute('action', $this->url()->fromRoute('fiche-metier-type/editer-missions-principales',['id' => $fiche->getId()],[], true));
        $form->bind($fiche);
        /** @var Request $request */
        $request = $this->getRequest();
        if ($request->isPost()) {
            $data = $request->getPost();
            $form->setData($data);

            if ($form->isValid()) {
                $this->getFicheMetierService()->update($fiche);
            }
        }

        $vm = new ViewModel();
        $vm->setTemplate('application/default/default-form');
        $vm->setVariables([
            'title' => 'Éditer missions principales',
            'form' => $form,
        ]);
        return $vm;
    }

    public function ajouterNouvelleActiviteAction()
    {
        $fiche = $this->getFicheMetierService()->getRequestedFicheMetier($this, 'id', true);

        $activite = new Activite();
        /** @var MissionsPrincipalesForm $form */
        /** @var ActiviteForm $form */
        $form = $this->getActiviteForm();
        $form->setAttribute('action', $this->url()->fromRoute('fiche-metier-type/ajouter-nouvelle-activite',['id' => $fiche->getId()],[], true));
        $form->bind($activite);
+0 −4
Changes for module/Application/src/Application/Controller/FicheMetier/FicheMetierControllerFactory.php: 0 added lines, 4 removed lines.
Original line number Diff line number Diff line
@@ -9,7 +9,6 @@ use Application\Form\FicheMetier\FormationBaseForm;
use Application\Form\FicheMetier\FormationComportementaleForm;
use Application\Form\FicheMetier\FormationOperationnelleForm;
use Application\Form\FicheMetier\LibelleForm;
use Application\Form\FicheMetier\MissionsPrincipalesForm;
use Application\Service\Activite\ActiviteService;
use Application\Service\FicheMetier\FicheMetierService;
use Application\Service\RessourceRh\RessourceRhService;
@@ -36,7 +35,6 @@ class FicheMetierControllerFactory {
         * @var FormationComportementaleForm $formationComportementalForm
         * @var FormationOperationnelleForm $formationOperationnelleForm
         * @var LibelleForm $libelleForm
         * @var MissionsPrincipalesForm $missionsPrincipalesForm
         */
        $activiteForm = $manager->getServiceLocator()->get('FormElementManager')->get(ActiviteForm::class);
        $activiteExistanteForm = $manager->getServiceLocator()->get('FormElementManager')->get(ActiviteExistanteForm::class);
@@ -45,7 +43,6 @@ class FicheMetierControllerFactory {
        $formationComportementalForm = $manager->getServiceLocator()->get('FormElementManager')->get(FormationComportementaleForm::class);
        $formationOperationnelleForm = $manager->getServiceLocator()->get('FormElementManager')->get(FormationOperationnelleForm::class);
        $libelleForm = $manager->getServiceLocator()->get('FormElementManager')->get(LibelleForm::class);
        $missionsPrincipalesForm = $manager->getServiceLocator()->get('FormElementManager')->get(MissionsPrincipalesForm::class);


        /** @var FicheMetierController $controller */
@@ -62,7 +59,6 @@ class FicheMetierControllerFactory {
        $controller->setFormationComportementaleForm($formationComportementalForm);
        $controller->setFormationOperationnelleForm($formationOperationnelleForm);
        $controller->setLibelleForm($libelleForm);
        $controller->setMissionsPrincipalesForm($missionsPrincipalesForm);


        return $controller;
+22 −16
Changes for module/Application/src/Application/Entity/Db/FicheMetier.php: 22 added lines, 16 removed lines.
Original line number Diff line number Diff line
@@ -12,8 +12,6 @@ class FicheMetier {
    private $id;
    /** @var Metier */
    private $metier;
    /** @var string */
    private $missionsPrincipales;

    /** @var string */
    private $connaissances;
@@ -62,7 +60,7 @@ class FicheMetier {

    /**
     * @param Metier $metier
     * @return FicheMetierType
     * @return FicheMetier
     */
    public function setMetier($metier)
    {
@@ -75,12 +73,20 @@ class FicheMetier {
     */
    public function getMissionsPrincipales()
    {
        return $this->missionsPrincipales;
        $texte = '<ul>';
        //return $this->missionsPrincipales;
        $activites = $this->getActivites();
        usort($activites, function (FicheMetierTypeActivite $a, FicheMetierTypeActivite $b) {return $a->getPosition() > $b->getPosition();});
        foreach ($activites as $activite) {
            $texte .= '<li>'.$activite->getActivite()->getLibelle().'</li>';
        }
        $texte .= '</ul>';
        return $texte;
    }

    /**
     * @param string $missionsPrincipales
     * @return FicheMetierType
     * @return FicheMetier
     */
    public function setMissionsPrincipales($missionsPrincipales)
    {
@@ -98,7 +104,7 @@ class FicheMetier {

    /**
     * @param string $connaissances
     * @return FicheMetierType
     * @return FicheMetier
     */
    public function setConnaissances($connaissances)
    {
@@ -116,7 +122,7 @@ class FicheMetier {

    /**
     * @param string $connaissancesFormation
     * @return FicheMetierType
     * @return FicheMetier
     */
    public function setConnaissancesFormation($connaissancesFormation)
    {
@@ -134,7 +140,7 @@ class FicheMetier {

    /**
     * @param string $competencesOperationnelles
     * @return FicheMetierType
     * @return FicheMetier
     */
    public function setCompetencesOperationnelles($competencesOperationnelles)
    {
@@ -152,7 +158,7 @@ class FicheMetier {

    /**
     * @param string $competencesOperationnellesFormation
     * @return FicheMetierType
     * @return FicheMetier
     */
    public function setCompetencesOperationnellesFormation($competencesOperationnellesFormation)
    {
@@ -170,7 +176,7 @@ class FicheMetier {

    /**
     * @param string $competencesComportementales
     * @return FicheMetierType
     * @return FicheMetier
     */
    public function setCompetencesComportementales($competencesComportementales)
    {
@@ -188,7 +194,7 @@ class FicheMetier {

    /**
     * @param string $competencesComportementalesFormation
     * @return FicheMetierType
     * @return FicheMetier
     */
    public function setCompetencesComportementalesFormation($competencesComportementalesFormation)
    {
@@ -206,7 +212,7 @@ class FicheMetier {

    /**
     * @param Application $application
     * @return FicheMetierType
     * @return FicheMetier
     */
    public function addApplication($application)
    {
@@ -216,7 +222,7 @@ class FicheMetier {

    /**
     * @param Application $application
     * @return FicheMetierType
     * @return FicheMetier
     */
    public function removeApplication($application)
    {
@@ -234,7 +240,7 @@ class FicheMetier {

    /**
     * @param string $formation
     * @return FicheMetierType
     * @return FicheMetier
     */
    public function setApplicationsFormation($formation)
    {
@@ -252,7 +258,7 @@ class FicheMetier {

    /**
     * @param FicheMetierTypeActivite $activite
     * @return FicheMetierType
     * @return FicheMetier
     */
    public function addActivite($activite)
    {
@@ -262,7 +268,7 @@ class FicheMetier {

    /**
     * @param FicheMetierTypeActivite $activite
     * @return FicheMetierType
     * @return FicheMetier
     */
    public function removeActivite($activite)
    {
+0 −1
Changes for module/Application/src/Application/Entity/Db/Mapping/Application.Entity.Db.FicheMetier.dcm.xml: 0 added lines, 1 removed line.
Original line number Diff line number Diff line
@@ -10,7 +10,6 @@
        <many-to-one target-entity="Application\Entity\Db\Metier" field="metier">
            <join-column name="metier" referenced-column-name="id" />
        </many-to-one>
        <field name="missionsPrincipales"   type="string" length="4096"     column="missions_principales"               nullable="false"/>

        <field name="connaissances"             type="string" length="1024"     column="connaissances"                         nullable="true"/>
        <field name="connaissancesFormation"    type="string" length="1024"     column="connaissances_formation"               nullable="true"/>
Loading