Commit 18cdb2b4 authored by Laurent Lécluse's avatar Laurent Lécluse
Browse files

Depuis quelques temps, les plafonds bloquants fonctionnaient comme des...

Depuis quelques temps, les plafonds bloquants fonctionnaient comme des plafonds informatifs. C'est corrigé.
parent 87c95509
......@@ -12,6 +12,7 @@ author: Laurent Lécluse - DSI - Unicaen
* Le référentiel peut être saisi même pour un intervenant d'une autre composante si l'enseignement est dans la composante du gestionnaire
* L'utilisateur OSE était mentionné partout comme modificateur au lieu de l'utilisateur courant. C'est rétabli.
* La création d'un nouveau projet de contrat ne calculait pas les heures HETD avec la formule. C'est maintenant automatique.
* Depuis quelques temps, les plafonds bloquants fonctionnaient comme des plafonds informatifs. C'est corrigé.
# OSE 8.2.2
......
......@@ -507,12 +507,12 @@ class ServiceController extends AbstractController
$this->getProcessusPlafond()->beginTransaction();
try {
$entity = $service->save($entity);
$this->updateTableauxBord($entity->getIntervenant());
$form->get('service')->get('id')->setValue($entity->getId()); // transmet le nouvel ID
} catch (\Exception $e) {
$this->flashMessenger()->addErrorMessage($this->translate($e));
}
$this->getProcessusPlafond()->endTransaction($entity->getIntervenant(), $typeVolumeHoraire);
$this->updateTableauxBord($entity->getIntervenant());
}
} else {
$this->flashMessenger()->addErrorMessage('La validation du formulaire a échoué. L\'enregistrement des données n\'a donc pas été fait.');
......
......@@ -151,12 +151,12 @@ class ServiceReferentielController extends AbstractController
try {
$entity->setIntervenant($intervenant); // car après $form->isValid(), $entity->getIntervenant() === null
$entity = $service->save($entity);
$this->updateTableauxBord($intervenant);
$form->get('service')->get('id')->setValue($entity->getId()); // transmet le nouvel ID
} catch (\Exception $e) {
$this->flashMessenger()->addErrorMessage($this->translate($e));
}
$this->getProcessusPlafond()->endTransaction($intervenant, $typeVolumeHoraire);
$this->updateTableauxBord($intervenant);
} else {
$this->flashMessenger()->addErrorMessage('La validation du formulaire a échoué. L\'enregistrement des données n\'a donc pas été fait.');
}
......
......@@ -102,12 +102,12 @@ class VolumeHoraireController extends AbstractController
$service = $vhl->getService();
$this->getProcessusPlafond()->beginTransaction();
$this->getServiceService()->save($service);
$this->updateTableauxBord($service->getIntervenant());
$this->getProcessusPlafond()->endTransaction($service->getIntervenant(), $vhl->getTypeVolumeHoraire());
$this->flashMessenger()->addSuccessMessage('Enregistrement effectué');
} catch (\Exception $e) {
$this->flashMessenger()->addErrorMessage($this->translate($e));
}
$this->updateTableauxBord($service->getIntervenant());
});
return compact('form');
......
......@@ -5,7 +5,6 @@ namespace Application\Processus;
use Application\Entity\Db\Intervenant;
use Application\Entity\Db\TypeVolumeHoraire;
use Application\Service\Traits\PlafondServiceAwareTrait;
use Doctrine\ORM\EntityManager;
use UnicaenApp\Service\EntityManagerAwareInterface;
use UnicaenApp\Service\EntityManagerAwareTrait;
use Zend\Mvc\Controller\Plugin\FlashMessenger;
......
......@@ -234,7 +234,7 @@ class ServiceReferentielService extends AbstractEntityService
public function save($entity)
{
$role = $this->getServiceContext()->getSelectedIdentityRole();
$this->getEntityManager()->getConnection()->beginTransaction();
$this->getEntityManager()->beginTransaction();
try {
if (!$entity->getIntervenant() && $intervenant = $role->getIntervenant()) {
$entity->setIntervenant($intervenant);
......@@ -284,9 +284,9 @@ class ServiceReferentielService extends AbstractEntityService
$serviceVolumeHoraire->save($volumeHoraire);
}
}
$this->getEntityManager()->getConnection()->commit();
$this->getEntityManager()->commit();
} catch (Exception $e) {
$this->getEntityManager()->getConnection()->rollBack();
$this->getEntityManager()->rollBack();
throw $e;
}
......
......@@ -248,7 +248,7 @@ class ServiceService extends AbstractEntityService
*/
public function save($entity)
{
$this->getEntityManager()->getConnection()->beginTransaction();
$this->getEntityManager()->beginTransaction();
try {
$role = $this->getServiceContext()->getSelectedIdentityRole();
......@@ -311,9 +311,9 @@ class ServiceService extends AbstractEntityService
$serviceVolumeHoraire->save($volumeHoraire, false); // pas de contrôle de plafond sur le VH ! ! !
}
}
$this->getEntityManager()->getConnection()->commit();
$this->getEntityManager()->commit();
} catch (Exception $e) {
$this->getEntityManager()->getConnection()->rollBack();
$this->getEntityManager()->rollBack();
throw $e;
}
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment