mirror of
https://github.com/retailcrm/api-client-python.git
synced 2024-11-25 22:46:04 +03:00
almost all methods
This commit is contained in:
parent
bbea2c891e
commit
8802a00345
175
Intaro.py
175
Intaro.py
@ -1,4 +1,4 @@
|
|||||||
import requests
|
import requests, json
|
||||||
|
|
||||||
class IntaroApy:
|
class IntaroApy:
|
||||||
"""Intaro Api wrapper"""
|
"""Intaro Api wrapper"""
|
||||||
@ -25,7 +25,7 @@ class IntaroApy:
|
|||||||
self.parameters = { 'apiKey': self.apiKey }
|
self.parameters = { 'apiKey': self.apiKey }
|
||||||
|
|
||||||
if statusCode > 400 or r.has_key('success') and r['success'] == False :
|
if statusCode > 400 or r.has_key('success') and r['success'] == False :
|
||||||
#TODO: ApiException
|
#TODO: raise ApiException
|
||||||
pass
|
pass
|
||||||
|
|
||||||
if r.has_key('generatedAt') :
|
if r.has_key('generatedAt') :
|
||||||
@ -36,6 +36,21 @@ class IntaroApy:
|
|||||||
|
|
||||||
return r
|
return r
|
||||||
|
|
||||||
|
def getErrorMessage(self, response) :
|
||||||
|
if type(response) is not dict : return ''
|
||||||
|
err = ''
|
||||||
|
|
||||||
|
if response.has_key('message'):
|
||||||
|
err = response['message']
|
||||||
|
elif response.has_key('error') :
|
||||||
|
err = response['error']['message']
|
||||||
|
elif response.has_key('errorMsg') :
|
||||||
|
err = response['errorMsg']
|
||||||
|
|
||||||
|
if len(err) == 0 : return 'Application Error'
|
||||||
|
|
||||||
|
return err
|
||||||
|
|
||||||
def orderGet(self, id, by='externalId') :
|
def orderGet(self, id, by='externalId') :
|
||||||
url = self.apiUrl + 'orders/' + str(id)
|
url = self.apiUrl + 'orders/' + str(id)
|
||||||
|
|
||||||
@ -44,3 +59,159 @@ class IntaroApy:
|
|||||||
|
|
||||||
return self.requestApi(url)
|
return self.requestApi(url)
|
||||||
|
|
||||||
|
def orderCreate(self, order) :
|
||||||
|
dataJson = json.dumps(order)
|
||||||
|
self.parameters['order'] = dataJson
|
||||||
|
|
||||||
|
url = self.apiUrl + 'orders/create'
|
||||||
|
return self.requestApi(url, 'POST')
|
||||||
|
|
||||||
|
def orderEdit(self, order) :
|
||||||
|
dataJson = json.dumps(order)
|
||||||
|
self.parameters['order'] = dataJson
|
||||||
|
|
||||||
|
url = self.apiUrl + 'orders/' + str(order['externalId']) + '/edit'
|
||||||
|
return self.requestApi(url, 'POST')
|
||||||
|
|
||||||
|
def orderUpload(self, orders) :
|
||||||
|
dataJson = json.dumps(orders)
|
||||||
|
self.parameters['orders'] = dataJson
|
||||||
|
|
||||||
|
url = self.apiUrl + 'orders/' + str(order['externalId']) + '/edit'
|
||||||
|
result = self.requestApi(url, 'POST')
|
||||||
|
|
||||||
|
if type(result) is dict and result.has_key('uploadedOrders') :
|
||||||
|
return result['uploadedOrders']
|
||||||
|
else :
|
||||||
|
return result
|
||||||
|
|
||||||
|
def orderFixExternalIds(self, orders) :
|
||||||
|
dataJson = json.dumps(orders)
|
||||||
|
self.parameters['orders'] = dataJson
|
||||||
|
|
||||||
|
url = self.apiUrl + 'orders/fix-external-ids'
|
||||||
|
return self.requestApi(url, 'POST')
|
||||||
|
|
||||||
|
def orderHistory(self, startDate='', endDate='', limit=100, offset=0) :
|
||||||
|
url = self.apiUrl + 'orders/history'
|
||||||
|
self.parameters['startDate'] = startDate
|
||||||
|
self.parameters['endDate'] = endDate
|
||||||
|
self.parameters['limit'] = limit
|
||||||
|
self.parameters['offset'] = offset
|
||||||
|
|
||||||
|
return self.requestApi(url)
|
||||||
|
|
||||||
|
def customerGet(self, id, by='externalId') :
|
||||||
|
url = self.apiUrl + 'customers/' + str(id)
|
||||||
|
|
||||||
|
if by != 'externalId' :
|
||||||
|
self.parameters['by'] = by
|
||||||
|
|
||||||
|
return self.requestApi(url)
|
||||||
|
|
||||||
|
def customers(self, phone=None, email=None, fio=None, limit=200, offset=0) :
|
||||||
|
url = self.apiUrl + 'customers'
|
||||||
|
|
||||||
|
if email :
|
||||||
|
self.parameters['email'] = email
|
||||||
|
if phone :
|
||||||
|
self.parameters['phone'] = phone
|
||||||
|
if fio :
|
||||||
|
self.parameters['fio'] = fio
|
||||||
|
|
||||||
|
self.parameters['limit'] = limit
|
||||||
|
self.parameters['offset'] = offset
|
||||||
|
|
||||||
|
return self.requestApi(url)
|
||||||
|
|
||||||
|
def customerCreate(self, customer) :
|
||||||
|
dataJson = json.dumps(customer)
|
||||||
|
self.parameters['customer'] = dataJson
|
||||||
|
|
||||||
|
url = self.apiUrl + 'customers/create'
|
||||||
|
return self.requestApi(url, 'POST')
|
||||||
|
|
||||||
|
def customerEdit(self, customer) :
|
||||||
|
dataJson = json.dumps(customer)
|
||||||
|
self.parameters['customer'] = dataJson
|
||||||
|
|
||||||
|
url = self.apiUrl + 'customers/' + customer['externalId'] + '/edit'
|
||||||
|
return self.requestApi(url, 'POST')
|
||||||
|
|
||||||
|
def customerUpload(self, customers) :
|
||||||
|
dataJson = json.dumps(customers)
|
||||||
|
self.parameters['customers'] = dataJson
|
||||||
|
|
||||||
|
url = self.apiUrl + 'customers/upload'
|
||||||
|
result = self.requestApi(url, 'POST')
|
||||||
|
|
||||||
|
if type(result) is dict and result.has_key('uploaded') :
|
||||||
|
return result['uploaded']
|
||||||
|
else :
|
||||||
|
return result
|
||||||
|
|
||||||
|
def deliveryTypesList(self) :
|
||||||
|
url = self.apiUrl + 'reference/delivery-types'
|
||||||
|
return self.requestApi(url)
|
||||||
|
|
||||||
|
def deliveryTypeEdit(self, deliveryType) :
|
||||||
|
dataJson = json.dumps(deliveryType)
|
||||||
|
self.parameters['deliveryType'] = dataJson
|
||||||
|
|
||||||
|
url = self.apiUrl + 'reference/delivery-types/' + deliveryType['code'] + '/edit'
|
||||||
|
return self.requestApi(url, 'POST')
|
||||||
|
|
||||||
|
def deliveryServicesList(self) :
|
||||||
|
url = self.apiUrl + 'reference/delivery-services'
|
||||||
|
return self.requestApi(url)
|
||||||
|
|
||||||
|
def deliveryServiceEdit(self, deliveryService) :
|
||||||
|
dataJson = json.dumps(deliveryService)
|
||||||
|
self.parameters['deliveryService'] = dataJson
|
||||||
|
|
||||||
|
url = self.apiUrl + 'reference/delivery-services/' + deliveryService['code'] + '/edit'
|
||||||
|
return self.requestApi(url, 'POST')
|
||||||
|
|
||||||
|
def paymentTypesList(self) :
|
||||||
|
url = self.apiUrl + 'reference/payment-types'
|
||||||
|
return self.requestApi(url)
|
||||||
|
|
||||||
|
def paymentTypesEdit(self, paymentType) :
|
||||||
|
dataJson = json.dumps(paymentType)
|
||||||
|
self.parameters['paymentType'] = dataJson
|
||||||
|
|
||||||
|
url = self.apiUrl + 'reference/payment-types/' + paymentType['code'] + '/edit'
|
||||||
|
return self.requestApi(url, 'POST')
|
||||||
|
|
||||||
|
def orderTypesList(self) :
|
||||||
|
url = self.apiUrl + 'reference/order-types'
|
||||||
|
return self.requestApi(url)
|
||||||
|
|
||||||
|
def orderTypesEdit(self, orderType) :
|
||||||
|
dataJson = json.dumps(orderType)
|
||||||
|
self.parameters['orderType'] = dataJson
|
||||||
|
|
||||||
|
url = self.apiUrl + 'reference/order-types/' + orderType['code'] + '/edit'
|
||||||
|
return self.requestApi(url, 'POST')
|
||||||
|
|
||||||
|
def orderMethodsList(self) :
|
||||||
|
url = self.apiUrl + 'reference/order-methods'
|
||||||
|
return self.requestApi(url)
|
||||||
|
|
||||||
|
def orderMethodsEdit(self, orderMethod) :
|
||||||
|
dataJson = json.dumps(orderMethod)
|
||||||
|
self.parameters['orderMethod'] = dataJson
|
||||||
|
|
||||||
|
url = self.apiUrl + 'reference/order-methods/' + orderMethod['code'] + '/edit'
|
||||||
|
return self.requestApi(url, 'POST')
|
||||||
|
|
||||||
|
def orderStatusesList(self) :
|
||||||
|
url = self.apiUrl + 'reference/statuses'
|
||||||
|
return self.requestApi(url)
|
||||||
|
|
||||||
|
def orderStatusEdit(self, status) :
|
||||||
|
dataJson = json.dumps(orderStatuse)
|
||||||
|
self.parameters['status'] = dataJson
|
||||||
|
|
||||||
|
url = self.apiUrl + 'reference/statuses/' + status['code'] + '/edit'
|
||||||
|
return self.requestApi(url, 'POST')
|
||||||
|
Loading…
Reference in New Issue
Block a user