backoffice: use dedicated SQL query to get resolution times (#7107) #1059

Merged
fpeters merged 1 commits from wip/7107-form-resolution-times-local-stat into main 2024-01-29 12:11:37 +01:00
Owner

Ces pages sont obsolètes mais plutôt que rejeter le ticket, comme on a désormais une méthode SQL dédiée, l'utiliser ici. (le fonctionnement est un peu différent, le code actuel prenait comme t0 le formdata.receipt_time, le code SQL prend le timestamp de l'évolution correspondant au premier statut) (ça peut donner un résultat différent si le workflow est modifié avec ajout d'un nouveau satut au début).

Ces pages sont obsolètes mais plutôt que rejeter le ticket, comme on a désormais une méthode SQL dédiée, l'utiliser ici. (le fonctionnement est un peu différent, le code actuel prenait comme t0 le formdata.receipt_time, le code SQL prend le timestamp de l'évolution correspondant au premier statut) (ça peut donner un résultat différent si le workflow est modifié avec ajout d'un nouveau satut au début).
fpeters force-pushed wip/7107-form-resolution-times-local-stat from da7e71e171 to 7bd4b21df8 2024-01-22 20:33:34 +01:00 Compare
fpeters reviewed 2024-01-22 20:42:24 +01:00
@ -153,2 +153,4 @@
else:
formdata.jump_status('finished')
# make sure both evolution times are not at the exact same second
formdata.evolution[-1].time = time.localtime(time.mktime(formdata.evolution[-2].time) + 60)
Author
Owner

Sinon je me trouvais avec des temps à zéro et ils étaient ignorés lors de

return [res_time for row in results if (res_time := row[1].total_seconds()) > 0]

(cf #86006).

Sinon je me trouvais avec des temps à zéro et ils étaient ignorés lors de ``` return [res_time for row in results if (res_time := row[1].total_seconds()) > 0] ``` (cf #86006).
@ -3149,3 +3149,3 @@
return r.getvalue()
def stats_resolution_time(self, values):
def stats_resolution_time(self, criterias):
Author
Owner

Dans values il y avait tous les formdata, on remplace par les critères.

Dans values il y avait tous les formdata, on remplace par les critères.
wcs/sql.py Outdated
@ -2340,0 +2343,4 @@
for criteria in extra_criterias:
# change attributes to point to the formdata table (f)
altered_criteria = copy.copy(criteria)
altered_criteria.attribute = f'f.{criteria.attribute}'
Author
Owner

La table formdata est renommée "f" et il faut la pointer explicitement (sinon un critère status est ambigu parce qu'il y a une colonne status sur la table formdata et une colonne status sur la table evolution).

La table formdata est renommée "f" et il faut la pointer explicitement (sinon un critère status est ambigu parce qu'il y a une colonne status sur la table formdata et une colonne status sur la table evolution).
fpeters changed title from WIP: backoffice: use dedicated SQL query to get resolution times (#7107) to backoffice: use dedicated SQL query to get resolution times (#7107) 2024-01-22 20:42:30 +01:00
fpeters force-pushed wip/7107-form-resolution-times-local-stat from 7bd4b21df8 to 5122ae94d6 2024-01-25 08:56:24 +01:00 Compare
fpeters force-pushed wip/7107-form-resolution-times-local-stat from 5122ae94d6 to 721f411692 2024-01-26 08:55:03 +01:00 Compare
lguerin approved these changes 2024-01-29 10:02:39 +01:00
fpeters merged commit 8b5c92fcc8 into main 2024-01-29 12:11:37 +01:00
fpeters deleted branch wip/7107-form-resolution-times-local-stat 2024-01-29 12:11:38 +01:00
Sign in to join this conversation.
No reviewers
No Label
No Milestone
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: entrouvert/wcs#1059
No description provided.