Projet

Général

Profil

0003-mdph13-add-a-text-property-to-dossiers-fixes-31116.patch

Benjamin Dauvergne, 06 mars 2019 12:18

Télécharger (3,75 ko)

Voir les différences:

Subject: [PATCH 3/3] mdph13: add a text property to dossiers (fixes #31116)

 passerelle/contrib/mdph13/models.py | 16 ++++++++++++++++
 tests/test_mdph13.py                |  6 ++++--
 2 files changed, 20 insertions(+), 2 deletions(-)
passerelle/contrib/mdph13/models.py
109 109

  
110 110
        # Reorganize entourage
111 111
        beneficiaire = data.get('beneficiaire', {})
112
        if not isinstance(beneficiaire, dict):
113
            raise APIError('beneficiaire-must-be-a-dict', data=data)
112 114
        entourage = beneficiaire.get('entourage')
113 115
        if entourage is not None:
114 116
            if not isinstance(entourage, list):
......
251 253
        qs.delete()
252 254
        return {'deleted': count}
253 255

  
256
    @classmethod
257
    def _make_display_name(cls, mdph_file):
258
        prenom = mdph_file.get('beneficiaire', {}).get('prenom', '')
259
        nom = mdph_file.get('beneficiaire', {}).get('nom', '')
260
        numero = mdph_file['numero']
261
        parts = []
262
        if prenom:
263
            parts.append(prenom)
264
        if nom:
265
            parts.append(nom.upper())
266
        parts.append(u'#%s' % numero)
267
        return ' '.join(parts)
268

  
254 269
    @endpoint(name='dossiers',
255 270
              description=_('Get datas for all links, or for a specified one'),
256 271
              perm='can_access',
......
298 313
                file_data.update(to_json().err_to_response(e))
299 314
            else:
300 315
                file_data.update({
316
                    'text': self._make_display_name(mdph_file),
301 317
                    'dossier': mdph_file,
302 318
                })
303 319
            data.append(file_data)
tests/test_mdph13.py
39 39
    "data": {
40 40
        "numero": FILE_NUMBER,
41 41
        "beneficiaire": {
42
            "nom": "MARTINI",
43
            "prenom": "ALFONSO",
42
            "nom": "Martini",
43
            "prenom": "Alfonso",
44 44
            "tel_mobile": "06 01 02 03 04",
45 45
            "tel_fixe": "04.01.02.03.04",
46 46
            "date_de_naissance": "1951-03-23",
......
409 409
    assert response['data'][0]['numero_dossier'] == FILE_NUMBER
410 410
    assert response['data'][0]['date_de_naissance'] == DOB.isoformat()
411 411
    assert response['data'][0]['dossier']['numero'] == FILE_NUMBER
412
    assert response['data'][0]['text'] == 'Alfonso MARTINI #%s' % FILE_NUMBER
412 413
    assert len(response['data'][0]['dossier']['beneficiaire']['entourage']) == 2
413 414
    assert len(response['data'][0]['dossier']['beneficiaire']['entourage']['parents']) == 2
414 415
    assert len(response['data'][0]['dossier']['beneficiaire']['entourage']['aidants']) == 1
......
431 432
    assert response['data']['numero_dossier'] == FILE_NUMBER
432 433
    assert response['data']['date_de_naissance'] == DOB.isoformat()
433 434
    assert response['data']['dossier']['numero'] == FILE_NUMBER
435
    assert response['data']['text'] == 'Alfonso MARTINI #%s' % FILE_NUMBER
434 436
    assert len(response['data']['dossier']['beneficiaire']['entourage']) == 2
435 437
    assert len(response['data']['dossier']['beneficiaire']['entourage']['parents']) == 2
436 438
    assert len(response['data']['dossier']['beneficiaire']['entourage']['aidants']) == 1
437
-