コード例 #1
0
ファイル: resource.py プロジェクト: levakin/openpay-python
    def request(self, method, url, params=None):
        if params is None:
            params = self._retrieve_params

        requestor = api.APIClient(self.api_key)
        response, api_key = requestor.request(method, url, params)

        if isinstance(response, list):
            for item in response:
                if 'object' not in list(item.keys()):
                    item.update({'object': self.get('item_type')})

            data = {
                'object': 'list',
                'count': len(response),
                'url': url,
                'data': response,
                "item_type": self.get('item_type')
            }

            response = data

        if isinstance(response, dict) and self.get('item_type'):
            if 'object' not in list(response.keys()):
                response.update({'object': self.get('item_type')})

        return convert_to_openpay_object(response, api_key)
コード例 #2
0
ファイル: resource.py プロジェクト: levakin/openpay-python
    def retrieve_as_merchant(cls, payout_id):
        params = {}
        api_key = getattr(cls, 'api_key', openpay.api_key)

        requestor = api.APIClient(api_key)
        url = "{0}/{1}".format(cls.class_url(), payout_id)
        response, api_key = requestor.request('get', url, params)
        return convert_to_openpay_object(response, api_key, 'payout')
コード例 #3
0
ファイル: resource.py プロジェクト: levakin/openpay-python
 def retrieve_as_merchant(cls, id):
     params = {}
     api_key = getattr(cls, 'api_key', openpay.api_key)
     cls._as_merchant = True
     requestor = api.APIClient(api_key)
     uid = utf8(id)
     url = "%s/%s" % (cls.class_url(), quote_plus(uid))
     response, api_key = requestor.request('get', url, params)
     return convert_to_openpay_object(response, api_key, 'charge')
コード例 #4
0
ファイル: resource.py プロジェクト: levakin/openpay-python
    def create(cls, api_key=None, **params):
        requestor = api.APIClient(api_key)
        url = cls.class_url(params)

        if "clean_params" in dir(cls):
            params = cls.clean_params(params)

        response, api_key = requestor.request('post', url, params)
        klass_name = cls.__name__.lower()
        return convert_to_openpay_object(response, api_key, klass_name)
コード例 #5
0
ファイル: resource.py プロジェクト: levakin/openpay-python
    def refund(cls, fee_id, **params):
        if hasattr(cls, 'api_key'):
            api_key = cls.api_key
        else:
            api_key = openpay.api_key

        requestor = api.APIClient(api_key)
        url = cls.class_url()
        url = "{0}/{1}/refund".format(url, fee_id)
        response, api_key = requestor.request('post', url, params)
        return convert_to_openpay_object(response, api_key, 'fee')
コード例 #6
0
ファイル: resource.py プロジェクト: levakin/openpay-python
    def as_merchant(cls):

        params = {}
        if hasattr(cls, 'api_key'):
            api_key = cls.api_key
        else:
            api_key = openpay.api_key

        requestor = api.APIClient(api_key)
        url = cls.class_url()
        response, api_key = requestor.request('get', url, params)
        return convert_to_openpay_object(response, api_key, 'charge')
コード例 #7
0
ファイル: resource.py プロジェクト: levakin/openpay-python
    def all(cls, api_key=None, **params):
        requestor = api.APIClient(api_key)
        url = cls.class_url(params)

        response, api_key = requestor.request('get', url, params)
        klass_name = cls.__name__.lower()
        for item in response:
            if 'object' not in list(item.keys()):
                item.update({'object': klass_name})

        data = {
            'object': 'list',
            'count': len(response),
            'url': url,
            'data': response,
            'item_type': klass_name,
        }

        return convert_to_openpay_object(data, api_key)
コード例 #8
0
ファイル: resource.py プロジェクト: levakin/openpay-python
 def create_as_merchant(cls, **params):
     api_key = getattr(cls, 'api_key', openpay.api_key)
     requestor = api.APIClient(api_key)
     response, api_key = requestor.request('post', cls.class_url(), params)
     return convert_to_openpay_object(response, api_key, 'payout')
コード例 #9
0
ファイル: resource.py プロジェクト: levakin/openpay-python
 def close_dispute(self):
     requestor = api.APIClient(self.api_key)
     url = self.instance_url() + '/dispute/close'
     response, api_key = requestor.request('post', url, {})
     self.refresh_from({'dispute': response}, api_key, True)
     return self.dispute
コード例 #10
0
ファイル: resource.py プロジェクト: levakin/openpay-python
 def update_dispute(self, **params):
     requestor = api.APIClient(self.api_key)
     url = self.instance_url() + '/dispute'
     response, api_key = requestor.request('post', url, params)
     self.refresh_from({'dispute': response}, api_key, True)
     return self.dispute