Projet

Général

Profil

Development #57894

possibilité de copier une action d'un statut à un autre

Ajouté par Frédéric Péters il y a plus de 2 ans. Mis à jour il y a environ 2 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Version cible:
-
Début:
15 octobre 2021
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

Description

via #57263,

A la réflexion ça pourrait être un bouton "copier" (en précisant vers quel statut copier l'action) car ça arrive aussi souvent d'avoir besoin de dupliquer une action d'un statut dans un autre (et si on veut déplacer, on peut supprimer celui de départ, ça c'est rapide).


Fichiers


Demandes liées

Lié à Gadjo - Development #59670: Avoir une icône qui symbolise la copie d'une actionFermé14 décembre 2021

Actions
Dupliqué par w.c.s. - Development #30622: [Workflow] Permettre de dupliquer les actions, les déplacer d'un statut à un autreRejeté13 février 2019

Actions

Révisions associées

Révision 885dc8c2 (diff)
Ajouté par Valentin Deniaud il y a environ 2 ans

workflows: copy action from one status to another (#57894)

Historique

#5

Mis à jour par Valentin Deniaud il y a plus de 2 ans

  • Assigné à mis à Valentin Deniaud
#6

Mis à jour par Valentin Deniaud il y a plus de 2 ans

Qu'est-ce qu'on fait pour l'icône du coup ? Pierre a proposé un .svg dans le ticket lié, je prends ça ?

#7

Mis à jour par Frédéric Péters il y a plus de 2 ans

On ne peut pas prendre l'svg du noun project sans licence précisant l'attribution etc. il y a sans doute à, comme steph, composer avec l'existant, mais faire ça correctement, svg dans gadjo etc.

#8

Mis à jour par Valentin Deniaud il y a plus de 2 ans

  • Lié à Development #59670: Avoir une icône qui symbolise la copie d'une action ajouté
#9

Mis à jour par Valentin Deniaud il y a plus de 2 ans

Ajout du CSS qui va bien pour fonctionner avec l'icône dans gadjo.

#10

Mis à jour par Valentin Deniaud il y a plus de 2 ans

#12

Mis à jour par Thomas Noël il y a environ 2 ans

Le deepcopy est séduisant dans :

new_item = copy.deepcopy(self.item)

mais à ma connaissance on n'a jamais tenté ça sur une action dans un status. Il faudrait par exemple vérifier que pour l'action "document" on se retrouve bien avec le modèle de document dupliqué dans models/export_to_model-16-1-XXX.upload ... Je n'ai pas d'autre idée en tête d'action qui ont des relations avec d'autres objets externes, mais bon, voilà, au moins celle là.

#13

Mis à jour par Valentin Deniaud il y a environ 2 ans

Thomas Noël a écrit :

Le deepcopy est séduisant mais à ma connaissance on n'a jamais tenté ça sur une action dans un status.

C'est ce qu'on fait quand on duplique le workflow en entier, ça crée effectivement une situation où plusieurs actions document pointent sur le même modèle, et ça n'a pas l'air de poser problème.

#14

Mis à jour par Thomas Noël il y a environ 2 ans

  • Statut changé de Solution proposée à Solution validée

Valentin Deniaud a écrit :

Thomas Noël a écrit :

Le deepcopy est séduisant mais à ma connaissance on n'a jamais tenté ça sur une action dans un status.

C'est ce qu'on fait quand on duplique le workflow en entier, ça crée effectivement une situation où plusieurs actions document pointent sur le même modèle, et ça n'a pas l'air de poser problème.

Je crois ici à un bogue alors, parce que si on modifie le modèle sur le workflow d'origine, ça va le modifier silencieusement sur l'autre... Mais considérons que c'est un bogue qui n'a pas à être corrigé ici, faudra confirmer cette affaire sur un autre ticket éventuellement.

Je valide donc ton code qui me parait tout simple et tout bien.

#15

Mis à jour par Frédéric Péters il y a environ 2 ans

S'il y a un bug pressenti ça m'irait bien qu'on vérifie dès maintenant qu'il existe, ou pas, plutôt que le redécouvrir par hasard plus tard quand on n'arrivera pas à comprendre un comportement.

#16

Mis à jour par Frédéric Péters il y a environ 2 ans

deepcopy (...)

C'est ce qu'on fait quand on duplique le workflow en entier

Pour la duplication l'id et le slug sont mis à None et .store() est fait, je ne vois pas le deepcopy() en question. (cela pour dire aussi que #61838 aura beau être corrigé ça ne couvrira pas nécessairement le bug à vérifier ici).

#17

Mis à jour par Valentin Deniaud il y a environ 2 ans

  • Statut changé de Solution validée à En cours

Ouep mauvais git grep de ma part il n'y a effectivement pas de deepcopy quand on duplique un wf. Je vais voir pour corriger ici.

#18

Mis à jour par Thomas Noël il y a environ 2 ans

Pour info, au niveau de #61838 Frédéric a complétement revu le système de copie de workflow et passe par un export/import du XML, ce qui garanti des objets complétement distincts.

#19

Mis à jour par Valentin Deniaud il y a environ 2 ans

Revoici en appliquant la même correction que pour #61838, c'est à dire passer par l'export xml (+ un test également adapté de ce ticket).

#20

Mis à jour par Thomas Noël il y a environ 2 ans

Que penserais-tu d'ajouter un « check_datasources=False » lors du init_with_xml, dans l'idée que la copie d'une action un peu pétée donne une action un peu pétée...? Perso je ne trouverais pas ça scandaleux.

Sinon il faut gérer les FormdefImportUnknownReferencedError ou BlockdefImportError et ça donne pas très envie.

#21

Mis à jour par Valentin Deniaud il y a environ 2 ans

Branche à jour avec check_datasources=False, ça me paraît effectivement toujours bon à prendre mais pas de test en plus parce que je ne sais pas par quel biais ce problème pourrait arriver, la suppression d'une source de données utilisée est interdite par exemple.

#22

Mis à jour par Thomas Noël il y a environ 2 ans

Valentin Deniaud a écrit :

Branche à jour avec check_datasources=False, ça me paraît effectivement toujours bon à prendre mais pas de test en plus parce que je ne sais pas par quel biais ce problème pourrait arriver, la suppression d'une source de données utilisée est interdite par exemple.

Faignasse :) C'est accordé cependant.

#23

Mis à jour par Thomas Noël il y a environ 2 ans

  • Statut changé de Solution proposée à Solution validée

"Branche à jour", j'avais pas bien lu, go.

#24

Mis à jour par Valentin Deniaud il y a environ 2 ans

  • Statut changé de Solution validée à Résolu (à déployer)
commit 885dc8c2de097bcffccb82138b38dfc0e8edae02
Author: Valentin Deniaud <vdeniaud@entrouvert.com>
Date:   Tue Dec 14 10:05:02 2021 +0100

    workflows: copy action from one status to another (#57894)
#25

Mis à jour par Transition automatique il y a environ 2 ans

  • Statut changé de Résolu (à déployer) à Solution déployée
#26

Mis à jour par Transition automatique il y a environ 2 ans

Automatic expiration

#27

Mis à jour par Marie Kuntz il y a presque 2 ans

  • Dupliqué par Development #30622: [Workflow] Permettre de dupliquer les actions, les déplacer d'un statut à un autre ajouté

Formats disponibles : Atom PDF