48 lines
1.4 KiB
Python
48 lines
1.4 KiB
Python
import requests
|
|
import json
|
|
|
|
|
|
class Atol:
|
|
def __init__(self, token):
|
|
self.token = token
|
|
# Вызовы функций
|
|
self.load_info()
|
|
# self.get_token()
|
|
|
|
def load_info(self):
|
|
self.url = "https://online.atol.ru/possystem/v4/"
|
|
self.group_id = 'jkhsakha-ru_3289'
|
|
|
|
def get_headers(self):
|
|
headers_dict = {
|
|
"Content-type": "application/json",
|
|
"charset": "utf-8",
|
|
"Token": self.token, }
|
|
return headers_dict
|
|
|
|
def get_request(self, method, url, data):
|
|
if method == "post":
|
|
r = requests.post(self.url+url, data=json.dumps(data),
|
|
headers=self.get_headers())
|
|
else:
|
|
r = requests.get(self.url+url, headers=self.get_headers())
|
|
r.encoding = "utf-8"
|
|
return json.loads(r.text)
|
|
|
|
def get_token(self, login, password):
|
|
self.login = login
|
|
self.password = password
|
|
d = {"login": self.login, "pass": self.password}
|
|
self.token, _, self.timestamp = self.get_request(
|
|
"post", "getToken", d).values()
|
|
return self.token
|
|
|
|
def set_sell(self, reciept, is_refund):
|
|
func = '/sell' if is_refund == 0 else '/sell_refund'
|
|
s = self.get_request('post', self.group_id+func, reciept)
|
|
return s
|
|
|
|
def get_reciepts(self, uuid):
|
|
r = self.get_request('get', self.group_id+'/' + 'report/'+uuid, None)
|
|
return r
|