critère de filtrage sur l'agent ayant fait la saisie (#57779) #1390
Loading…
Reference in New Issue
No description provided.
Delete Branch "wip/57779-submission-agent-filter"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
(Profiter de ce ticket pour déplacer du code hors de wcs/backoffice/management.py)
0e3833d930
to62b8320699
62b8320699
to3cf645859d
3cf645859d
to0600425833
0600425833
to54e1efee6f
54e1efee6f
to1786a7bc15
1786a7bc15
to4acbac04bc
4acbac04bc
to59b7f7c56d
59b7f7c56d
toeda7ee6dd5
eda7ee6dd5
tof11c9d7b78
f11c9d7b78
to4ff56ecfed
4ff56ecfed
toc5dba09be0
c5dba09be0
toecb0ad58dc
Le premier commit déplace la classe "FakeField" vers un nouveau fichier, le renomme en FilterField, puis modifie les choses pour avoir une classe par filtre (vs se baser sur ce qui était passé au constructeur), c'est-à-dire, plutôt que :
on a :
et juste
filter_fields.DisplayNameFilterField()
pour y faire référence.Ça montre certaines incohérences actuelles, particulièrement en lien avec le ticket, on a :
(ça demande une migration sur les vues personnalisées pour uniformiser le nom)
(Il reste des trucs à analyser/améliorer par la suite, par exemple il y a un IdFilterField et un IdentifierFilterField.)
Ensuite le second commit, il déplace le code d'affichage des widgets des filtres vers les nouvelles classes, ça fait quelque chose de plus propre même si ça pourrait être amélioré encore (par exemple en déplaçant aussi les widgets des filtres des champs "normaux" vers leurs propres classes).
En passant il apparait que c'est nécessaire pour les filtres d'avoir une référence au formdef (par exemple pour que le filtre sur le statut n'apparaisse pas si le workflow ne propose pas plusieurs statuts).
Aussi, il y avait une méthode get_filterable_field_types() et c'est remplacé par un attribut sur les classes. (available_for_filter).
Le dernier commit est la demande du ticket, ça modifie le filtre SubmissionAgent pour avoir un
<select>
qui reprend une option "utilisateur connecté" (pas une demande du ticket mais le code était déjà là) et les différents utilisateurs qui ont un rôle permettant la saisie backoffice de la demande.Pas abordé dans cette PR, il y aurait aussi à déplacer vers ces classes du code qui est actuellement dans le get_field_view_value de wcs/formdata.py, mais ça sera une autre PR.
WIP: critère de filtrage sur l'agent ayant fait la saisie (#57779)to critère de filtrage sur l'agent ayant fait la saisie (#57779)