Ce module contient des tâches de workflow pour le plugin lutece-system-plugin-unittree.
Les tâches sont les suivantes :
L'administrateur doit configurer les tâches. Un type d'assignation et au moins une sélection d'entité sont obligatoires.
Pour une assignation manuelle, plusieurs sélections d'entité peuvent être configurées. L'utilisateur choisira la sélection qu'il souhaite dans le formulaire de la tâche.
Pour une assignation automatique, une seule sélection d'entité peut être configurée.
Les types d'assignation sont les suivants :
Introduction
Une sélection d'entité permet de sélectionner l'entité cible. Une sélection d'entité peut être automatique et donc peut être utilisée dans la tâche pour assigner automatiquement une ressource à une entité. Toutes les sélections d'entités (automatiques ou non) peuvent être utilisées dans la tâche pour assigner manuellement une ressource à une entité.
Ce module contient les sélections d'entité suivantes :
Créer une sélection d'entité
Si vous voulez utiliser votre propre sélection d'entité, il suffit d'implémenter l'interface fr.paris.lutece.plugins.workflow.modules.unittree.service.task.selection.IUnitSelection et de la déclarer en tant que bean dans le contexte Spring. Votre sélection d'entité sera alors présente dans la configuration des tâches d'assignation.
La méthode qui fait le travail est la méthode select( ... ). Elle retourne l'id de l'entité cible. Cette méthode n'est pas responsable du stockage de l'assignation. Ce stockage est réalisé par la tâche de workflow elle-même. Si cette méthode détecte que l'assignation n'est pas possible, elle doit lancer une fr.paris.lutece.plugins.workflow.modules.unittree.exception.AssignmentNotPossibleException.
La classe IUnitSelection utilise un handler de configuration pour gérer la partie configuration de la sélection d'entité dans la tâche d'assignation. Vous pouvez créer votre propre handler de configuration en implémentant l'interface fr.paris.lutece.plugins.workflow.modules.unittree.service.task.selection.IConfigurationHandler. Si votre sélection d'entité n'a pas de configuration, vous pouvez étendre la classe abstraite fr.paris.lutece.plugins.workflow.modules.unittree.service.task.selection.impl.AbstractEmptyConfigurationHandler. La seule chose à faire est de donner le titre de votre sélection d'entité.
La classe IUnitSelection utilise un handler de formulaire pour gérer le formulaire de tâche de la sélection d'entité dans la tâche d'assignation. Vous pouvez créer votre propre handler de formulaire en implémentant l'interface fr.paris.lutece.plugins.workflow.modules.unittree.service.task.selection.ITaskFormHandler. Pour les sélections automatiques, cela peut être une bonne idée de tester si l'assignation est possible dans la méthode getDisplayedForm( ... ) (en appelant la méthode select( ... )). Si l'assignation n'est pas possible, alors la méthode doit lancer une fr.paris.lutece.plugins.workflow.modules.unittree.exception.AssignmentNotPossibleException. Cela permet de cacher cette sélection dans le formulaire de la tâche.
Le service fr.paris.lutece.plugins.workflow.modules.unittree.service.UnitAssignmentService permet de retrouver les entités d'assignation pour une ressource.
Il contient les méthodes suivantes :
Les tâches de workflow sont utilisées pour assigner la ressource à des entités. Le service UnitAssignmentService est utilisé pour retrouver les entités d'assignation pour la ressource.