Loading module/Application/src/Form/Intervenant/Dossier/DossierStatutFieldset.php +4 −17 Original line number Diff line number Diff line Loading @@ -24,7 +24,6 @@ class DossierStatutFieldset extends AbstractFieldset } private function addElements() { Loading Loading @@ -57,26 +56,14 @@ class DossierStatutFieldset extends AbstractFieldset } } $statutSelectable = $this->getServiceStatut()->getStatutSelectable($statut); foreach ($statutSelectable as $k => $statut) { if (in_array($statut->getCode(), $statuts) && $statut->getCode() != $statut->getCode()) { unset($statutSelectable[$k]); } } //Si statut intervenant n'est pas selectionnable dans la liste alors liste en lecture seule if ($statut->getDossierSelectionnable() || $statut->isAutres()) { $this->get('statut') ->setValueOptions(['' => '(Sélectionnez un statut)'] + \UnicaenApp\Util::collectionAsOptions($statutSelectable)); } else { $this->get('statut') ->setValueOptions(\UnicaenApp\Util::collectionAsOptions([$statut])); } return $this; } public function getInputFilterSpecification() { $spec = [ Loading module/Intervenant/src/Service/StatutService.php +7 −12 Original line number Diff line number Diff line Loading @@ -81,23 +81,18 @@ class StatutService extends AbstractEntityService public function getStatutSelectable(Statut $statut, QueryBuilder $qb = null, $alias = null) { [$qb, $alias] = $this->initQuery($qb, $alias); $qb->andWhere("$alias.dossierSelectionnable = 1"); // $qb->andWhere("$alias.dossierSelectionnable = 1"); $qb->andWhere("$alias.annee = " . $this->getServiceContext()->getAnnee()->getId()); $entities = $qb->getQuery()->execute(); $statuts = $qb->getQuery()->execute(); $qb->addOrderBy("$alias.code"); $result = []; $entityClass = $this->getEntityClass(); foreach ($entities as $entity) { if ($entity instanceof $entityClass) { /** * @var Statut $entity */ //Je prends le statut si il n'est pas détruit ou si l'intervenant a ce statut if (is_null($entity->getHistoDestruction()) || $statut->getCode() == $entity->getCode()) { $result[] = $entity; foreach ($statuts as $value) { if ($value instanceof Statut) { if (($value->estNonHistorise() && $value->getDossierSelectionnable()) || $statut->getCode() == $value->getCode()) { $result[] = $value; } } } Loading Loading
module/Application/src/Form/Intervenant/Dossier/DossierStatutFieldset.php +4 −17 Original line number Diff line number Diff line Loading @@ -24,7 +24,6 @@ class DossierStatutFieldset extends AbstractFieldset } private function addElements() { Loading Loading @@ -57,26 +56,14 @@ class DossierStatutFieldset extends AbstractFieldset } } $statutSelectable = $this->getServiceStatut()->getStatutSelectable($statut); foreach ($statutSelectable as $k => $statut) { if (in_array($statut->getCode(), $statuts) && $statut->getCode() != $statut->getCode()) { unset($statutSelectable[$k]); } } //Si statut intervenant n'est pas selectionnable dans la liste alors liste en lecture seule if ($statut->getDossierSelectionnable() || $statut->isAutres()) { $this->get('statut') ->setValueOptions(['' => '(Sélectionnez un statut)'] + \UnicaenApp\Util::collectionAsOptions($statutSelectable)); } else { $this->get('statut') ->setValueOptions(\UnicaenApp\Util::collectionAsOptions([$statut])); } return $this; } public function getInputFilterSpecification() { $spec = [ Loading
module/Intervenant/src/Service/StatutService.php +7 −12 Original line number Diff line number Diff line Loading @@ -81,23 +81,18 @@ class StatutService extends AbstractEntityService public function getStatutSelectable(Statut $statut, QueryBuilder $qb = null, $alias = null) { [$qb, $alias] = $this->initQuery($qb, $alias); $qb->andWhere("$alias.dossierSelectionnable = 1"); // $qb->andWhere("$alias.dossierSelectionnable = 1"); $qb->andWhere("$alias.annee = " . $this->getServiceContext()->getAnnee()->getId()); $entities = $qb->getQuery()->execute(); $statuts = $qb->getQuery()->execute(); $qb->addOrderBy("$alias.code"); $result = []; $entityClass = $this->getEntityClass(); foreach ($entities as $entity) { if ($entity instanceof $entityClass) { /** * @var Statut $entity */ //Je prends le statut si il n'est pas détruit ou si l'intervenant a ce statut if (is_null($entity->getHistoDestruction()) || $statut->getCode() == $entity->getCode()) { $result[] = $entity; foreach ($statuts as $value) { if ($value instanceof Statut) { if (($value->estNonHistorise() && $value->getDossierSelectionnable()) || $statut->getCode() == $value->getCode()) { $result[] = $value; } } } Loading