Projet

Général

Profil

Bug #26872

enregistrement en donnée de traitement HS ?

Ajouté par Thomas Noël il y a plus de 5 ans. Mis à jour il y a plus de 5 ans.

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

0%

Temps estimé:
Patch proposed:
Oui
Planning:


Fichiers

Révisions associées

Révision 89675bbd (diff)
Ajouté par Frédéric Péters il y a plus de 5 ans

tests: check behaviour of global actions jumping to current status (#26872)

Historique

#1

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

worked for me : https://demarches-quimper.test.entrouvert.org/signalements/signaler-un-incident-de-voirie/35/

(je dirais qu'un truc a échoué avant d'arriver à cette action)

#2

Mis à jour par Victor Claudet il y a plus de 5 ans

Retesté, en fait le clique sur l'action globale "Ressoumettre" qui semble ne pas prendre en compte les actions du statut demande reçue.
Si on clique sur l'action globale "Ressoumettre" depuis le statut "Demande reçue" comme l'action globle renvoie sur le même statut (Demande Reçue) les action ne sont pas effectuée.

De mémoire il me semble qu'il y a une sécurité pour que l'utilisation d'une action automatique sur un même statut soit bloquée. Hors toutes les actions globales manuelles sont basées sur une action de changement de statut automatique... Et donc l'action manuelle est vue comme une action automatique.

#3

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

(attention, l'action "ressoumettre" dont il est question ici, ce n'est pas du tout l'action "ressoumettre", c'est un bouton qui a ce libellé, mais l'action c'est un saut vers le statut "demande reçue").

Situation : on est dans le statut "demande reçue", on a une action globale dont le job est d'aller dans "demande reçue", elle ne fait rien.

Ce qui se passe, elle fait un perform_items(),

    for item in items:
        if not item.check_condition(formdata):
            continue
        try:
            url = item.perform(formdata) or url
        except AbortActionException:
            break
        if formdata.status != old_status:
            break

Donc exécution des différentes actions renseignées dans l'action globale, jusqu'à sortir de la boucle pour arriver à la suite du perform_items() :

    if formdata.status != old_status:
        if not formdata.evolution:
            formdata.evolution = []
        evo = Evolution()
        evo.time = time.localtime()
        evo.status = formdata.status
        formdata.evolution.append(evo)
        formdata.store()
        # performs the items of the new status
        wf_status = formdata.get_status()
        url = perform_items(wf_status.items, formdata, depth=depth-1) or url

mais le statut n'a pas changé, il n'y a donc pas exécution de son contenu, clap de fin.

C'est un comportement plutôt difficile à changer, on n'a a priori pas envie d'exécuter les actions du statut courant dès qu'on clique sur une action globale. J'en serais donc plutôt à documenter le fait : une action globale, si elle est un saut vers le statut courant, ne provoquera pas l'exécution de ce statut.

#4

Mis à jour par Thomas Noël il y a plus de 5 ans

  • Privée changé de Oui à Non
#5

Mis à jour par Thomas Noël il y a plus de 5 ans

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

Frédéric Péters a écrit :

C'est un comportement plutôt difficile à changer, on n'a a priori pas envie d'exécuter les actions du statut courant dès qu'on clique sur une action globale. J'en serais donc plutôt à documenter le fait : une action globale, si elle est un saut vers le statut courant, ne provoquera pas l'exécution de ce statut.

D'accord avec ça ; pas simple de faire autrement.

#6

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

  • Statut changé de Solution validée à Résolu (à déployer)

Je pousse ce test. Et je laisse l'information ruisseler vers la documentation.

commit 89675bbdcb64f4b4425efb31a207eefef61792ba
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Mon Oct 1 18:13:47 2018 +0200

    tests: check behaviour of global actions jumping to current status (#26872)
#7

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

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

Formats disponibles : Atom PDF