8x-esystem-reports-data-warehouse-api-python-sdk 1.0.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0.dist-info/METADATA +21 -0
- 8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0.dist-info/RECORD +13 -0
- 8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0.dist-info/WHEEL +5 -0
- 8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0.dist-info/licenses/LICENSE +5 -0
- 8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0.dist-info/top_level.txt +2 -0
- __init__.py +0 -0
- oitoxesystem/__init__.py +0 -0
- oitoxesystem/reportsdatawarehouseapi/__init__.py +0 -0
- oitoxesystem/reportsdatawarehouseapi/api.py +19 -0
- oitoxesystem/reportsdatawarehouseapi/apis/__init__.py +0 -0
- oitoxesystem/reportsdatawarehouseapi/apis/fuel_suplly_record.py +37 -0
- oitoxesystem/reportsdatawarehouseapi/apis/kilometer_tracker.py +35 -0
- oitoxesystem/reportsdatawarehouseapi/apis/working_day.py +34 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: 8x-esystem-reports-data-warehouse-api-python-sdk
|
|
3
|
+
Version: 1.0.0
|
|
4
|
+
Summary: Client de comunicaçao c/ API de E-mail da FMConsult
|
|
5
|
+
Author-email: Filipe Coelho <filipe@fmconsult.com.br>
|
|
6
|
+
License: MIT License
|
|
7
|
+
|
|
8
|
+
Copyright (c) 2025 Seu Nome
|
|
9
|
+
|
|
10
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy...
|
|
11
|
+
|
|
12
|
+
Project-URL: Homepage, https://github.com/seuuser/minha-biblioteca
|
|
13
|
+
Project-URL: Bug Tracker, https://github.com/seuuser/minha-biblioteca/issues
|
|
14
|
+
Keywords: sdk,api,reports,data,warehouse,8x-esystem
|
|
15
|
+
Classifier: Programming Language :: Python :: 3
|
|
16
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
17
|
+
Classifier: Operating System :: OS Independent
|
|
18
|
+
Requires-Python: >=3.11
|
|
19
|
+
Description-Content-Type: text/markdown
|
|
20
|
+
License-File: LICENSE
|
|
21
|
+
Dynamic: license-file
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
|
+
8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0.dist-info/licenses/LICENSE,sha256=YZjQnFjzXGFa0D3iCQkNDwGBNuTGJREkRmItGX1B3YM,122
|
|
3
|
+
oitoxesystem/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
4
|
+
oitoxesystem/reportsdatawarehouseapi/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
5
|
+
oitoxesystem/reportsdatawarehouseapi/api.py,sha256=PRgLZhLw3rrJB85fKwBWdVHylEKSXRMGmzq1v4XNXKY,649
|
|
6
|
+
oitoxesystem/reportsdatawarehouseapi/apis/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
7
|
+
oitoxesystem/reportsdatawarehouseapi/apis/fuel_suplly_record.py,sha256=kginUJ6Sb8lB24bpM-1Y7AtGPaljmKzVEsrJ1Tec-1k,1160
|
|
8
|
+
oitoxesystem/reportsdatawarehouseapi/apis/kilometer_tracker.py,sha256=xirkkaplprmoXRCsab_7GrSGC7M9NEGfmq1Dgym03xE,1081
|
|
9
|
+
oitoxesystem/reportsdatawarehouseapi/apis/working_day.py,sha256=4I9YM5wUZ5eB9_sHWfR8jesXALzWjL-g-Y16YGcDD9c,1048
|
|
10
|
+
8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0.dist-info/METADATA,sha256=IFUpyrbfiEpcunhk3nr64Am84pqoqjOaa-Svumxvp28,830
|
|
11
|
+
8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
12
|
+
8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0.dist-info/top_level.txt,sha256=N-TzrYv48WGQ8MUqA6WHqpoBaTwmyHteW7cEbVqJ_qI,22
|
|
13
|
+
8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0.dist-info/RECORD,,
|
__init__.py
ADDED
|
File without changes
|
oitoxesystem/__init__.py
ADDED
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import logging, jsonpickle, requests, os
|
|
2
|
+
from fmconsult.http.api import ApiBase
|
|
3
|
+
|
|
4
|
+
class ReportsDataWarehouseApi(ApiBase):
|
|
5
|
+
|
|
6
|
+
def __init__(self):
|
|
7
|
+
try:
|
|
8
|
+
self.api_environment = os.environ['reports.data.warehouse.api.environment']
|
|
9
|
+
self.api_token = os.environ['reports.data.warehouse.api.token']
|
|
10
|
+
|
|
11
|
+
api_sandbox_base_url = 'http://localhost:3002'
|
|
12
|
+
api_live_base_url = 'https://api.data-warehouse.reports.8x-esystem.com.br'
|
|
13
|
+
|
|
14
|
+
get_base_url = lambda env: api_live_base_url if env == 'live' else api_sandbox_base_url
|
|
15
|
+
|
|
16
|
+
self.base_url = get_base_url(self.api_environment)
|
|
17
|
+
super().__init__()
|
|
18
|
+
except:
|
|
19
|
+
raise
|
|
File without changes
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import logging, jsonpickle
|
|
2
|
+
from oitoxesystem.reportsdatawarehouseapi.api import ReportsDataWarehouseApi
|
|
3
|
+
from fmconsult.utils.url import UrlUtil
|
|
4
|
+
|
|
5
|
+
class FuelSupllyRecord(ReportsDataWarehouseApi):
|
|
6
|
+
|
|
7
|
+
def get_all(self, enterprise_id, start_date, end_date, vehicle_id, font):
|
|
8
|
+
try:
|
|
9
|
+
params = {
|
|
10
|
+
'enterprise_id': enterprise_id,
|
|
11
|
+
'start_date': start_date,
|
|
12
|
+
'end_date': end_date,
|
|
13
|
+
'font': font
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
if vehicle_id:
|
|
17
|
+
params['vehicle_id'] = vehicle_id
|
|
18
|
+
|
|
19
|
+
url = UrlUtil().make_url(self.base_url, ['warehouse', 'fuel-supply-records'])
|
|
20
|
+
res = self.call_request('GET', url, params=params)
|
|
21
|
+
return jsonpickle.decode(res)
|
|
22
|
+
except:
|
|
23
|
+
raise
|
|
24
|
+
|
|
25
|
+
def get_by_fuel_fuel_supply_record(self, fuel_supply_record_ids):
|
|
26
|
+
try:
|
|
27
|
+
logging.info(f'get_by_fuel_fuel_supply_record records...')
|
|
28
|
+
|
|
29
|
+
payload = {
|
|
30
|
+
'fuel_supply_record_ids': fuel_supply_record_ids
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
url = UrlUtil().make_url(self.base_url, ['warehouse', 'fuel-supply-records', 'records'])
|
|
34
|
+
res = self.call_request('POST', url, payload=payload)
|
|
35
|
+
return jsonpickle.decode(res)
|
|
36
|
+
except:
|
|
37
|
+
raise
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import logging, jsonpickle
|
|
2
|
+
from oitoxesystem.reportsdatawarehouseapi.api import ReportsDataWarehouseApi
|
|
3
|
+
from fmconsult.utils.url import UrlUtil
|
|
4
|
+
|
|
5
|
+
class KilometerTracker(ReportsDataWarehouseApi):
|
|
6
|
+
|
|
7
|
+
def get_all(self, enterprise_id, start_date, end_date, driver_id=None, vehicle_id=None, page=None, limit=None, subenterprise_id=None):
|
|
8
|
+
try:
|
|
9
|
+
logging.info(f'get all working days records...')
|
|
10
|
+
params = {
|
|
11
|
+
'enterprise_id': enterprise_id,
|
|
12
|
+
'start_date': start_date,
|
|
13
|
+
'end_date': end_date,
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
if driver_id:
|
|
17
|
+
params['driver_id'] = driver_id
|
|
18
|
+
|
|
19
|
+
if subenterprise_id:
|
|
20
|
+
params['subenterprise_id'] = subenterprise_id
|
|
21
|
+
|
|
22
|
+
if vehicle_id:
|
|
23
|
+
params['vehicle_id'] = vehicle_id
|
|
24
|
+
|
|
25
|
+
if page:
|
|
26
|
+
params['page'] = page
|
|
27
|
+
|
|
28
|
+
if limit:
|
|
29
|
+
params['limit'] = limit
|
|
30
|
+
|
|
31
|
+
url = UrlUtil().make_url(self.base_url, ['warehouse', 'kilometer-tracker'])
|
|
32
|
+
res = self.call_request('GET', url, params=params)
|
|
33
|
+
return jsonpickle.decode(res)
|
|
34
|
+
except:
|
|
35
|
+
raise
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import logging, jsonpickle
|
|
2
|
+
from oitoxesystem.reportsdatawarehouseapi.api import ReportsDataWarehouseApi
|
|
3
|
+
from fmconsult.utils.url import UrlUtil
|
|
4
|
+
|
|
5
|
+
class WorkingDay(ReportsDataWarehouseApi):
|
|
6
|
+
|
|
7
|
+
def get_all(self, enterprise_id, start_date, end_date, driver_id=None):
|
|
8
|
+
try:
|
|
9
|
+
logging.info(f'get all working days records...')
|
|
10
|
+
params = {
|
|
11
|
+
'enterprise_id': enterprise_id,
|
|
12
|
+
'start_date': start_date,
|
|
13
|
+
'end_date': end_date,
|
|
14
|
+
}
|
|
15
|
+
if driver_id:
|
|
16
|
+
params['driver_id'] = driver_id
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
url = UrlUtil().make_url(self.base_url, ['warehouse', 'working-days'])
|
|
20
|
+
res = self.call_request('GET', url, params=params)
|
|
21
|
+
|
|
22
|
+
return jsonpickle.decode(res)
|
|
23
|
+
except:
|
|
24
|
+
raise
|
|
25
|
+
|
|
26
|
+
def update(self, data, working_day_id):
|
|
27
|
+
|
|
28
|
+
try:
|
|
29
|
+
logging.info(f'update working day record...')
|
|
30
|
+
url = UrlUtil().make_url(self.base_url, ['warehouse', 'working-day', working_day_id])
|
|
31
|
+
res = self.call_request('PUT', url, payload=data)
|
|
32
|
+
return jsonpickle.decode(res)
|
|
33
|
+
except:
|
|
34
|
+
raise
|