Loading module/Application/config/merged/agent.config.php +20 −0 Original line number Diff line number Diff line Loading @@ -6,6 +6,7 @@ use Application\Controller\Agent\AgentController; use Application\Controller\Agent\AgentControllerFactory; use Application\Controller\AgentFichier\AgentFichierController; use Application\Controller\AgentFichier\AgentFichierControllerFactory; use Application\Controller\EntretienProfessionnel\EntretienProfessionnelController; use Application\Form\Agent\AgentForm; use Application\Form\Agent\AgentFormFactory; use Application\Form\Agent\AgentHydrator; Loading Loading @@ -73,6 +74,15 @@ return [ AgentPrivileges::AFFICHER, ], ], [ 'controller' => EntretienProfessionnelController::class, 'action' => [ 'index-agent', ], 'privileges' => [ AgentPrivileges::AFFICHER, ], ], ], ], ], Loading Loading @@ -100,6 +110,16 @@ return [ ], ], ], 'entretien-professionnel' => [ 'type' => Segment::class, 'options' => [ 'route' => '/entretien-professionnel[/:agent]', 'defaults' => [ 'controller' => EntretienProfessionnelController::class, 'action' => 'index-agent', ], ], ], 'upload-fichier' => [ 'type' => Segment::class, 'options' => [ Loading module/Application/config/merged/entretien-professionnel.config.php +12 −0 Original line number Diff line number Diff line Loading @@ -28,6 +28,7 @@ return [ 'historiser', 'restaurer', 'detruire', 'afficher', ], 'privileges' => [ ApplicationPrivileges::AFFICHER, Loading Loading @@ -61,6 +62,17 @@ return [ ], ], ], 'afficher' => [ 'type' => Segment::class, 'may_terminate' => true, 'options' => [ 'route' => '/afficher/:entretien', 'defaults' => [ 'controller' => EntretienProfessionnelController::class, 'action' => 'afficher', ], ], ], 'modifier' => [ 'type' => Segment::class, 'may_terminate' => true, Loading module/Application/config/merged/menu.config.php +21 −21 Original line number Diff line number Diff line Loading @@ -27,22 +27,22 @@ return [ 'Personnel' ], 'pages' => [ // 'index-personnel' => [ // 'visible' => true, // 'order' => 100, // 'label' => 'Mon accueil', // 'icon' => 'fas fa-angle-right', // 'route' => 'index-personnel', // 'roles' => [ // 'Personnel', // ], // ], 'index-personnel' => [ 'visible' => true, 'order' => 100, 'label' => 'Mon accueil', 'icon' => 'fas fa-angle-right', 'route' => 'index-personnel', 'roles' => [ 'Personnel', ], ], 'entretien' => [ 'visible' => true, 'order' => 200, 'label' => 'Mes entretiens Pro.', 'icon' => 'fas fa-angle-right', 'route' => 'entretien-professionnel', 'route' => 'agent/entretien-professionnel', 'roles' => [ 'Personnel', ], Loading @@ -57,16 +57,16 @@ return [ 'Personnel', ], ], 'rgpd' => [ 'visible' => true, 'order' => 400, 'label' => 'Mes données', 'icon' => 'fas fa-angle-right', 'route' => 'index-personnel', 'roles' => [ 'Personnel', ], ], // 'rgpd' => [ // 'visible' => true, // 'order' => 400, // 'label' => 'Mes données', // 'icon' => 'fas fa-angle-right', // 'route' => 'index-personnel', // 'roles' => [ // 'Personnel', // ], // ], ], ], Loading module/Application/src/Application/Controller/EntretienProfessionnel/EntretienProfessionnelController.php +39 −0 Original line number Diff line number Diff line Loading @@ -4,15 +4,21 @@ namespace Application\Controller\EntretienProfessionnel; use Application\Entity\Db\EntretienProfessionnel; use Application\Form\EntretienProfessionnel\EntretienProfessionnelFormAwareTrait; use Application\Service\Agent\AgentServiceAwareTrait; use Application\Service\EntretienProfessionnel\EntretienProfessionnelServiceAwareTrait; use Autoform\Entity\Db\FormulaireInstance; use Autoform\Service\Formulaire\FormulaireInstanceServiceAwareTrait; use Autoform\Service\Formulaire\FormulaireServiceAwareTrait; use UnicaenApp\Exception\RuntimeException; use Utilisateur\Service\User\UserServiceAwareTrait; use Zend\Http\Request; use Zend\Mvc\Controller\AbstractActionController; use Zend\View\Model\ViewModel; class EntretienProfessionnelController extends AbstractActionController { use AgentServiceAwareTrait; use UserServiceAwareTrait; use EntretienProfessionnelFormAwareTrait; use EntretienProfessionnelServiceAwareTrait; use FormulaireServiceAwareTrait; Loading @@ -27,6 +33,29 @@ class EntretienProfessionnelController extends AbstractActionController { ]); } public function indexAgentAction() { $agent = $this->getAgentService()->getRequestedAgent($this,'agent'); if ($agent === null) { $user = $this->getUserService()->getConnectedUser(); $agent = $this->getAgentService()->getAgentByUser($user); if ($agent !== null) { $this->redirect()->toRoute('agent/entretien-professionnel', ['agent' => $agent->getId()], [], true); } else { throw new RuntimeException("L'utilisateur connecté n'est pas associté à un agent !"); } } $entretiens = $this->getEntretienProfessionnelService()->getEntretiensProfessionnelsParAgent($agent); return new ViewModel([ 'agent' => $agent, 'entretiens' => $entretiens, ]); } public function creerAction() { $entretien = new EntretienProfessionnel(); Loading Loading @@ -60,6 +89,16 @@ class EntretienProfessionnelController extends AbstractActionController { return $vm; } public function afficherAction() { $entretien = $this->getEntretienProfessionnelService()->getRequestedEntretienProfessionnel($this, 'entretien'); return new ViewModel([ 'title' => 'Entretien professionnel '.$entretien->getAnnee().' de '.$entretien->getAgent()->getDenomination(), 'entretien' => $entretien, ]); } public function modifierAction() { $entretien = $this->getEntretienProfessionnelService()->getRequestedEntretienProfessionnel($this, 'entretien'); Loading module/Application/src/Application/Controller/EntretienProfessionnel/EntretienProfessionnelControllerFactory.php +8 −0 Original line number Diff line number Diff line Loading @@ -3,9 +3,11 @@ namespace Application\Controller\EntretienProfessionnel; use Application\Form\EntretienProfessionnel\EntretienProfessionnelForm; use Application\Service\Agent\AgentService; use Application\Service\EntretienProfessionnel\EntretienProfessionnelService; use Autoform\Service\Formulaire\FormulaireInstanceService; use Autoform\Service\Formulaire\FormulaireService; use Utilisateur\Service\User\UserService; use Zend\Mvc\Controller\ControllerManager; class EntretienProfessionnelControllerFactory { Loading @@ -13,10 +15,14 @@ class EntretienProfessionnelControllerFactory { public function __invoke(ControllerManager $manager) { /** * @var AgentService $agentService * @var UserService $userService * @var EntretienProfessionnelService $entretienProfesionnelService * @var FormulaireService $formulaireService * @var FormulaireInstanceService $formulaireInstanceService */ $agentService = $manager->getServiceLocator()->get(AgentService::class); $userService = $manager->getServiceLocator()->get(UserService::class); $entretienProfesionnelService = $manager->getServiceLocator()->get(EntretienProfessionnelService::class); $formulaireService = $manager->getServiceLocator()->get(FormulaireService::class); $formulaireInstanceService = $manager->getServiceLocator()->get(FormulaireInstanceService::class); Loading @@ -26,6 +32,8 @@ class EntretienProfessionnelControllerFactory { /** @var EntretienProfessionnelController $controller */ $controller = new EntretienProfessionnelController(); $controller->setAgentService($agentService); $controller->setUserService($userService); $controller->setEntretienProfessionnelService($entretienProfesionnelService); $controller->setFormulaireInstanceService($formulaireInstanceService); $controller->setFormulaireService($formulaireService); Loading Loading
module/Application/config/merged/agent.config.php +20 −0 Original line number Diff line number Diff line Loading @@ -6,6 +6,7 @@ use Application\Controller\Agent\AgentController; use Application\Controller\Agent\AgentControllerFactory; use Application\Controller\AgentFichier\AgentFichierController; use Application\Controller\AgentFichier\AgentFichierControllerFactory; use Application\Controller\EntretienProfessionnel\EntretienProfessionnelController; use Application\Form\Agent\AgentForm; use Application\Form\Agent\AgentFormFactory; use Application\Form\Agent\AgentHydrator; Loading Loading @@ -73,6 +74,15 @@ return [ AgentPrivileges::AFFICHER, ], ], [ 'controller' => EntretienProfessionnelController::class, 'action' => [ 'index-agent', ], 'privileges' => [ AgentPrivileges::AFFICHER, ], ], ], ], ], Loading Loading @@ -100,6 +110,16 @@ return [ ], ], ], 'entretien-professionnel' => [ 'type' => Segment::class, 'options' => [ 'route' => '/entretien-professionnel[/:agent]', 'defaults' => [ 'controller' => EntretienProfessionnelController::class, 'action' => 'index-agent', ], ], ], 'upload-fichier' => [ 'type' => Segment::class, 'options' => [ Loading
module/Application/config/merged/entretien-professionnel.config.php +12 −0 Original line number Diff line number Diff line Loading @@ -28,6 +28,7 @@ return [ 'historiser', 'restaurer', 'detruire', 'afficher', ], 'privileges' => [ ApplicationPrivileges::AFFICHER, Loading Loading @@ -61,6 +62,17 @@ return [ ], ], ], 'afficher' => [ 'type' => Segment::class, 'may_terminate' => true, 'options' => [ 'route' => '/afficher/:entretien', 'defaults' => [ 'controller' => EntretienProfessionnelController::class, 'action' => 'afficher', ], ], ], 'modifier' => [ 'type' => Segment::class, 'may_terminate' => true, Loading
module/Application/config/merged/menu.config.php +21 −21 Original line number Diff line number Diff line Loading @@ -27,22 +27,22 @@ return [ 'Personnel' ], 'pages' => [ // 'index-personnel' => [ // 'visible' => true, // 'order' => 100, // 'label' => 'Mon accueil', // 'icon' => 'fas fa-angle-right', // 'route' => 'index-personnel', // 'roles' => [ // 'Personnel', // ], // ], 'index-personnel' => [ 'visible' => true, 'order' => 100, 'label' => 'Mon accueil', 'icon' => 'fas fa-angle-right', 'route' => 'index-personnel', 'roles' => [ 'Personnel', ], ], 'entretien' => [ 'visible' => true, 'order' => 200, 'label' => 'Mes entretiens Pro.', 'icon' => 'fas fa-angle-right', 'route' => 'entretien-professionnel', 'route' => 'agent/entretien-professionnel', 'roles' => [ 'Personnel', ], Loading @@ -57,16 +57,16 @@ return [ 'Personnel', ], ], 'rgpd' => [ 'visible' => true, 'order' => 400, 'label' => 'Mes données', 'icon' => 'fas fa-angle-right', 'route' => 'index-personnel', 'roles' => [ 'Personnel', ], ], // 'rgpd' => [ // 'visible' => true, // 'order' => 400, // 'label' => 'Mes données', // 'icon' => 'fas fa-angle-right', // 'route' => 'index-personnel', // 'roles' => [ // 'Personnel', // ], // ], ], ], Loading
module/Application/src/Application/Controller/EntretienProfessionnel/EntretienProfessionnelController.php +39 −0 Original line number Diff line number Diff line Loading @@ -4,15 +4,21 @@ namespace Application\Controller\EntretienProfessionnel; use Application\Entity\Db\EntretienProfessionnel; use Application\Form\EntretienProfessionnel\EntretienProfessionnelFormAwareTrait; use Application\Service\Agent\AgentServiceAwareTrait; use Application\Service\EntretienProfessionnel\EntretienProfessionnelServiceAwareTrait; use Autoform\Entity\Db\FormulaireInstance; use Autoform\Service\Formulaire\FormulaireInstanceServiceAwareTrait; use Autoform\Service\Formulaire\FormulaireServiceAwareTrait; use UnicaenApp\Exception\RuntimeException; use Utilisateur\Service\User\UserServiceAwareTrait; use Zend\Http\Request; use Zend\Mvc\Controller\AbstractActionController; use Zend\View\Model\ViewModel; class EntretienProfessionnelController extends AbstractActionController { use AgentServiceAwareTrait; use UserServiceAwareTrait; use EntretienProfessionnelFormAwareTrait; use EntretienProfessionnelServiceAwareTrait; use FormulaireServiceAwareTrait; Loading @@ -27,6 +33,29 @@ class EntretienProfessionnelController extends AbstractActionController { ]); } public function indexAgentAction() { $agent = $this->getAgentService()->getRequestedAgent($this,'agent'); if ($agent === null) { $user = $this->getUserService()->getConnectedUser(); $agent = $this->getAgentService()->getAgentByUser($user); if ($agent !== null) { $this->redirect()->toRoute('agent/entretien-professionnel', ['agent' => $agent->getId()], [], true); } else { throw new RuntimeException("L'utilisateur connecté n'est pas associté à un agent !"); } } $entretiens = $this->getEntretienProfessionnelService()->getEntretiensProfessionnelsParAgent($agent); return new ViewModel([ 'agent' => $agent, 'entretiens' => $entretiens, ]); } public function creerAction() { $entretien = new EntretienProfessionnel(); Loading Loading @@ -60,6 +89,16 @@ class EntretienProfessionnelController extends AbstractActionController { return $vm; } public function afficherAction() { $entretien = $this->getEntretienProfessionnelService()->getRequestedEntretienProfessionnel($this, 'entretien'); return new ViewModel([ 'title' => 'Entretien professionnel '.$entretien->getAnnee().' de '.$entretien->getAgent()->getDenomination(), 'entretien' => $entretien, ]); } public function modifierAction() { $entretien = $this->getEntretienProfessionnelService()->getRequestedEntretienProfessionnel($this, 'entretien'); Loading
module/Application/src/Application/Controller/EntretienProfessionnel/EntretienProfessionnelControllerFactory.php +8 −0 Original line number Diff line number Diff line Loading @@ -3,9 +3,11 @@ namespace Application\Controller\EntretienProfessionnel; use Application\Form\EntretienProfessionnel\EntretienProfessionnelForm; use Application\Service\Agent\AgentService; use Application\Service\EntretienProfessionnel\EntretienProfessionnelService; use Autoform\Service\Formulaire\FormulaireInstanceService; use Autoform\Service\Formulaire\FormulaireService; use Utilisateur\Service\User\UserService; use Zend\Mvc\Controller\ControllerManager; class EntretienProfessionnelControllerFactory { Loading @@ -13,10 +15,14 @@ class EntretienProfessionnelControllerFactory { public function __invoke(ControllerManager $manager) { /** * @var AgentService $agentService * @var UserService $userService * @var EntretienProfessionnelService $entretienProfesionnelService * @var FormulaireService $formulaireService * @var FormulaireInstanceService $formulaireInstanceService */ $agentService = $manager->getServiceLocator()->get(AgentService::class); $userService = $manager->getServiceLocator()->get(UserService::class); $entretienProfesionnelService = $manager->getServiceLocator()->get(EntretienProfessionnelService::class); $formulaireService = $manager->getServiceLocator()->get(FormulaireService::class); $formulaireInstanceService = $manager->getServiceLocator()->get(FormulaireInstanceService::class); Loading @@ -26,6 +32,8 @@ class EntretienProfessionnelControllerFactory { /** @var EntretienProfessionnelController $controller */ $controller = new EntretienProfessionnelController(); $controller->setAgentService($agentService); $controller->setUserService($userService); $controller->setEntretienProfessionnelService($entretienProfesionnelService); $controller->setFormulaireInstanceService($formulaireInstanceService); $controller->setFormulaireService($formulaireService); Loading