Projet

Général

Profil

0001-planitec-add-getreservationsinfo-endpoint-31625.patch

Emmanuel Cazenave, 03 avril 2019 17:34

Télécharger (1,66 ko)

Voir les différences:

Subject: [PATCH] planitec: add  getreservationsinfo endpoint (#31625)

 passerelle/contrib/planitech/models.py | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)
passerelle/contrib/planitech/models.py
674 674
                self._get_places_referential(), kwargs)
675 675
        }
676 676

  
677
    @endpoint(description_get=_('Get reservation infos'), methods=['get'], perm='can_access')
678
    def getreservationsinfo(self, request, reservation_id):
679
        params = {'reservationIdentifiers': [float(reservation_id)]}
680
        data = self._call_planitech(self.requests.post, 'getReservationsInfo', params)
681
        data = data.get('requestedReservations', [])
682

  
683
        res = {}
684
        # Delete circular references that are not json serializable
685
        if data:
686
            res = data[0]
687
            if 'activity' in res and 'reservations' in res['activity']:
688
                del res['activity']['reservations']
689
            if 'contractor' in res and 'reservations' in res['contractor']:
690
                del res['contractor']['reservations']
691

  
692
        return {'data': res}
693

  
677 694
    @endpoint(description_get=_('Get reservation types'), methods=['get'], perm='can_access')
678 695
    def getreservationtypes(self, request):
679 696
        return {'data': self.generic_call('getReservationTypes', 'types')}
680
-