Loading data/ddl/view/V_INDICATEUR_430.sql +1 −0 Changes for data/ddl/view/V_INDICATEUR_430.sql: 1 added line, 0 removed lines. Original line number Diff line number Diff line Loading @@ -4,6 +4,7 @@ SELECT w.structure_id FROM intervenant i JOIN PARAMETRE p ON p.VALEUR = 'avenant' JOIN tbl_workflow w ON w.intervenant_id = i.id JOIN ( SELECT DISTINCT Loading data/parametres.php +6 −2 Changes for data/parametres.php: 6 added lines, 2 removed lines. Original line number Diff line number Diff line Loading @@ -229,9 +229,13 @@ Cordialement, "DESCRIPTION" => "Permettre la création d'avenants au contrat", ], /* Contrat */ "contrat_projet" => [ "VALEUR" => "active", "VALEUR" => "desactive", "DESCRIPTION" => "Permettre la création d'un contrat sans passé par le projet", ], "contrat_date" => [ "VALEUR" => "desactive", "DESCRIPTION" => "Permettre de saisir une date de retour signé pour un contrat sans ajouter de fichier", ], ]; No newline at end of file module/Application/src/Assertion/ContratAssertion.php +12 −3 Changes for module/Application/src/Assertion/ContratAssertion.php: 12 added lines, 3 removed lines. Original line number Diff line number Diff line Loading @@ -5,10 +5,11 @@ namespace Application\Assertion; use Application\Acl\Role; use Application\Entity\Db\Contrat; use Application\Entity\Db\Intervenant; use Application\Entity\Db\Parametre; use Application\Entity\Db\Structure; use Application\Entity\Db\WfEtape; use Application\Provider\Privilege\Privileges; use Application\Service\Traits\ParametresServiceAwareTrait; // sous réserve que vous utilisiez les privilèges d'UnicaenAuth et que vous ayez généré votre fournisseur use Application\Service\Traits\WorkflowServiceAwareTrait; use UnicaenAuth\Assertion\AbstractAssertion; Loading @@ -22,6 +23,8 @@ use Laminas\Permissions\Acl\Resource\ResourceInterface; */ class ContratAssertion extends AbstractAssertion { use ParametresServiceAwareTrait; const PRIV_LISTER_FICHIERS = 'contrat-lister-fichiers'; const PRIV_SUPPRIMER_FICHIER = 'contrat-supprimer-fichier'; const PRIV_AJOUTER_FICHIER = 'contrat-ajouter-fichier'; Loading Loading @@ -181,9 +184,12 @@ class ContratAssertion extends AbstractAssertion $devalid = true; } $contratDirectResult = $this->getServiceParametres()->get('contrat_projet'); $contratDirect = ($contratDirectResult == Parametre::CONTRAT_PROJET); return $this->asserts([ $this->assertRole($contrat), $contrat->getValidation(), $contrat->getValidation() && !$contratDirect, !$contrat->getDateRetourSigne(), $devalid, ]); Loading @@ -193,9 +199,12 @@ class ContratAssertion extends AbstractAssertion protected function assertSuppression(Contrat $contrat) { $contratDirectResult = $this->getServiceParametres()->get('contrat_projet'); $contratDirect = ($contratDirectResult == Parametre::CONTRAT_PROJET); return $this->asserts([ $this->assertRole($contrat), !$contrat->getValidation(), !$contrat->getValidation() || $contratDirect, ]); } Loading module/Application/src/Controller/ContratController.php +12 −1 Changes for module/Application/src/Controller/ContratController.php: 12 added lines, 1 removed line. Original line number Diff line number Diff line Loading @@ -142,6 +142,7 @@ class ContratController extends AbstractController $contratProjetResult = $this->getServiceParametres()->get('contrat_projet'); $contratProjet = ($contratProjetResult == Parametre::CONTRAT_PROJET); return compact('title', 'intervenant', 'contrats', 'services', 'emailIntervenant', 'avenant', 'contratProjet'); } Loading Loading @@ -176,6 +177,7 @@ class ContratController extends AbstractController if ($contratProjet) { $this->getProcessusContrat()->valider($contrat); } $this->updateTableauxBord($contrat->getIntervenant()); if ($contratProjet) { $this->flashMessenger()->addSuccessMessage(($contrat->estUnAvenant() ? 'L\'avenant' : 'Le contrat') . ' a bien été créé.'); Loading Loading @@ -212,6 +214,11 @@ class ContratController extends AbstractController if ($this->getRequest()->isPost()) { try { $contratProjetResult = $this->getServiceParametres()->get('contrat_projet'); $contratProjet = ($contratProjetResult == Parametre::CONTRAT_PROJET); if ($contratProjet) { } $this->getProcessusContrat()->supprimer($contrat); $this->updateTableauxBord($contrat->getIntervenant()); $this->flashMessenger()->addSuccessMessage("Suppression $contratToString effectuée avec succès."); Loading Loading @@ -282,6 +289,7 @@ class ContratController extends AbstractController if ($this->isAllowed($contrat, Privileges::CONTRAT_DEVALIDATION)) { if ($this->getRequest()->isPost()) { try { $this->getProcessusContrat()->devalider($contrat); $this->updateTableauxBord($contrat->getIntervenant()); Loading Loading @@ -337,7 +345,10 @@ class ContratController extends AbstractController $canSaisieDateSigne = false; } return compact('form', 'done', 'title', 'canSaisieDateSigne'); $contratDateResult = $this->getServiceParametres()->get('contrat_date'); $contratDate = ($contratDateResult == Parametre::CONTRAT_DATE); return compact('form', 'done', 'title', 'canSaisieDateSigne', 'contratDate'); } Loading module/Application/src/Entity/Db/Parametre.php +1 −0 Changes for module/Application/src/Entity/Db/Parametre.php: 1 added line, 0 removed lines. Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ class Parametre implements HistoriqueAwareInterface const AVENANT = 'avenant'; const CONTRAT_PROJET = 'contrat_projet'; const CONTRAT_DATE = 'contrat_date'; use HistoriqueAwareTrait; Loading Loading
data/ddl/view/V_INDICATEUR_430.sql +1 −0 Changes for data/ddl/view/V_INDICATEUR_430.sql: 1 added line, 0 removed lines. Original line number Diff line number Diff line Loading @@ -4,6 +4,7 @@ SELECT w.structure_id FROM intervenant i JOIN PARAMETRE p ON p.VALEUR = 'avenant' JOIN tbl_workflow w ON w.intervenant_id = i.id JOIN ( SELECT DISTINCT Loading
data/parametres.php +6 −2 Changes for data/parametres.php: 6 added lines, 2 removed lines. Original line number Diff line number Diff line Loading @@ -229,9 +229,13 @@ Cordialement, "DESCRIPTION" => "Permettre la création d'avenants au contrat", ], /* Contrat */ "contrat_projet" => [ "VALEUR" => "active", "VALEUR" => "desactive", "DESCRIPTION" => "Permettre la création d'un contrat sans passé par le projet", ], "contrat_date" => [ "VALEUR" => "desactive", "DESCRIPTION" => "Permettre de saisir une date de retour signé pour un contrat sans ajouter de fichier", ], ]; No newline at end of file
module/Application/src/Assertion/ContratAssertion.php +12 −3 Changes for module/Application/src/Assertion/ContratAssertion.php: 12 added lines, 3 removed lines. Original line number Diff line number Diff line Loading @@ -5,10 +5,11 @@ namespace Application\Assertion; use Application\Acl\Role; use Application\Entity\Db\Contrat; use Application\Entity\Db\Intervenant; use Application\Entity\Db\Parametre; use Application\Entity\Db\Structure; use Application\Entity\Db\WfEtape; use Application\Provider\Privilege\Privileges; use Application\Service\Traits\ParametresServiceAwareTrait; // sous réserve que vous utilisiez les privilèges d'UnicaenAuth et que vous ayez généré votre fournisseur use Application\Service\Traits\WorkflowServiceAwareTrait; use UnicaenAuth\Assertion\AbstractAssertion; Loading @@ -22,6 +23,8 @@ use Laminas\Permissions\Acl\Resource\ResourceInterface; */ class ContratAssertion extends AbstractAssertion { use ParametresServiceAwareTrait; const PRIV_LISTER_FICHIERS = 'contrat-lister-fichiers'; const PRIV_SUPPRIMER_FICHIER = 'contrat-supprimer-fichier'; const PRIV_AJOUTER_FICHIER = 'contrat-ajouter-fichier'; Loading Loading @@ -181,9 +184,12 @@ class ContratAssertion extends AbstractAssertion $devalid = true; } $contratDirectResult = $this->getServiceParametres()->get('contrat_projet'); $contratDirect = ($contratDirectResult == Parametre::CONTRAT_PROJET); return $this->asserts([ $this->assertRole($contrat), $contrat->getValidation(), $contrat->getValidation() && !$contratDirect, !$contrat->getDateRetourSigne(), $devalid, ]); Loading @@ -193,9 +199,12 @@ class ContratAssertion extends AbstractAssertion protected function assertSuppression(Contrat $contrat) { $contratDirectResult = $this->getServiceParametres()->get('contrat_projet'); $contratDirect = ($contratDirectResult == Parametre::CONTRAT_PROJET); return $this->asserts([ $this->assertRole($contrat), !$contrat->getValidation(), !$contrat->getValidation() || $contratDirect, ]); } Loading
module/Application/src/Controller/ContratController.php +12 −1 Changes for module/Application/src/Controller/ContratController.php: 12 added lines, 1 removed line. Original line number Diff line number Diff line Loading @@ -142,6 +142,7 @@ class ContratController extends AbstractController $contratProjetResult = $this->getServiceParametres()->get('contrat_projet'); $contratProjet = ($contratProjetResult == Parametre::CONTRAT_PROJET); return compact('title', 'intervenant', 'contrats', 'services', 'emailIntervenant', 'avenant', 'contratProjet'); } Loading Loading @@ -176,6 +177,7 @@ class ContratController extends AbstractController if ($contratProjet) { $this->getProcessusContrat()->valider($contrat); } $this->updateTableauxBord($contrat->getIntervenant()); if ($contratProjet) { $this->flashMessenger()->addSuccessMessage(($contrat->estUnAvenant() ? 'L\'avenant' : 'Le contrat') . ' a bien été créé.'); Loading Loading @@ -212,6 +214,11 @@ class ContratController extends AbstractController if ($this->getRequest()->isPost()) { try { $contratProjetResult = $this->getServiceParametres()->get('contrat_projet'); $contratProjet = ($contratProjetResult == Parametre::CONTRAT_PROJET); if ($contratProjet) { } $this->getProcessusContrat()->supprimer($contrat); $this->updateTableauxBord($contrat->getIntervenant()); $this->flashMessenger()->addSuccessMessage("Suppression $contratToString effectuée avec succès."); Loading Loading @@ -282,6 +289,7 @@ class ContratController extends AbstractController if ($this->isAllowed($contrat, Privileges::CONTRAT_DEVALIDATION)) { if ($this->getRequest()->isPost()) { try { $this->getProcessusContrat()->devalider($contrat); $this->updateTableauxBord($contrat->getIntervenant()); Loading Loading @@ -337,7 +345,10 @@ class ContratController extends AbstractController $canSaisieDateSigne = false; } return compact('form', 'done', 'title', 'canSaisieDateSigne'); $contratDateResult = $this->getServiceParametres()->get('contrat_date'); $contratDate = ($contratDateResult == Parametre::CONTRAT_DATE); return compact('form', 'done', 'title', 'canSaisieDateSigne', 'contratDate'); } Loading
module/Application/src/Entity/Db/Parametre.php +1 −0 Changes for module/Application/src/Entity/Db/Parametre.php: 1 added line, 0 removed lines. Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ class Parametre implements HistoriqueAwareInterface const AVENANT = 'avenant'; const CONTRAT_PROJET = 'contrat_projet'; const CONTRAT_DATE = 'contrat_date'; use HistoriqueAwareTrait; Loading