toulouse-maelis: alway call zeep serializer (#74128)
This commit is contained in:
parent
613e5ad205
commit
4dd3fb1311
|
@ -76,9 +76,10 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
client = self.get_client(wsdl_short_name)
|
||||
method = getattr(client.service, service)
|
||||
try:
|
||||
return method(**kwargs)
|
||||
response = method(**kwargs)
|
||||
except zeep.exceptions.Fault as e:
|
||||
raise APIError(e.message)
|
||||
return serialize_object(response)
|
||||
|
||||
def check_status(self):
|
||||
assert self.call('Family', 'isWSRunning')
|
||||
|
@ -109,8 +110,7 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
|
||||
def get_referential_data(self, service_name, referential_name):
|
||||
try:
|
||||
response = self.call(service_name, 'read' + referential_name + 'List')
|
||||
return serialize_object(response)
|
||||
return self.call(service_name, 'read' + referential_name + 'List')
|
||||
except Exception as e:
|
||||
raise UpdateError('Service indisponible : %s' % str(e))
|
||||
|
||||
|
@ -185,17 +185,17 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
{
|
||||
'id': str(year),
|
||||
'text': '%s-%s' % (year, year + 1),
|
||||
'data': serialize_object(response),
|
||||
'data': response,
|
||||
}
|
||||
)
|
||||
self.update_referential('ActivityCatalog', data, 'id', 'text')
|
||||
|
||||
def update_ape_referentials(self):
|
||||
indicators = self.call('Ape', 'readApeIndicatorList')
|
||||
self.update_referential('ApeIndicator', serialize_object(indicators), 'level', 'level')
|
||||
self.update_referential('ApeIndicator', indicators, 'level', 'level')
|
||||
|
||||
nurseries = self.call('Ape', 'readNurseryList', request={})
|
||||
self.update_referential('Nursery', serialize_object(nurseries), 'idActivity', 'libelle')
|
||||
self.update_referential('Nursery', nurseries, 'idActivity', 'libelle')
|
||||
|
||||
def daily(self):
|
||||
try:
|
||||
|
@ -244,9 +244,7 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
raise APIError('User not linked to family')
|
||||
|
||||
def get_family_raw(self, family_id, **kwargs):
|
||||
response = self.call('Family', 'readFamily', dossierNumber=family_id, **kwargs)
|
||||
data = serialize_object(response)
|
||||
return data
|
||||
return self.call('Family', 'readFamily', dossierNumber=family_id, **kwargs)
|
||||
|
||||
def get_rl_raw(self, family_id, rl_id, **kwargs):
|
||||
data = self.get_family_raw(family_id, **kwargs)
|
||||
|
@ -540,22 +538,18 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
'dateStartActivity': start_date,
|
||||
'dateEndActivity': end_date,
|
||||
}
|
||||
response = self.call(
|
||||
return self.call(
|
||||
'Activity', 'getPersonCatalogueActivity', getPersonCatalogueActivityRequestBean=params
|
||||
)
|
||||
data = serialize_object(response)
|
||||
return data
|
||||
|
||||
def get_basket_raw(self, family_id):
|
||||
response = self.call(
|
||||
return self.call(
|
||||
'Activity',
|
||||
'getFamilyBasket',
|
||||
getFamilyBasketRequestBean={
|
||||
'numFamily': family_id,
|
||||
},
|
||||
)
|
||||
data = serialize_object(response)
|
||||
return data
|
||||
|
||||
@endpoint(
|
||||
display_category='Famille',
|
||||
|
@ -1096,15 +1090,14 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
self.assert_family_payload_in_referential(post_data)
|
||||
|
||||
response = self.call('Family', 'createFamily', **post_data)
|
||||
data = serialize_object(response)
|
||||
family_id = data.get('number')
|
||||
family_id = response.get('number')
|
||||
if not family_id:
|
||||
errors = data.get('rl1ErrorList') + data.get('childErrorList')
|
||||
errors = response.get('rl1ErrorList') + response.get('childErrorList')
|
||||
raise APIError(' ; '.join(errors))
|
||||
|
||||
if NameID:
|
||||
Link.objects.create(resource=self, name_id=NameID, family_id=family_id)
|
||||
return {'data': data}
|
||||
return {'data': response}
|
||||
|
||||
@endpoint(
|
||||
display_category='Famille',
|
||||
|
@ -1128,12 +1121,11 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
post_data['emergencyPersonList'] = [{'personList': persons}]
|
||||
|
||||
response = self.call('Family', 'updateFamily', dossierNumber=family_id, **post_data)
|
||||
data = serialize_object(response)
|
||||
family_id = data.get('number')
|
||||
errors = data.get('childErrorList')
|
||||
family_id = response.get('number')
|
||||
errors = response.get('childErrorList')
|
||||
if errors:
|
||||
raise APIError(' ; '.join(errors))
|
||||
return {'data': data}
|
||||
return {'data': response}
|
||||
|
||||
@endpoint(
|
||||
display_category='Famille',
|
||||
|
@ -1149,10 +1141,9 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
self.assert_create_rl1_payload_in_referential(post_data)
|
||||
|
||||
response = self.call('Family', 'createFamily', **post_data)
|
||||
data = serialize_object(response)
|
||||
family_id = data.get('number')
|
||||
family_id = response.get('number')
|
||||
if not family_id:
|
||||
errors = data.get('rl1ErrorList') or []
|
||||
errors = response.get('rl1ErrorList') or []
|
||||
raise APIError(' ; '.join(errors))
|
||||
|
||||
if NameID:
|
||||
|
@ -1282,10 +1273,9 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
'child': post_data,
|
||||
}
|
||||
response = self.call('Family', 'createChild', **payload)
|
||||
data = serialize_object(response)
|
||||
child_id = data.get('number')
|
||||
child_id = response.get('number')
|
||||
if not child_id:
|
||||
errors = data.get('childErrorList') or []
|
||||
errors = response.get('childErrorList') or []
|
||||
raise APIError(' ; '.join(errors))
|
||||
return {'data': {'child_id': child_id}}
|
||||
|
||||
|
@ -1709,8 +1699,7 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
payload = {'addSuppliedDocumentRequestBean': post_data}
|
||||
payload['addSuppliedDocumentRequestBean']['numDossier'] = family_id
|
||||
response = self.call('Family', 'addSuppliedDocument', **payload)
|
||||
data = serialize_object(response)
|
||||
if data != 'OK':
|
||||
if response != 'OK':
|
||||
raise APIError('maelis fails to add the supplied document')
|
||||
return {'data': 'ok'}
|
||||
|
||||
|
@ -1745,8 +1734,7 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
}
|
||||
}
|
||||
response = self.call('Activity', 'getPersonScheduleList', **payload)
|
||||
result = serialize_object(response)
|
||||
for result_data in result or []:
|
||||
for result_data in response or []:
|
||||
for schedule in result_data['activityScheduleList']:
|
||||
activity = schedule['activity']
|
||||
if not activity['activityType']['natureSpec']:
|
||||
|
@ -1907,9 +1895,8 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
}
|
||||
}
|
||||
response = self.call('Activity', 'updatePersonSchedule', **payload)
|
||||
errors = serialize_object(response)
|
||||
if errors:
|
||||
raise APIError(' ; '.join(errors))
|
||||
if response:
|
||||
raise APIError(' ; '.join(response))
|
||||
|
||||
# sort changes
|
||||
activity_types = ['ACCMAT', 'RESTSCOL']
|
||||
|
@ -1988,8 +1975,7 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
'dateRef': dateRef,
|
||||
}
|
||||
response = self.call('Invoice', 'getDirectDebitOrder', **payload)
|
||||
data = serialize_object(response)
|
||||
return {'data': data}
|
||||
return {'data': response}
|
||||
|
||||
@endpoint(
|
||||
display_category='Inscriptions',
|
||||
|
@ -2047,11 +2033,11 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
'Site', 'readSchoolForAdressAndLevel', readSchoolForAdressAndLevelRequestBean=data
|
||||
)
|
||||
data = []
|
||||
for item in serialize_object(response):
|
||||
for item in response:
|
||||
item['id'] = item['idSchool']
|
||||
item['text'] = item['schoolName']
|
||||
data.append(item)
|
||||
return {'data': serialize_object(data)}
|
||||
return {'data': data}
|
||||
|
||||
@endpoint(
|
||||
display_category='Inscriptions',
|
||||
|
@ -2074,11 +2060,11 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
|
||||
response = self.call('Family', 'readSchoolForChildAndLevel', **data)
|
||||
data = []
|
||||
for item in serialize_object(response):
|
||||
for item in response:
|
||||
item['id'] = item['idSchool']
|
||||
item['text'] = item['schoolName']
|
||||
data.append(item)
|
||||
return {'data': serialize_object(data)}
|
||||
return {'data': data}
|
||||
|
||||
@endpoint(
|
||||
display_category='Inscriptions',
|
||||
|
@ -2100,15 +2086,14 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
response = self.call(
|
||||
'Family', 'getChildSubscribeSchoolInformation', getFamilySubscribeSchoolInfoRequestBean=data
|
||||
)
|
||||
data = serialize_object(response)
|
||||
if data['childSubscribeSchoolInformation'].get('subscribeSchoolInformation'):
|
||||
schools = data['childSubscribeSchoolInformation']['subscribeSchoolInformation'].get(
|
||||
if response['childSubscribeSchoolInformation'].get('subscribeSchoolInformation'):
|
||||
schools = response['childSubscribeSchoolInformation']['subscribeSchoolInformation'].get(
|
||||
'derogSchoolList'
|
||||
)
|
||||
for item in schools or []:
|
||||
item['id'] = item['idSchool']
|
||||
item['text'] = item['schoolName']
|
||||
return {'data': data}
|
||||
return {'data': response}
|
||||
|
||||
@endpoint(
|
||||
display_category='Inscriptions',
|
||||
|
@ -2121,7 +2106,7 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
)
|
||||
def create_child_school_pre_registration(self, request, post_data):
|
||||
response = self.call('Family', 'preSubscribeSchoolPerim', **post_data)
|
||||
return {'data': serialize_object(response)}
|
||||
return {'data': response}
|
||||
|
||||
@endpoint(
|
||||
display_category='Inscriptions',
|
||||
|
@ -2136,7 +2121,7 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
)
|
||||
def create_child_school_pre_registration_with_exemption(self, request, post_data):
|
||||
response = self.call('Family', 'presubscribeSchoolDerog', **post_data)
|
||||
return {'data': serialize_object(response)}
|
||||
return {'data': response}
|
||||
|
||||
@endpoint(
|
||||
display_category='Inscriptions',
|
||||
|
@ -2151,7 +2136,7 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
)
|
||||
def create_child_school_pre_registration_with_sibling(self, request, post_data):
|
||||
response = self.call('Family', 'presubscribeSchoolSibling', **post_data)
|
||||
return {'data': serialize_object(response)}
|
||||
return {'data': response}
|
||||
|
||||
@endpoint(
|
||||
display_category='Inscriptions',
|
||||
|
@ -2600,9 +2585,7 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
},
|
||||
'dateRef': ref_date,
|
||||
}
|
||||
response = self.call('Activity', 'getPersonUnitInfo', getPersonUnitInfoRequestBean=params)
|
||||
data = serialize_object(response)
|
||||
return {'data': data}
|
||||
return {'data': self.call('Activity', 'getPersonUnitInfo', getPersonUnitInfoRequestBean=params)}
|
||||
|
||||
@endpoint(
|
||||
display_category='Inscriptions',
|
||||
|
@ -2640,7 +2623,7 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
response = self.call('Activity', 'addPersonUnitBasket', **payload)
|
||||
if not response['controlResult']['controlOK']:
|
||||
raise APIError(response['controlResult']['message'])
|
||||
return {'data': serialize_object(response)}
|
||||
return {'data': response}
|
||||
|
||||
@endpoint(
|
||||
display_category='Inscriptions',
|
||||
|
@ -2706,7 +2689,7 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
'idBasketLine': line_id,
|
||||
},
|
||||
)
|
||||
return {'data': serialize_object(response)}
|
||||
return {'data': response}
|
||||
|
||||
@endpoint(
|
||||
display_category='Inscriptions',
|
||||
|
@ -2759,7 +2742,7 @@ class ToulouseMaelis(BaseResource, HTTPResource):
|
|||
'idBasket': basket['id'],
|
||||
},
|
||||
)
|
||||
return {'data': serialize_object(response)}
|
||||
return {'data': response}
|
||||
|
||||
@endpoint(
|
||||
display_category='Inscriptions',
|
||||
|
|
Loading…
Reference in New Issue