Loading module/Application/src/Application/Controller/FormationInstanceController.php +99 −0 Changes for module/Application/src/Application/Controller/FormationInstanceController.php: 99 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -3,16 +3,19 @@ namespace Application\Controller; use Application\Entity\Db\FormationInstance; use Application\Entity\Db\FormationInstanceFormateur; use Application\Entity\Db\FormationInstanceFrais; use Application\Entity\Db\FormationInstanceInscrit; use Application\Entity\Db\FormationInstanceJournee; use Application\Entity\Db\FormationInstancePresence; use Application\Form\FormationInstance\FormationInstanceFormAwareTrait; use Application\Form\FormationInstanceFormateur\FormationInstanceFormateurFormAwareTrait; use Application\Form\FormationInstanceFrais\FormationInstanceFraisFormAwareTrait; use Application\Form\FormationJournee\FormationJourneeFormAwareTrait; use Application\Form\SelectionAgent\SelectionAgentFormAwareTrait; use Application\Service\Export\Formation\Emargement\EmargementPdfExporter; use Application\Service\Formation\FormationServiceAwareTrait; use Application\Service\FormationInstance\FormationInstanceFormateurServiceAwareTrait; use Application\Service\FormationInstance\FormationInstanceFraisServiceAwareTrait; use Application\Service\FormationInstance\FormationInstanceInscritServiceAwareTrait; use Application\Service\FormationInstance\FormationInstanceJourneeServiceAwareTrait; Loading @@ -33,10 +36,12 @@ class FormationInstanceController extends AbstractActionController { use FormationInstanceServiceAwareTrait; use FormationInstanceInscritServiceAwareTrait; use FormationInstanceJourneeServiceAwareTrait; use FormationInstanceFormateurServiceAwareTrait; use FormationInstanceFraisServiceAwareTrait; use FormationInstancePresenceAwareTrait; use FormationInstanceFormAwareTrait; use FormationJourneeFormAwareTrait; use FormationInstanceFormateurFormAwareTrait; use FormationInstanceFraisFormAwareTrait; use SelectionAgentFormAwareTrait; use ExporterServiceAwareTrait; Loading Loading @@ -146,6 +151,100 @@ class FormationInstanceController extends AbstractActionController { return $vm; } /** FORMATEUR ******************************************************************************************/ public function ajouterFormateurAction() { $instance = $this->getFormationInstanceService()->getRequestedFormationInstance($this); $formateur = new FormationInstanceFormateur(); $formateur->setInstance($instance); $form = $this->getFormationInstanceFormateurForm(); $form->setAttribute('action', $this->url()->fromRoute('formation-instance/ajouter-formateur', ['formation-instance' => $instance->getId()], [], true)); $form->bind($formateur); $request = $this->getRequest(); if ($request->isPost()) { $data = $request->getPost(); $form->setData($data); if ($form->isValid()) { $this->getFormationInstanceFormateurService()->create($formateur); } } $vm = new ViewModel(); $vm->setTemplate('application/default/default-form'); $vm->setVariables([ 'title' => "Ajout d'un formateur de formation", 'form' => $form, ]); return $vm; } public function modifierFormateurAction() { $formateur = $this->getFormationInstanceFormateurService()->getRequestedFormationInstanceFormateur($this); $form = $this->getFormationInstanceFormateurForm(); $form->setAttribute('action', $this->url()->fromRoute('formation-instance/modifier-formateur', ['formateur' => $formateur->getId()], [], true)); $form->bind($formateur); $request = $this->getRequest(); if ($request->isPost()) { $data = $request->getPost(); $form->setData($data); if ($form->isValid()) { $this->getFormationInstanceFormateurService()->update($formateur); } } $vm = new ViewModel(); $vm->setTemplate('application/default/default-form'); $vm->setVariables([ 'title' => "Modification d'un formateur de formation", 'form' => $form, ]); return $vm; } public function historiserFormateurAction() { $formateur = $this->getFormationInstanceFormateurService()->getRequestedFormationInstanceFormateur($this); $this->getFormationInstanceFormateurService()->historise($formateur); return $this->redirect()->toRoute('formation-instance/afficher', ['formation-instance' => $formateur->getInstance()->getId()], [], true); } public function restaurerFormateurAction() { $formateur = $this->getFormationInstanceFormateurService()->getRequestedFormationInstanceFormateur($this); $this->getFormationInstanceFormateurService()->restore($formateur); return $this->redirect()->toRoute('formation-instance/afficher', ['formation-instance' => $formateur->getInstance()->getId()], [], true); } public function supprimerFormateurAction() { $formateur = $this->getFormationInstanceFormateurService()->getRequestedFormationInstanceFormateur($this); /** @var Request $request */ $request = $this->getRequest(); if ($request->isPost()) { $data = $request->getPost(); if ($data["reponse"] === "oui") $this->getFormationInstanceFormateurService()->delete($formateur); exit(); } $vm = new ViewModel(); if ($formateur !== null) { $vm->setTemplate('application/default/confirmation'); $vm->setVariables([ 'title' => "Suppression du formateur de formation du [" . $formateur->getPrenom() . " ". $formateur->getNom() . "]", 'text' => "La suppression est définitive êtes-vous sûr·e de vouloir continuer ?", 'action' => $this->url()->fromRoute('formation-instance/supprimer-formateur', ["formateur" => $formateur->getId()], [], true), ]); } return $vm; } /** JOURNEE ********************************************************************************************/ public function ajouterJourneeAction() { Loading module/Application/src/Application/Controller/FormationInstanceControllerFactory.php +8 −0 Changes for module/Application/src/Application/Controller/FormationInstanceControllerFactory.php: 8 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -3,10 +3,12 @@ namespace Application\Controller; use Application\Form\FormationInstance\FormationInstanceForm; use Application\Form\FormationInstanceFormateur\FormationInstanceFormateurForm; use Application\Form\FormationInstanceFrais\FormationInstanceFraisForm; use Application\Form\FormationJournee\FormationJourneeForm; use Application\Form\SelectionAgent\SelectionAgentForm; use Application\Service\Formation\FormationService; use Application\Service\FormationInstance\FormationInstanceFormateurService; use Application\Service\FormationInstance\FormationInstanceFraisService; use Application\Service\FormationInstance\FormationInstanceInscritService; use Application\Service\FormationInstance\FormationInstanceJourneeService; Loading @@ -30,6 +32,7 @@ class FormationInstanceControllerFactory { * @var FormationInstanceInscritService $formationInstanceInscritService * @var FormationInstanceJourneeService $formationInstanceJourneeService * @var FormationInstancePresenceService $formationInstancePresenceService * @var FormationInstanceFormateurService $formationInstanceFormateurService * @var FormationInstanceFraisService $formationInstanceFraisService * @var ExporterService $exporterService */ Loading @@ -38,17 +41,20 @@ class FormationInstanceControllerFactory { $formationInstanceInscritService = $container->get(FormationInstanceInscritService::class); $formationInstanceJourneeService = $container->get(FormationInstanceJourneeService::class); $formationInstancePresenceService = $container->get(FormationInstancePresenceService::class); $formationInstanceFormateurService = $container->get(FormationInstanceFormateurService::class); $formationInstanceFraisService = $container->get(FormationInstanceFraisService::class); $exporterService = $container->get(ExporterService::class); /** * @var FormationInstanceForm $formationInstanceForm * @var FormationJourneeForm $formationJourneeForm * @var FormationInstanceFormateurForm $formationFormateurForm * @var FormationInstanceFraisForm $formationFraisForm * @var SelectionAgentForm $selectionAgentForm */ $formationInstanceForm = $container->get('FormElementManager')->get(FormationInstanceForm::class); $formationJourneeForm = $container->get('FormElementManager')->get(FormationJourneeForm::class); $formationFormateurForm = $container->get('FormElementManager')->get(FormationInstanceFormateurForm::class); $formationFraisForm = $container->get('FormElementManager')->get(FormationInstanceFraisForm::class); $selectionAgentForm = $container->get('FormElementManager')->get(SelectionAgentForm::class); Loading @@ -63,10 +69,12 @@ class FormationInstanceControllerFactory { $controller->setFormationInstanceInscritService($formationInstanceInscritService); $controller->setFormationInstanceJourneeService($formationInstanceJourneeService); $controller->setFormationInstancePresenceService($formationInstancePresenceService); $controller->setFormationInstanceFormateurService($formationInstanceFormateurService); $controller->setFormationInstanceFraisService($formationInstanceFraisService); $controller->setExporterService($exporterService); $controller->setFormationInstanceForm($formationInstanceForm); $controller->setFormationJourneeForm($formationJourneeForm); $controller->setFormationInstanceFormateurForm($formationFormateurForm); $controller->setFormationInstanceFraisForm($formationFraisForm); $controller->setSelectionAgentForm($selectionAgentForm); return $controller; Loading module/Application/src/Application/Entity/Db/FormationInstance.php +13 −0 Changes for module/Application/src/Application/Entity/Db/FormationInstance.php: 13 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -166,6 +166,19 @@ class FormationInstance implements HistoriqueAwareInterface { return $this->formateurs->toArray(); } /** * @return float */ public function getVolumeHoraireSomme() { $somme = 0; /** @var FormationInstanceFormateur $formateur */ foreach ($this->formateurs as $formateur) { if ($formateur->estNonHistorise() AND $formateur->getVolume()) $somme += $formateur->getVolume(); } return $somme; } /** JOURNEE *******************************************************************************************************/ public function getJournees() Loading module/Application/src/Application/Form/FormationInstanceFormateur/FormationInstanceFormateurForm.php +12 −0 Changes for module/Application/src/Application/Form/FormationInstanceFormateur/FormationInstanceFormateurForm.php: 12 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -35,6 +35,17 @@ class FormationInstanceFormateurForm extends Form 'id' => 'nom', ], ]); //attachement $this->add([ 'type' => Text::class, 'name' => 'attachement', 'options' => [ 'label' => "Structure d'attachement :", ], 'attributes' => [ 'id' => 'attachement', ], ]); //volume $this->add([ 'type' => Text::class, Loading Loading @@ -77,6 +88,7 @@ class FormationInstanceFormateurForm extends Form $this->setInputFilter((new Factory())->createInputFilter([ 'prenom' => [ 'required' => true], 'nom' => [ 'required' => true], 'attachement' => [ 'required' => false], 'volume' => [ 'required' => false, 'validators' => [ Loading module/Application/src/Application/Form/FormationInstanceFormateur/FormationInstanceFormateurHydrator.php +3 −0 Changes for module/Application/src/Application/Form/FormationInstanceFormateur/FormationInstanceFormateurHydrator.php: 3 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ class FormationInstanceFormateurHydrator implements HydratorInterface { $data = [ 'prenom' => ($object)?$object->getPrenom():null, 'nom' => ($object)?$object->getNom():null, 'attachement' => ($object)?$object->getAttachement():null, 'volume' => ($object)?$object->getVolume():null, 'montant' => ($object)?$object->getMontant():null, ]; Loading @@ -31,11 +32,13 @@ class FormationInstanceFormateurHydrator implements HydratorInterface { { $prenom = (isset($data['prenom']) AND trim($data['prenom']) !== "")?trim($data['prenom']):null; $nom = (isset($data['nom']) AND trim($data['nom']) !== "")?trim($data['nom']):null; $attachement = (isset($data['attachement']) AND trim($data['attachement']) !== "")?trim($data['attachement']):null; $volume = (isset($data['volume']) AND trim($data['volume']) !== "")?trim($data['volume']):null; $montant = (isset($data['montant']) AND trim($data['montant']) !== "")?trim($data['montant']):null; $object->setPrenom($prenom); $object->setNom($nom); $object->setAttachement($attachement); $object->setVolume($volume); $object->setMontant($montant); return $object; Loading Loading
module/Application/src/Application/Controller/FormationInstanceController.php +99 −0 Changes for module/Application/src/Application/Controller/FormationInstanceController.php: 99 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -3,16 +3,19 @@ namespace Application\Controller; use Application\Entity\Db\FormationInstance; use Application\Entity\Db\FormationInstanceFormateur; use Application\Entity\Db\FormationInstanceFrais; use Application\Entity\Db\FormationInstanceInscrit; use Application\Entity\Db\FormationInstanceJournee; use Application\Entity\Db\FormationInstancePresence; use Application\Form\FormationInstance\FormationInstanceFormAwareTrait; use Application\Form\FormationInstanceFormateur\FormationInstanceFormateurFormAwareTrait; use Application\Form\FormationInstanceFrais\FormationInstanceFraisFormAwareTrait; use Application\Form\FormationJournee\FormationJourneeFormAwareTrait; use Application\Form\SelectionAgent\SelectionAgentFormAwareTrait; use Application\Service\Export\Formation\Emargement\EmargementPdfExporter; use Application\Service\Formation\FormationServiceAwareTrait; use Application\Service\FormationInstance\FormationInstanceFormateurServiceAwareTrait; use Application\Service\FormationInstance\FormationInstanceFraisServiceAwareTrait; use Application\Service\FormationInstance\FormationInstanceInscritServiceAwareTrait; use Application\Service\FormationInstance\FormationInstanceJourneeServiceAwareTrait; Loading @@ -33,10 +36,12 @@ class FormationInstanceController extends AbstractActionController { use FormationInstanceServiceAwareTrait; use FormationInstanceInscritServiceAwareTrait; use FormationInstanceJourneeServiceAwareTrait; use FormationInstanceFormateurServiceAwareTrait; use FormationInstanceFraisServiceAwareTrait; use FormationInstancePresenceAwareTrait; use FormationInstanceFormAwareTrait; use FormationJourneeFormAwareTrait; use FormationInstanceFormateurFormAwareTrait; use FormationInstanceFraisFormAwareTrait; use SelectionAgentFormAwareTrait; use ExporterServiceAwareTrait; Loading Loading @@ -146,6 +151,100 @@ class FormationInstanceController extends AbstractActionController { return $vm; } /** FORMATEUR ******************************************************************************************/ public function ajouterFormateurAction() { $instance = $this->getFormationInstanceService()->getRequestedFormationInstance($this); $formateur = new FormationInstanceFormateur(); $formateur->setInstance($instance); $form = $this->getFormationInstanceFormateurForm(); $form->setAttribute('action', $this->url()->fromRoute('formation-instance/ajouter-formateur', ['formation-instance' => $instance->getId()], [], true)); $form->bind($formateur); $request = $this->getRequest(); if ($request->isPost()) { $data = $request->getPost(); $form->setData($data); if ($form->isValid()) { $this->getFormationInstanceFormateurService()->create($formateur); } } $vm = new ViewModel(); $vm->setTemplate('application/default/default-form'); $vm->setVariables([ 'title' => "Ajout d'un formateur de formation", 'form' => $form, ]); return $vm; } public function modifierFormateurAction() { $formateur = $this->getFormationInstanceFormateurService()->getRequestedFormationInstanceFormateur($this); $form = $this->getFormationInstanceFormateurForm(); $form->setAttribute('action', $this->url()->fromRoute('formation-instance/modifier-formateur', ['formateur' => $formateur->getId()], [], true)); $form->bind($formateur); $request = $this->getRequest(); if ($request->isPost()) { $data = $request->getPost(); $form->setData($data); if ($form->isValid()) { $this->getFormationInstanceFormateurService()->update($formateur); } } $vm = new ViewModel(); $vm->setTemplate('application/default/default-form'); $vm->setVariables([ 'title' => "Modification d'un formateur de formation", 'form' => $form, ]); return $vm; } public function historiserFormateurAction() { $formateur = $this->getFormationInstanceFormateurService()->getRequestedFormationInstanceFormateur($this); $this->getFormationInstanceFormateurService()->historise($formateur); return $this->redirect()->toRoute('formation-instance/afficher', ['formation-instance' => $formateur->getInstance()->getId()], [], true); } public function restaurerFormateurAction() { $formateur = $this->getFormationInstanceFormateurService()->getRequestedFormationInstanceFormateur($this); $this->getFormationInstanceFormateurService()->restore($formateur); return $this->redirect()->toRoute('formation-instance/afficher', ['formation-instance' => $formateur->getInstance()->getId()], [], true); } public function supprimerFormateurAction() { $formateur = $this->getFormationInstanceFormateurService()->getRequestedFormationInstanceFormateur($this); /** @var Request $request */ $request = $this->getRequest(); if ($request->isPost()) { $data = $request->getPost(); if ($data["reponse"] === "oui") $this->getFormationInstanceFormateurService()->delete($formateur); exit(); } $vm = new ViewModel(); if ($formateur !== null) { $vm->setTemplate('application/default/confirmation'); $vm->setVariables([ 'title' => "Suppression du formateur de formation du [" . $formateur->getPrenom() . " ". $formateur->getNom() . "]", 'text' => "La suppression est définitive êtes-vous sûr·e de vouloir continuer ?", 'action' => $this->url()->fromRoute('formation-instance/supprimer-formateur', ["formateur" => $formateur->getId()], [], true), ]); } return $vm; } /** JOURNEE ********************************************************************************************/ public function ajouterJourneeAction() { Loading
module/Application/src/Application/Controller/FormationInstanceControllerFactory.php +8 −0 Changes for module/Application/src/Application/Controller/FormationInstanceControllerFactory.php: 8 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -3,10 +3,12 @@ namespace Application\Controller; use Application\Form\FormationInstance\FormationInstanceForm; use Application\Form\FormationInstanceFormateur\FormationInstanceFormateurForm; use Application\Form\FormationInstanceFrais\FormationInstanceFraisForm; use Application\Form\FormationJournee\FormationJourneeForm; use Application\Form\SelectionAgent\SelectionAgentForm; use Application\Service\Formation\FormationService; use Application\Service\FormationInstance\FormationInstanceFormateurService; use Application\Service\FormationInstance\FormationInstanceFraisService; use Application\Service\FormationInstance\FormationInstanceInscritService; use Application\Service\FormationInstance\FormationInstanceJourneeService; Loading @@ -30,6 +32,7 @@ class FormationInstanceControllerFactory { * @var FormationInstanceInscritService $formationInstanceInscritService * @var FormationInstanceJourneeService $formationInstanceJourneeService * @var FormationInstancePresenceService $formationInstancePresenceService * @var FormationInstanceFormateurService $formationInstanceFormateurService * @var FormationInstanceFraisService $formationInstanceFraisService * @var ExporterService $exporterService */ Loading @@ -38,17 +41,20 @@ class FormationInstanceControllerFactory { $formationInstanceInscritService = $container->get(FormationInstanceInscritService::class); $formationInstanceJourneeService = $container->get(FormationInstanceJourneeService::class); $formationInstancePresenceService = $container->get(FormationInstancePresenceService::class); $formationInstanceFormateurService = $container->get(FormationInstanceFormateurService::class); $formationInstanceFraisService = $container->get(FormationInstanceFraisService::class); $exporterService = $container->get(ExporterService::class); /** * @var FormationInstanceForm $formationInstanceForm * @var FormationJourneeForm $formationJourneeForm * @var FormationInstanceFormateurForm $formationFormateurForm * @var FormationInstanceFraisForm $formationFraisForm * @var SelectionAgentForm $selectionAgentForm */ $formationInstanceForm = $container->get('FormElementManager')->get(FormationInstanceForm::class); $formationJourneeForm = $container->get('FormElementManager')->get(FormationJourneeForm::class); $formationFormateurForm = $container->get('FormElementManager')->get(FormationInstanceFormateurForm::class); $formationFraisForm = $container->get('FormElementManager')->get(FormationInstanceFraisForm::class); $selectionAgentForm = $container->get('FormElementManager')->get(SelectionAgentForm::class); Loading @@ -63,10 +69,12 @@ class FormationInstanceControllerFactory { $controller->setFormationInstanceInscritService($formationInstanceInscritService); $controller->setFormationInstanceJourneeService($formationInstanceJourneeService); $controller->setFormationInstancePresenceService($formationInstancePresenceService); $controller->setFormationInstanceFormateurService($formationInstanceFormateurService); $controller->setFormationInstanceFraisService($formationInstanceFraisService); $controller->setExporterService($exporterService); $controller->setFormationInstanceForm($formationInstanceForm); $controller->setFormationJourneeForm($formationJourneeForm); $controller->setFormationInstanceFormateurForm($formationFormateurForm); $controller->setFormationInstanceFraisForm($formationFraisForm); $controller->setSelectionAgentForm($selectionAgentForm); return $controller; Loading
module/Application/src/Application/Entity/Db/FormationInstance.php +13 −0 Changes for module/Application/src/Application/Entity/Db/FormationInstance.php: 13 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -166,6 +166,19 @@ class FormationInstance implements HistoriqueAwareInterface { return $this->formateurs->toArray(); } /** * @return float */ public function getVolumeHoraireSomme() { $somme = 0; /** @var FormationInstanceFormateur $formateur */ foreach ($this->formateurs as $formateur) { if ($formateur->estNonHistorise() AND $formateur->getVolume()) $somme += $formateur->getVolume(); } return $somme; } /** JOURNEE *******************************************************************************************************/ public function getJournees() Loading
module/Application/src/Application/Form/FormationInstanceFormateur/FormationInstanceFormateurForm.php +12 −0 Changes for module/Application/src/Application/Form/FormationInstanceFormateur/FormationInstanceFormateurForm.php: 12 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -35,6 +35,17 @@ class FormationInstanceFormateurForm extends Form 'id' => 'nom', ], ]); //attachement $this->add([ 'type' => Text::class, 'name' => 'attachement', 'options' => [ 'label' => "Structure d'attachement :", ], 'attributes' => [ 'id' => 'attachement', ], ]); //volume $this->add([ 'type' => Text::class, Loading Loading @@ -77,6 +88,7 @@ class FormationInstanceFormateurForm extends Form $this->setInputFilter((new Factory())->createInputFilter([ 'prenom' => [ 'required' => true], 'nom' => [ 'required' => true], 'attachement' => [ 'required' => false], 'volume' => [ 'required' => false, 'validators' => [ Loading
module/Application/src/Application/Form/FormationInstanceFormateur/FormationInstanceFormateurHydrator.php +3 −0 Changes for module/Application/src/Application/Form/FormationInstanceFormateur/FormationInstanceFormateurHydrator.php: 3 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ class FormationInstanceFormateurHydrator implements HydratorInterface { $data = [ 'prenom' => ($object)?$object->getPrenom():null, 'nom' => ($object)?$object->getNom():null, 'attachement' => ($object)?$object->getAttachement():null, 'volume' => ($object)?$object->getVolume():null, 'montant' => ($object)?$object->getMontant():null, ]; Loading @@ -31,11 +32,13 @@ class FormationInstanceFormateurHydrator implements HydratorInterface { { $prenom = (isset($data['prenom']) AND trim($data['prenom']) !== "")?trim($data['prenom']):null; $nom = (isset($data['nom']) AND trim($data['nom']) !== "")?trim($data['nom']):null; $attachement = (isset($data['attachement']) AND trim($data['attachement']) !== "")?trim($data['attachement']):null; $volume = (isset($data['volume']) AND trim($data['volume']) !== "")?trim($data['volume']):null; $montant = (isset($data['montant']) AND trim($data['montant']) !== "")?trim($data['montant']):null; $object->setPrenom($prenom); $object->setNom($nom); $object->setAttachement($attachement); $object->setVolume($volume); $object->setMontant($montant); return $object; Loading