From b02406094bfe9dc83312824ca01f04c3000272ac Mon Sep 17 00:00:00 2001 From: Nicolas Selva Date: Thu, 1 Jun 2023 12:21:49 +0200 Subject: [PATCH] [MTELESENA-22]rework liste_type_rdv_plusieurs_personnes and liste_type_rdv_nombres_personnes for multiple urls --- .../templatetags/imio_teleservices.py | 34 +++++++++++++++---- 1 file changed, 28 insertions(+), 6 deletions(-) diff --git a/imio_teleservices_templatetags/templatetags/imio_teleservices.py b/imio_teleservices_templatetags/templatetags/imio_teleservices.py index 37dc8db..3333fb7 100644 --- a/imio_teleservices_templatetags/templatetags/imio_teleservices.py +++ b/imio_teleservices_templatetags/templatetags/imio_teleservices.py @@ -176,26 +176,48 @@ def is_valid_tva_number(tva_number, formatage=True): def liste_type_rdv_plusieurs_personnes(value): """ Anciennement liste_type_general_rdv.py - value : (str) url api liste des types de rendez-vous + value : (str) urls api liste des types de rendez-vous return : (list[str]) liste des différent type de rendez-vous sans - x personnes """ + value = value.strip() headers = {"Accept": "application/json"} - liste = requests.get(value, headers=headers).json() - return list(set([re.sub(r" (pour|-) [0-9]+ personne(s)?$", "", x["text"]) for x in liste["data"]])) + meetings_agendas = [] + for url in value.split(" "): + meetings_agendas.append(requests.get(url, headers=headers).json()) + + meetings_types = [] + for meetings_agenda in meetings_agendas: + meetings_types.extend( + list( + set( + [ + re.sub(r" (pour|-) [0-9]+ personne(s)?$", "", x["text"]) + for x in meetings_agenda["data"] + ] + ) + ) + ) + return meetings_types @register.filter def liste_type_rdv_nombres_personnes(value, arg): """ Anciennement liste_type_rdv.py - value : (str) url api liste des type de rendez-vous + value : (str) urls api liste des type de rendez-vous arg : (str) type de rendez-vous return : (list[str]) liste des rendez-vous de type arg """ + value = value.strip() headers = {"Accept": "application/json"} - liste = requests.get(value, headers=headers).json() + meetings_agendas = [] + for url in value.split(" "): + meetings_agendas.append(requests.get(url, headers=headers).json()) - return [x for x in liste["data"] if arg in x["text"]] + meetings_types = [] + for meetings_agenda in meetings_agendas: + meetings_types.extend([x for x in meetings_agenda["data"] if arg in x["text"]]) + return meetings_types @register.filter