toulouse-maelis: add place criteria to catalog (#76677) #210

Merged
fpeters merged 1 commits from wip/76677-maelis-place-criteria into main 2023-04-17 06:31:25 +02:00
3 changed files with 18 additions and 4 deletions

View File

@ -2635,6 +2635,7 @@ class ToulouseMaelis(BaseResource, HTTPResource):
'type': "Type de l'activité",
'public': 'Public',
'day': 'Jours',
'place': 'Lieu',
}
day_names = ['Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi', 'Dimanche']
all_criterias = {key: {'text': value, 'data': {}} for key, value in labels.items()}
@ -2710,8 +2711,11 @@ class ToulouseMaelis(BaseResource, HTTPResource):
update_criterias_order_field(criterias, ['public'])
for place in unit.pop('placeList'):
criterias['place']['data'] = {}
place['id'] = place['id']
place['text'] = place['lib2'] or place['lib']
add_criteria('place', place['id'], place['text'])
update_criterias_order_field(criterias, ['place'])
data.append(
{
@ -2730,7 +2734,7 @@ class ToulouseMaelis(BaseResource, HTTPResource):
'meta': {
'reference_year': reference_year,
'all_criterias': all_criterias,
'all_criterias_order': ['nature', 'type', 'public', 'day'],
'all_criterias_order': ['nature', 'type', 'public', 'day', 'place'],
},
}

View File

@ -616,8 +616,8 @@
<dateMaxMajPrev>2023-01-30T23:59:00+01:00</dateMaxMajPrev>
</calendList>
<placeList>
<id>A10053179226</id>
<lib>Centre Culturel ALBAN MINVILLE</lib>
<id>A10053179227</id>
<lib>Un autre centre culturel</lib>
<adresse>
<num>0</num>
</adresse>

View File

@ -5778,6 +5778,11 @@ def test_read_activity_list(activity_service, con, app):
'data': {'activite-reguliere': 'ACTIVITE REGULIERE'},
'order': ['activite-reguliere'],
},
'place': {
'text': 'Lieu',
'data': {'A10053179226': 'Centre Culturel ALBAN MINVILLE'},
'order': ['A10053179226'],
},
'public': {
'text': 'Public',
'data': {
@ -5794,6 +5799,10 @@ def test_read_activity_list(activity_service, con, app):
},
}
# make sure activities have a single place defined

Oui, le lieu sera forcément un critère ayant une unique valeur sur chaque inscription,
puisque le lieu fait parti de ses identifiants.
(typo s/hava/have/)

Oui, le lieu sera forcément un critère ayant une unique valeur sur chaque inscription, puisque le lieu fait parti de ses identifiants. (typo s/hava/have/)

Vu, merci.

Vu, merci.
for item in resp.json['data']:
assert len(item['criterias']['place']['order']) == 1
con.loisir_nature_codes = 'X,L,S'
con.save()
resp = app.get(url, params=params)
@ -5808,8 +5817,9 @@ def test_read_activity_list(activity_service, con, app):
'type': {'text': "Type de l'activité", 'data': {}, 'order': []},
'public': {'text': 'Public', 'data': {}, 'order': []},
'day': {'text': 'Jours', 'data': {}, 'order': []},
'place': {'text': 'Lieu', 'data': {}, 'order': []},
},
'all_criterias_order': ['nature', 'type', 'public', 'day'],
'all_criterias_order': ['nature', 'type', 'public', 'day', 'place'],
},
'err': 0,
}