Facturation: ajouter des liens vers les objets depuis la page des lignes non facturées (#75100) #34

Merged
lguerin merged 3 commits from wip/75100-invoicing-non-invoiced-lines-links into main 2023-03-23 16:47:20 +01:00
Owner
No description provided.
Author
Owner

0001: pour harmoniser les écrans
0002: le dev
0003: déplacement de tests qui dépendent de la régie seulement et non d'une campagne

0001: pour harmoniser les écrans 0002: le dev 0003: déplacement de tests qui dépendent de la régie seulement et non d'une campagne
lguerin force-pushed wip/75100-invoicing-non-invoiced-lines-links from cf64dd80e7 to 591bd0afaa 2023-03-10 10:13:01 +01:00 Compare
lguerin force-pushed wip/75100-invoicing-non-invoiced-lines-links from 591bd0afaa to 9e6c2905c6 2023-03-10 10:30:29 +01:00 Compare
lguerin force-pushed wip/75100-invoicing-non-invoiced-lines-links from 9e6c2905c6 to cb4edcb6a0 2023-03-16 10:59:39 +01:00 Compare
lguerin force-pushed wip/75100-invoicing-non-invoiced-lines-links from cb4edcb6a0 to 933fe292da 2023-03-17 09:13:37 +01:00 Compare
lguerin changed target branch from wip/75083-invoicing-list-invoice-in-regie to main 2023-03-21 12:09:33 +01:00
lguerin force-pushed wip/75100-invoicing-non-invoiced-lines-links from 933fe292da to d01faf0c05 2023-03-23 10:52:57 +01:00 Compare
Owner

Merci pour le rebasage, je commence à relire.

Merci pour le rebasage, je commence à relire.
pmarillonnet approved these changes 2023-03-23 16:12:59 +01:00
pmarillonnet left a comment
Owner

Quelques petites remarques à la lecture du code, plus pour ma compréhension personnelle qu’autre chose.

Quelques petites remarques à la lecture du code, plus pour ma compréhension personnelle qu’autre chose.
@ -482,0 +485,4 @@
if not settings.KNOWN_SERVICES.get('chrono'):
return
chrono = list(settings.KNOWN_SERVICES['chrono'].values())[0]
chrono_url = chrono.get('url') or ''
Owner

Pas compris pourquoi on cherche quand même à retrouver l’URL de l’événement chrono lorsque chrono.get('url') est évalué à False et qu’on se retrouve avec une chaîne vide à la place. C’est quoi le cas qui justifierait cela et dans lequel on ne se retrouverait pas avec une URL erronée au final ?

Pas compris pourquoi on cherche quand même à retrouver l’URL de l’événement chrono lorsque `chrono.get('url')` est évalué à `False` et qu’on se retrouve avec une chaîne vide à la place. C’est quoi le cas qui justifierait cela et dans lequel on ne se retrouverait pas avec une URL erronée au final ?
Author
Owner

En effet, ça doit etre un copier/coller d'ailleurs, je vais changer ça

En effet, ça doit etre un copier/coller d'ailleurs, je vais changer ça
lguerin marked this conversation as resolved
@ -48,2 +48,3 @@
</td>
<td><a class="details-toggle" href="#">{% trans "see details" %}</a></td>
<td>
<span class="togglable"></span>
Owner

Ok, pas très à l’aise avec le bout de JS qui vient remplir ces <span class="toggable"/> d’abord vides dans les gabarits, alors je vais tenter de recopier les données du test écrit dans un shell django, et constater le résultat.

Ok, pas très à l’aise avec le bout de JS qui vient remplir ces `<span class="toggable"/>` d’abord vides dans les gabarits, alors je vais tenter de recopier les données du test écrit dans un shell django, et constater le résultat.
Owner

Ok, testé en local, c’est bon pour moi.

Ok, testé en local, c’est bon pour moi.
@ -36,0 +36,4 @@
{% if line.event.agenda %}
<br />
<a href="{% url 'lingo-manager-agenda-detail-redirect' line.event.agenda %}">{% trans "see agenda" %}</a>
{% if line.chrono_event_url %}- <a href="{{ line.chrono_event_url }}">{% trans "see event" %}</a>{% endif %}
Owner

Juste par curiosité, c’est dans quel cas qu’on est en mesure de rediriger vers lingo-manager-agenda-detail mais pas en mesure de retrouver une URL d’événement correspondant côté chrono ?
C’est pour tâcher d’avoir un fonctionnement un minimum standalone dans lingo, ou bien il y a vraiment des cas où ça survient ?

Juste par curiosité, c’est dans quel cas qu’on est en mesure de rediriger vers `lingo-manager-agenda-detail` mais pas en mesure de retrouver une URL d’événement correspondant côté chrono ? C’est pour tâcher d’avoir un fonctionnement un minimum standalone dans lingo, ou bien il y a vraiment des cas où ça survient ?
Author
Owner

Non en effet ça ne devrait pas arriver, si on a pu lancer une campagne de facturation, c'est qu'on a pu synchroniser les agendas chronos; aussi, dans les lignes de facturation, on doit retrouver dans le json event le slug de l'event, et on doit être en mesure d'avoir une url.
Ce ne sont que des précautions :)

Non en effet ça ne devrait pas arriver, si on a pu lancer une campagne de facturation, c'est qu'on a pu synchroniser les agendas chronos; aussi, dans les lignes de facturation, on doit retrouver dans le json `event` le slug de l'event, et on doit être en mesure d'avoir une url. Ce ne sont que des précautions :)
Owner

Ok, c’est ce qu’il me semblait, merci.

Ok, c’est ce qu’il me semblait, merci.
@ -64,0 +62,4 @@
var $tr = $toggle.parents('tr');
var line_id = $tr.data('line-id');
var $details = $('tr[data-details-for-line-id=' + line_id + ']');
$tr.toggleClass('toggled').toggleClass('untoggled');
Owner

Typiquement le genre de ligne où je comprends rien :)
Même en lisant la doc JQuery c’est pas plus clair.
Je vais me contenter d’injecter des données dans mon devinst et tâcher de reproduire le comportement de repliabilité/dépliabilité, ça vaudra pour relecture du code…

Typiquement le genre de ligne où je comprends rien :) Même en lisant la doc JQuery c’est pas plus clair. Je vais me contenter d’injecter des données dans mon devinst et tâcher de reproduire le comportement de repliabilité/dépliabilité, ça vaudra pour relecture du code…
@ -200,0 +462,4 @@
'agenda': 'foobar',
}
line.save()
resp = app.get('/manage/invoicing/regie/%s/non-invoiced-lines/' % regie.pk)
Owner

Ok, le test est clair. Nickel.
Juste comme dit plus haut, j’ai du mal à voir ”dans la vraie vie” quand surviendraient les cas où le lien “see agenda” est visible, mais où il manque le nom d’agenda et le slug d’événement nécessaires à la génération du lien correspondant coté chrono.

Ok, le test est clair. Nickel. Juste comme dit plus haut, j’ai du mal à voir ”dans la vraie vie” quand surviendraient les cas où le lien “see agenda” est visible, mais où il manque le nom d’agenda et le slug d’événement nécessaires à la génération du lien correspondant coté chrono.
Owner

(Oops, je voulais juste publier les commentaires et en fait j’ai approuvé la PR, pas bien grave, les commentaires ne remettent pas vraiment en question le code écrit.)

(Oops, je voulais juste publier les commentaires et en fait j’ai approuvé la PR, pas bien grave, les commentaires ne remettent pas vraiment en question le code écrit.)
lguerin added 2 commits 2023-03-23 16:33:36 +01:00
Owner

Ack pour de vrai cette fois-ci.

Ack pour de vrai cette fois-ci.
lguerin merged commit 46e2a92cbc into main 2023-03-23 16:47:20 +01:00
lguerin deleted branch wip/75100-invoicing-non-invoiced-lines-links 2023-03-23 16:47:20 +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/lingo#34
No description provided.