Comment rendre obligatoire des paramètres lors de la transition d’un cycle de vie

Prérequis

Afin de pouvoir suivre ce guide, il faut préalablement avoir ajouté une vérification spécifique avant le passage de transition d’un cycle de vie.

On souhaite rendre obligatoire le champ Validateur lors de la transition Valider d’un PLAT. Pour cela nous allons utiliser la méthode de rendu de transition getTransitionParameters.

Recommandations

Si vous n’êtes pas familier avec la méthode getTransitionParameters, il est recommandé de lire la documentation associée disponible ici

Comment procéder ?

Modifier la classe de rendu de transition src/vendor/Cogip/Restauratec/SmartStructures/Plat/PlatWorkflows/WfamPlatWorkflow/WfamPlatTransitionRender.php :




















 
 
 
 
 
 
 
 
 
 
 
 



<?php

namespace Cogip\Restauratec\SmartStructures\Plat\PlatWorkflows\WfamPlatWorkflow;

use Anakeen\Ui\HtmltextRenderOptions;
use Anakeen\Ui\TransitionRender;
use SmartStructure\Fields\Plat;
use SmartStructure\Fields\Wfam_plat;

class WfamPlatTransitionRender extends TransitionRender
{

    public function getRenderOptions($transitionId)
    {
        $renderOptions = parent::getRenderOptions($transitionId);
        $renderOptions->htmltext(Wfam_plat::wplat_commentaire)->setToolbar(HtmltextRenderOptions::basicToolbar);
        return $renderOptions;
    }

    public function getTransitionParameters($transitionId)
    {
        $transitionParameters = parent::getTransitionParameters($transitionId);
        if ($transitionId === WfamPlatGraphConstant::transition_t_plat_e1_e2) {
            foreach ($transitionParameters as $ask) {
                if ($ask->getId() === Plat::plat_validateur) {
                    $ask->setNeeded(true);
                }
            }
        }
        return $transitionParameters;
    }

}

Vous pouvez maintenant déployer vos modifications :

npx @anakeen/anakeen-cli deploy -c http://localhost:8080/control -s . -u admin -p anakeen --reinstall

Et voir le résultat sur un PLAT à l’état En test en étant connecté avec un utilisateur de la direction :

login: pope
password: cogip

transitionMandatory

Et ensuite ?

Comment préremplir les paramètres de transitions d’un cycle de vie