toulouse-maelis: add natures filter on ActivityNatureType referential (#74784) #121
|
@ -2223,7 +2223,7 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
'type': 'date',
|
||||
},
|
||||
'nature_ids': {
|
||||
'description': "Codes des natures d'activité (par défaut les activités loisirs), séparées par des virgules",
|
||||
'description': "Codes des natures des activités (par défaut les activités loisirs), séparées par des virgules",
|
||||
'example_value': 'P,1,2',
|
||||
},
|
||||
},
|
||||
|
@ -2237,7 +2237,7 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
nature_filter_codes = [x.strip() for x in nature_ids.split(',') if x.strip()]
|
||||
labels = {
|
||||
'nature': "Nature de l'activité",
|
||||
'type': "Type d'activité",
|
||||
'type': "Type de l'activité",
|
||||
'public': 'Public',
|
||||
'day': 'Jours',
|
||||
}
|
||||
|
@ -2332,7 +2332,7 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
'person_id': {'description': "Numéro du responsale légal ou de l'enfant"},
|
||||
'nature_id': {'description': "Numéro de la nature des activités"},
|
||||
'type_ids': {
|
||||
'description': "Codes des types d'activités, séparées par des virgules",
|
||||
'description': "Codes des types des activités, séparées par des virgules",
|
||||
'example_value': 'EXTMERC,EXTVAC',
|
||||
},
|
||||
'start_date': {'description': 'Début de la période'},
|
||||
|
@ -2509,7 +2509,7 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
'person_id': {'description': "Numéro du responsale légal ou de l'enfant"},
|
||||
'nature_id': {'description': "Numéro de la nature des activités"},
|
||||
'type_ids': {
|
||||
'description': "Codes des types d'activités, séparées par des virgules",
|
||||
'description': "Codes des types des activités, séparées par des virgules",
|
||||
'example_value': 'EXTMERC,EXTVAC',
|
||||
},
|
||||
'start_date': {'description': 'Début de la période'},
|
||||
|
@ -2622,9 +2622,18 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
description="Lister les natures des activités",
|
||||
name='read-activity-nature-list',
|
||||
perm='can_access',
|
||||
parameters={
|
||||
'nature_ids': {
|
||||
'description': "Codes des natures des activités (tous par défaut), séparées par des virgules",
|
||||
'example_value': 'P,1,2',
|
||||
},
|
||||
},
|
||||
)
|
||||
def read_activity_nature_list(self, request):
|
||||
def read_activity_nature_list(self, request, nature_ids=None):
|
||||
data = self.get_referential('ActivityNatureType')
|
||||
if nature_ids:
|
||||
codes = [x.strip() for x in nature_ids.split(',') if x.strip()]
|
||||
data = [x for x in data if x['id'] in codes]
|
||||
|
||||
groups = {}
|
||||
for group in data:
|
||||
|
@ -2912,7 +2921,7 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
name='read-nursery-list',
|
||||
perm='can_access',
|
||||
parameters={
|
||||
'activity_type': {'description': 'Type d\'activité.', 'example_value': 'CRECHCO'},
|
||||
'activity_type': {'description': "Type de l'activité.", 'example_value': 'CRECHCO'},
|
||||
'code_psu': {'description': 'Code PSU.', 'example_value': 'REGULAR'},
|
||||
},
|
||||
)
|
||||
|
@ -2930,7 +2939,7 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
name='get-nursery-geojson',
|
||||
perm='can_access',
|
||||
parameters={
|
||||
'activity_type': {'description': 'Type d\'activité.', 'example_value': 'CRECHCO'},
|
||||
'activity_type': {'description': "Type de l'activité.", 'example_value': 'CRECHCO'},
|
||||
'code_psu': {'description': 'Code PSU. (REGULAR par défaut)'},
|
||||
},
|
||||
)
|
||||
|
|
|
@ -4914,7 +4914,7 @@ def test_read_activity_list(con, app, freezer):
|
|||
'criterias': {
|
||||
'nature': {'text': "Nature de l'activité", 'data': {'4': 'ART PLASTIQUE'}, 'order': ['4']},
|
||||
'type': {
|
||||
'text': "Type d'activité",
|
||||
'text': "Type de l'activité",
|
||||
'data': {'activite-reguliere': 'ACTIVITE REGULIERE'},
|
||||
'order': ['activite-reguliere'],
|
||||
},
|
||||
|
@ -4954,7 +4954,7 @@ def test_read_activity_list(con, app, freezer):
|
|||
'reference_year': 1969,
|
||||
'all_criterias': {
|
||||
'nature': {'text': "Nature de l'activité", 'data': {}, 'order': []},
|
||||
'type': {'text': "Type d'activité", 'data': {}, 'order': []},
|
||||
'type': {'text': "Type de l'activité", 'data': {}, 'order': []},
|
||||
'public': {'text': 'Public', 'data': {}, 'order': []},
|
||||
'day': {'text': 'Jours', 'data': {}, 'order': []},
|
||||
},
|
||||
|
@ -5629,6 +5629,14 @@ def test_read_activity_nature_list(con, app):
|
|||
('ACCSOIR', 'Accueil du soir'),
|
||||
]
|
||||
|
||||
resp = app.get(url + '?nature_ids=P,L,S')
|
||||
assert resp.json['err'] == 0
|
||||
assert [(x['id'], x['text']) for x in resp.json['data']] == [
|
||||
('P', 'Loisirs'),
|
||||
('L', 'Loisirs Enfants'),
|
||||
('S', 'Loisirs Senior'),
|
||||
]
|
||||
|
||||
|
||||
def test_read_ape_indicator_list(con, app):
|
||||
url = get_endpoint('read-ape-indicators-list')
|
||||
|
|
Loading…
Reference in New Issue