toulouse-maelis: add service filter on get_nursery_geojson (#81538)
gitea/passerelle/pipeline/head This commit looks good
Details
gitea/passerelle/pipeline/head This commit looks good
Details
This commit is contained in:
parent
bc62bdc3fd
commit
49226aca44
|
@ -3888,15 +3888,26 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
parameters={
|
||||
'activity_type': {'description': "Type de l'activité.", 'example_value': 'CRECHCO'},
|
||||
'code_psu': {'description': 'Code PSU. (REGULAR par défaut)'},
|
||||
'service_ids': {
|
||||
'description': 'Codes des services à filtrer, séparées par des virgules.',
|
||||
'example_value': 'A10054639474, A10054639473',
|
||||
},
|
||||
},
|
||||
)
|
||||
def get_nursery_geojson(self, request, activity_type=None, code_psu='REGULAR'):
|
||||
def get_nursery_geojson(self, request, activity_type=None, code_psu='REGULAR', service_ids=None):
|
||||
nurseries = self.get_referential('Nursery')
|
||||
geojson = {
|
||||
'type': 'FeatureCollection',
|
||||
'features': [],
|
||||
}
|
||||
|
||||
service_codes = []
|
||||
if service_ids:
|
||||
service_codes = [x.strip() for x in str(service_ids or '').split(',') if x.strip()]
|
||||
|
||||
for item in nurseries:
|
||||
if service_codes and item.get('idService') not in service_codes:
|
||||
continue
|
||||
if activity_type and item['activityType']['code'] != activity_type:
|
||||
continue
|
||||
if not item['place']['longitude'] or not item['place']['latitude']:
|
||||
|
|
|
@ -10312,6 +10312,18 @@ def test_get_nursery_geojson(con, app):
|
|||
},
|
||||
}
|
||||
|
||||
params = {
|
||||
'activity_type': 'CRECHFAM',
|
||||
'code_psu': 'REGULAR',
|
||||
'service_ids': 'A10049329048,A10049327627',
|
||||
}
|
||||
resp = app.get(url, params=params)
|
||||
assert resp.json['err'] == 0
|
||||
assert len(resp.json['features']) == 2
|
||||
assert all(
|
||||
x['properties']['idService'] in ['A10049329048', 'A10049327627'] for x in resp.json['features']
|
||||
)
|
||||
|
||||
|
||||
def test_create_nursery_demand(ape_service, con, app):
|
||||
def request_check(request):
|
||||
|
|
Loading…
Reference in New Issue