Loading module/Application/config/merged/ressource-rh.config.php +47 −0 Original line number Diff line number Diff line Loading @@ -8,6 +8,9 @@ use Application\Controller\RessourceRh\RessourceRhControllerFactory; use Application\Form\RessourceRh\DomaineForm; use Application\Form\RessourceRh\DomaineFormFactory; use Application\Form\RessourceRh\DomaineHydrator; use Application\Form\RessourceRh\FonctionForm; use Application\Form\RessourceRh\FonctionFormFactory; use Application\Form\RessourceRh\FonctionHydrator; use Application\Form\RessourceRh\MetierFamilleForm; use Application\Form\RessourceRh\MetierFamilleFormFactory; use Application\Form\RessourceRh\MetierFamilleHydrator; Loading Loading @@ -53,6 +56,7 @@ return [ 'creer-metier', 'creer-famille', 'ajouter-domaine', 'ajouter-fonction', ], 'privileges' => [ RessourceRhPrivileges::AJOUTER, Loading @@ -67,6 +71,7 @@ return [ 'modifier-metier', 'modifier-famille', 'modifier-domaine', 'modifier-fonction', ], 'privileges' => [ RessourceRhPrivileges::MODIFIER, Loading @@ -81,6 +86,7 @@ return [ 'effacer-agent-status', 'effacer-famille', 'supprimer-domaine', 'supprimer-fonction', ], 'privileges' => [ RessourceRhPrivileges::EFFACER, Loading Loading @@ -341,6 +347,45 @@ return [ ], ], ], 'fonction' => [ 'type' => Literal::class, 'options' => [ 'route' => '/fonction', ], 'may_terminate' => false, 'child_routes' => [ 'ajouter' => [ 'type' => Literal::class, 'options' => [ 'route' => '/ajouter', 'defaults' => [ 'controller' => RessourceRhController::class, 'action' => 'ajouter-fonction', ], ], ], 'modifier' => [ 'type' => Segment::class, 'options' => [ 'route' => '/modifier/:fonction', 'defaults' => [ 'controller' => RessourceRhController::class, 'action' => 'modifier-fonction', ], ], ], 'supprimer' => [ 'type' => Segment::class, 'options' => [ 'route' => '/supprimer/:fonction', 'defaults' => [ 'controller' => RessourceRhController::class, 'action' => 'supprimer-fonction', ], ], ], ], ], ], ], ], Loading @@ -366,6 +411,7 @@ return [ MetierForm::class => MetierFormFactory::class, MetierFamilleForm::class => MetierFamilleFormFactory::class, DomaineForm::class => DomaineFormFactory::class, FonctionForm::class => FonctionFormFactory::class, ], ], 'hydrators' => [ Loading @@ -375,6 +421,7 @@ return [ CorrespondanceHydrator::class => CorrespondanceHydrator::class, MetierFamilleHydrator::class => MetierFamilleHydrator::class, DomaineHydrator::class => DomaineHydrator::class, FonctionHydrator::class => FonctionHydrator::class, ], 'factories' => [ MetierHydrator::class => MetierHydratorFactory::class, Loading module/Application/src/Application/Controller/RessourceRh/RessourceRhController.php +78 −0 Original line number Diff line number Diff line Loading @@ -6,9 +6,11 @@ use Application\Entity\Db\AgentStatus; use Application\Entity\Db\Corps; use Application\Entity\Db\Correspondance; use Application\Entity\Db\Domaine; use Application\Entity\Db\Fonction; use Application\Entity\Db\Metier; use Application\Entity\Db\MetierFamille; use Application\Form\RessourceRh\DomaineForm; use Application\Form\RessourceRh\FonctionForm; use Application\Form\RessourceRh\MetierFamilleForm; use Application\Form\RessourceRh\MetierForm; use Application\Form\RessourceRh\AgentStatusForm; Loading @@ -30,6 +32,7 @@ class RessourceRhController extends AbstractActionController { $corps = $this->getRessourceRhService()->getCorpsListe('libelle'); $familles = $this->getRessourceRhService()->getMetiersFamilles('libelle'); $domaines = $this->getRessourceRhService()->getDomaines('libelle'); $fonctions = $this->getRessourceRhService()->getFonctions('libelle'); return new ViewModel([ 'status' => $status, Loading @@ -38,6 +41,7 @@ class RessourceRhController extends AbstractActionController { 'familles' => $familles, 'corps' => $corps, 'domaines' => $domaines, 'fonctions' => $fonctions, ]); } Loading Loading @@ -470,4 +474,78 @@ class RessourceRhController extends AbstractActionController { $this->redirect()->toRoute('ressource-rh', [], [], true); } /** FONCTION ******************************************************************************************************/ public function ajouterFonctionAction() { /** @var Fonction $fonction */ $fonction = new Fonction(); /** @var FonctionForm $form */ $form = $this->getServiceLocator()->get('FormElementManager')->get(FonctionForm::class); $form->setAttribute('action', $this->url()->fromRoute('ressource-rh/fonction/ajouter', [], [], true)); $form->bind($fonction); /** @var Request $request */ $request = $this->getRequest(); if ($request->isPost()) { $data = $request->getPost(); $form->setData($data); if ($form->isValid()) { $this->getRessourceRhService()->createFonction($fonction); } } $vm = new ViewModel(); $vm->setTemplate('application/default/default-form'); $vm->setVariables([ 'title' => 'Ajouter une fonction', 'form' => $form, ]); return $vm; } public function modifierFonctionAction() { /** @var Domaine $domaine */ $fonctionId = $this->params()->fromRoute('fonction'); $fonction = $this->getRessourceRhService()->getFonction($fonctionId); /** @var FonctionForm $form */ $form = $this->getServiceLocator()->get('FormElementManager')->get(FonctionForm::class); $form->setAttribute('action', $this->url()->fromRoute('ressource-rh/fonction/modifier', ['fonction' => $fonction->getId()], [], true)); $form->bind($fonction); /** @var Request $request */ $request = $this->getRequest(); if ($request->isPost()) { $data = $request->getPost(); $form->setData($data); if ($form->isValid()) { $this->getRessourceRhService()->updateFonction($fonction); } } $vm = new ViewModel(); $vm->setTemplate('application/default/default-form'); $vm->setVariables([ 'title' => 'Modifier une fonction', 'form' => $form, ]); return $vm; } public function supprimerFonctionAction() { /** @var Domaine $domaine */ $fonctionId = $this->params()->fromRoute('fonction'); $fonction = $this->getRessourceRhService()->getFonction($fonctionId); if ($domaine !== null) { $this->getRessourceRhService()->deleteFonction($fonction); } $this->redirect()->toRoute('ressource-rh', [], [], true); } } No newline at end of file module/Application/src/Application/Entity/Db/Fonction.php 0 → 100644 +39 −0 Original line number Diff line number Diff line <?php namespace Application\Entity\Db; class Fonction { /** @var integer */ private $id; /** @var string */ private $libelle; /** * @return int */ public function getId() { return $this->id; } /** * @return string */ public function getLibelle() { return $this->libelle; } /** * @param string $libelle * @return Fonction */ public function setLibelle($libelle) { $this->libelle = $libelle; return $this; } }; No newline at end of file module/Application/src/Application/Entity/Db/Mapping/Application.Entity.Db.Fonction.dcm.xml 0 → 100644 +12 −0 Original line number Diff line number Diff line <?xml version="1.0" encoding="utf-8"?> <doctrine-mapping xmlns="http://doctrine-project.org/schemas/orm/doctrine-mapping" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://doctrine-project.org/schemas/orm/doctrine-mapping http://doctrine-project.org/schemas/orm/doctrine-mapping.xsd"> <entity name="Application\Entity\Db\Fonction" table="fonction"> <id name="id" type="integer" column="id"> <generator strategy="IDENTITY"/> </id> <field name="libelle" type="string" length="255" column="libelle" nullable="false"/> </entity> </doctrine-mapping> module/Application/src/Application/Entity/Db/Mapping/Application.Entity.Db.Poste.dcm.xml +3 −0 Original line number Diff line number Diff line Loading @@ -22,6 +22,9 @@ <many-to-one target-entity="Application\Entity\Db\Domaine" field="domaine"> <join-column name="domaine" referenced-column-name="id" /> </many-to-one> <many-to-one target-entity="Application\Entity\Db\Fonction" field="fonction"> <join-column name="fonction" referenced-column-name="id" /> </many-to-one> </entity> </doctrine-mapping> Loading
module/Application/config/merged/ressource-rh.config.php +47 −0 Original line number Diff line number Diff line Loading @@ -8,6 +8,9 @@ use Application\Controller\RessourceRh\RessourceRhControllerFactory; use Application\Form\RessourceRh\DomaineForm; use Application\Form\RessourceRh\DomaineFormFactory; use Application\Form\RessourceRh\DomaineHydrator; use Application\Form\RessourceRh\FonctionForm; use Application\Form\RessourceRh\FonctionFormFactory; use Application\Form\RessourceRh\FonctionHydrator; use Application\Form\RessourceRh\MetierFamilleForm; use Application\Form\RessourceRh\MetierFamilleFormFactory; use Application\Form\RessourceRh\MetierFamilleHydrator; Loading Loading @@ -53,6 +56,7 @@ return [ 'creer-metier', 'creer-famille', 'ajouter-domaine', 'ajouter-fonction', ], 'privileges' => [ RessourceRhPrivileges::AJOUTER, Loading @@ -67,6 +71,7 @@ return [ 'modifier-metier', 'modifier-famille', 'modifier-domaine', 'modifier-fonction', ], 'privileges' => [ RessourceRhPrivileges::MODIFIER, Loading @@ -81,6 +86,7 @@ return [ 'effacer-agent-status', 'effacer-famille', 'supprimer-domaine', 'supprimer-fonction', ], 'privileges' => [ RessourceRhPrivileges::EFFACER, Loading Loading @@ -341,6 +347,45 @@ return [ ], ], ], 'fonction' => [ 'type' => Literal::class, 'options' => [ 'route' => '/fonction', ], 'may_terminate' => false, 'child_routes' => [ 'ajouter' => [ 'type' => Literal::class, 'options' => [ 'route' => '/ajouter', 'defaults' => [ 'controller' => RessourceRhController::class, 'action' => 'ajouter-fonction', ], ], ], 'modifier' => [ 'type' => Segment::class, 'options' => [ 'route' => '/modifier/:fonction', 'defaults' => [ 'controller' => RessourceRhController::class, 'action' => 'modifier-fonction', ], ], ], 'supprimer' => [ 'type' => Segment::class, 'options' => [ 'route' => '/supprimer/:fonction', 'defaults' => [ 'controller' => RessourceRhController::class, 'action' => 'supprimer-fonction', ], ], ], ], ], ], ], ], Loading @@ -366,6 +411,7 @@ return [ MetierForm::class => MetierFormFactory::class, MetierFamilleForm::class => MetierFamilleFormFactory::class, DomaineForm::class => DomaineFormFactory::class, FonctionForm::class => FonctionFormFactory::class, ], ], 'hydrators' => [ Loading @@ -375,6 +421,7 @@ return [ CorrespondanceHydrator::class => CorrespondanceHydrator::class, MetierFamilleHydrator::class => MetierFamilleHydrator::class, DomaineHydrator::class => DomaineHydrator::class, FonctionHydrator::class => FonctionHydrator::class, ], 'factories' => [ MetierHydrator::class => MetierHydratorFactory::class, Loading
module/Application/src/Application/Controller/RessourceRh/RessourceRhController.php +78 −0 Original line number Diff line number Diff line Loading @@ -6,9 +6,11 @@ use Application\Entity\Db\AgentStatus; use Application\Entity\Db\Corps; use Application\Entity\Db\Correspondance; use Application\Entity\Db\Domaine; use Application\Entity\Db\Fonction; use Application\Entity\Db\Metier; use Application\Entity\Db\MetierFamille; use Application\Form\RessourceRh\DomaineForm; use Application\Form\RessourceRh\FonctionForm; use Application\Form\RessourceRh\MetierFamilleForm; use Application\Form\RessourceRh\MetierForm; use Application\Form\RessourceRh\AgentStatusForm; Loading @@ -30,6 +32,7 @@ class RessourceRhController extends AbstractActionController { $corps = $this->getRessourceRhService()->getCorpsListe('libelle'); $familles = $this->getRessourceRhService()->getMetiersFamilles('libelle'); $domaines = $this->getRessourceRhService()->getDomaines('libelle'); $fonctions = $this->getRessourceRhService()->getFonctions('libelle'); return new ViewModel([ 'status' => $status, Loading @@ -38,6 +41,7 @@ class RessourceRhController extends AbstractActionController { 'familles' => $familles, 'corps' => $corps, 'domaines' => $domaines, 'fonctions' => $fonctions, ]); } Loading Loading @@ -470,4 +474,78 @@ class RessourceRhController extends AbstractActionController { $this->redirect()->toRoute('ressource-rh', [], [], true); } /** FONCTION ******************************************************************************************************/ public function ajouterFonctionAction() { /** @var Fonction $fonction */ $fonction = new Fonction(); /** @var FonctionForm $form */ $form = $this->getServiceLocator()->get('FormElementManager')->get(FonctionForm::class); $form->setAttribute('action', $this->url()->fromRoute('ressource-rh/fonction/ajouter', [], [], true)); $form->bind($fonction); /** @var Request $request */ $request = $this->getRequest(); if ($request->isPost()) { $data = $request->getPost(); $form->setData($data); if ($form->isValid()) { $this->getRessourceRhService()->createFonction($fonction); } } $vm = new ViewModel(); $vm->setTemplate('application/default/default-form'); $vm->setVariables([ 'title' => 'Ajouter une fonction', 'form' => $form, ]); return $vm; } public function modifierFonctionAction() { /** @var Domaine $domaine */ $fonctionId = $this->params()->fromRoute('fonction'); $fonction = $this->getRessourceRhService()->getFonction($fonctionId); /** @var FonctionForm $form */ $form = $this->getServiceLocator()->get('FormElementManager')->get(FonctionForm::class); $form->setAttribute('action', $this->url()->fromRoute('ressource-rh/fonction/modifier', ['fonction' => $fonction->getId()], [], true)); $form->bind($fonction); /** @var Request $request */ $request = $this->getRequest(); if ($request->isPost()) { $data = $request->getPost(); $form->setData($data); if ($form->isValid()) { $this->getRessourceRhService()->updateFonction($fonction); } } $vm = new ViewModel(); $vm->setTemplate('application/default/default-form'); $vm->setVariables([ 'title' => 'Modifier une fonction', 'form' => $form, ]); return $vm; } public function supprimerFonctionAction() { /** @var Domaine $domaine */ $fonctionId = $this->params()->fromRoute('fonction'); $fonction = $this->getRessourceRhService()->getFonction($fonctionId); if ($domaine !== null) { $this->getRessourceRhService()->deleteFonction($fonction); } $this->redirect()->toRoute('ressource-rh', [], [], true); } } No newline at end of file
module/Application/src/Application/Entity/Db/Fonction.php 0 → 100644 +39 −0 Original line number Diff line number Diff line <?php namespace Application\Entity\Db; class Fonction { /** @var integer */ private $id; /** @var string */ private $libelle; /** * @return int */ public function getId() { return $this->id; } /** * @return string */ public function getLibelle() { return $this->libelle; } /** * @param string $libelle * @return Fonction */ public function setLibelle($libelle) { $this->libelle = $libelle; return $this; } }; No newline at end of file
module/Application/src/Application/Entity/Db/Mapping/Application.Entity.Db.Fonction.dcm.xml 0 → 100644 +12 −0 Original line number Diff line number Diff line <?xml version="1.0" encoding="utf-8"?> <doctrine-mapping xmlns="http://doctrine-project.org/schemas/orm/doctrine-mapping" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://doctrine-project.org/schemas/orm/doctrine-mapping http://doctrine-project.org/schemas/orm/doctrine-mapping.xsd"> <entity name="Application\Entity\Db\Fonction" table="fonction"> <id name="id" type="integer" column="id"> <generator strategy="IDENTITY"/> </id> <field name="libelle" type="string" length="255" column="libelle" nullable="false"/> </entity> </doctrine-mapping>
module/Application/src/Application/Entity/Db/Mapping/Application.Entity.Db.Poste.dcm.xml +3 −0 Original line number Diff line number Diff line Loading @@ -22,6 +22,9 @@ <many-to-one target-entity="Application\Entity\Db\Domaine" field="domaine"> <join-column name="domaine" referenced-column-name="id" /> </many-to-one> <many-to-one target-entity="Application\Entity\Db\Fonction" field="fonction"> <join-column name="fonction" referenced-column-name="id" /> </many-to-one> </entity> </doctrine-mapping>