diff --git a/taxcom_maverik_revers.py b/taxcom_maverik_revers.py new file mode 100644 index 0000000..8a2ac56 --- /dev/null +++ b/taxcom_maverik_revers.py @@ -0,0 +1,61 @@ +import json, requests +from datetime import datetime +from time import sleep + +ID = [ + ('7385440800019283','c9722276-9dce-11ef-86ff-8a456ecaea20','Хабаровск'), + # ('9961440300761252','34dfe5e2-9f7c-11ec-ed95-0cc47ab40806','Комсомольск_на_Амуре'), + # ('7385440800015768','7f8bb0cc-d7a5-11ee-85fe-8a456ecaea20','Береста 6'), + ] + +# while True: +CurDate = datetime(2025,6,13).date() +prevDate = datetime(2025,6,13).date() +try: + for fn, salepoint, kassa in ID: + data = {"salepoint": salepoint} + data = json.dumps(data, ensure_ascii=False).encode('utf8') + # result = requests.post('https://1c.maverik.ru/bso_maverik/hs/exchange/GetTaxcomCredentials', data=data, verify=False, allow_redirects=False, auth=('robot', 's38*Cqy2L*PB')) + print(fn, salepoint) + headers = { + "Content-Type": "application/json", + "Integrator-ID": "BFFFC47E-38BB-4845-8399-7C2F5AB11A3C" + } + data = { + "Login": "myasnikova@maverik.ru", + "Password": "qolabuyi" + } + result = requests.post('https://api-lk-ofd.taxcom.ru/API/v2/Login', headers=headers, data=json.dumps(data), timeout=(20, 240)) + print(result.text) + sessionToken = result.json()['sessionToken'] + headers = { + "Content-Type":"application/json", + "Session-Token": f"{sessionToken}" + } + print('Autorezation') + print(result.text) + try: + print('check 1') + result = requests.get(f"https://api-lk-ofd.taxcom.ru/API/v2/ShiftList?fn={fn}&begin={prevDate}T00:00:00&end={CurDate}T23:59:59", headers=headers, timeout=(20, 240)) + print(result.text) + shiftNumber = result.json()['records'][0]['shiftNumber'] + fnFactoryNumber = result.json()['records'][0]['fnFactoryNumber'] + except Exception as e: + print(e) + result = requests.get(f'https://api-lk-ofd.taxcom.ru/API/v2/DocumentList?fn={fn}&shift={shiftNumber}&type=3', headers=headers, timeout=(20, 240)) + # result = requests.get(f'https://api-lk-ofd.taxcom.ru/API/v2/DocumentList?fn={fn}&shift=27&type=3', headers=headers, timeout=(20, 240)) + cheks = result.json()['records'] + print(cheks) + data = {"salepoint": salepoint, + "res": str(cheks)} + data = json.dumps(data, ensure_ascii=False).encode('utf-8') + print(data) + result = requests.post('http://10.15.0.3/bso_maverik/hs/exchange/saveTaxcomDocs', data=data, allow_redirects=False, auth=('robot', 's38*Cqy2L*PB')) + # result = requests.post('https://1c.maverik.ru/bso_maverik/hs/exchange/saveTaxcomDocs', data=data, allow_redirects=False, auth=('robot', 's38*Cqy2L*PB')) + print('1C: ', result.text) + print(fn, salepoint, kassa) +except Exception as e: + print(e) +print('#################') +print('#################') +print('#################') \ No newline at end of file diff --git a/taxcom_revers.py b/taxcom_revers.py new file mode 100644 index 0000000..d80fef2 --- /dev/null +++ b/taxcom_revers.py @@ -0,0 +1,69 @@ +import json, requests +from datetime import datetime +from time import sleep + +# ID = [('7381440900834264','691807dd-2629-11e9-993e-f06a44526bea','Волгоград_Еременко'),] +# ID = [('7381440900835933','ee3baf4d-d98d-11e6-b191-e83935b036c7','Новороссийск'),] +# ID = [('7381440800374463','ad06d608-b690-11ed-87bd-0cc47ab40806','Самара_Кирова_виваленде '),] +# ID = [('7381440900834264','691807dd-2629-11e9-993e-f06a44526bea','Волгоград_Еременко'),] +ID = [('7381440800374463','ad06d608-b690-11ed-87bd-0cc47ab40806','Самара_Кирова_виваленде'),] +# ID = [('7381440900836042','147c9228-3d13-11ef-94eb-8a456ecaea20','Крымск_Синева'),] +# ID = [('9961440300763405','030c75c2-2f29-11eb-119f-0cc47ab40806','Волгоград_Энгельса'),] +# ID = [('7381440900836108','b4280c16-2629-11e9-993e-f06a44526bea','Краснодар_Привокзальная'),] +# ID = [('7381440900836108','b50bc5a3-12e1-11e5-9265-e83935b036c7','Краснодар_Привокзальная'),] + +# while True: +CurDate = datetime(2025,7,2).date() +prevDate = datetime(2025,7,2).date() +try: + # for taxcom in ID: + # fn = taxcom.partition(',')[0] + # salepoint = taxcom.partition(',')[2] + taxcom = ID[0] + fn = taxcom[0] + salepoint = taxcom[1] + data = {"salepoint": salepoint} + data = json.dumps(data, ensure_ascii=False).encode('utf8') + # result = requests.post('https://1c.maverik.ru/bso_maverik/hs/exchange/GetTaxcomCredentials', data=data, verify=False, allow_redirects=False, auth=('robot', 's38*Cqy2L*PB')) + print(fn, salepoint) + headers = { + "Content-Type": "application/json", + "Integrator-ID": "BFFFC47E-38BB-4845-8399-7C2F5AB11A3C" + } + data = { + "Login": "kassa@ip-tr.ru", + "Password": "123456" + } + result = requests.post('https://api-lk-ofd.taxcom.ru/API/v2/Login', headers=headers, data=json.dumps(data), timeout=(20, 240)) + sessionToken = result.json()['sessionToken'] + headers = { + "Content-Type":"application/json", + "Session-Token": f"{sessionToken}" + } + print('Autorezation') + print(result.text) + try: + print('check 1') + result = requests.get(f"https://api-lk-ofd.taxcom.ru/API/v2/ShiftList?fn={fn}&begin={prevDate}T00:00:00&end={CurDate}T23:59:59", headers=headers, timeout=(20, 240)) + print(result.text) + shiftNumber = result.json()['records'][0]['shiftNumber'] + fnFactoryNumber = result.json()['records'][0]['fnFactoryNumber'] + except Exception as e: + print(e) + result = requests.get(f'https://api-lk-ofd.taxcom.ru/API/v2/DocumentList?fn={fn}&shift={shiftNumber}&type=3', headers=headers, timeout=(20, 240)) + # result = requests.get(f'https://api-lk-ofd.taxcom.ru/API/v2/DocumentList?fn={fn}&shift=133&type=3', headers=headers, timeout=(20, 240)) + cheks = result.json()['records'] + print(cheks) + data = {"salepoint": salepoint, + "res": str(cheks)} + data = json.dumps(data, ensure_ascii=False).encode('utf-8') + print('54') + # print(ID[0]) + result = requests.post('https://1c.maverik.ru/bso_maverik/hs/exchange/saveTaxcomDocs', data=data, allow_redirects=False, auth=('robot', 's38*Cqy2L*PB')) + print(result.text) + print(fn, salepoint, taxcom[2]) +except Exception as e: + print(e) +print('#################') +print('#################') +print('#################') \ No newline at end of file