8x-esystem-reports-data-warehouse-api-python-sdk 1.0.0__tar.gz

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.
Files changed (17) hide show
  1. 8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0/LICENSE +5 -0
  2. 8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0/PKG-INFO +21 -0
  3. 8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0/README.md +0 -0
  4. 8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0/pyproject.toml +26 -0
  5. 8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0/setup.cfg +4 -0
  6. 8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0/src/8x_esystem_reports_data_warehouse_api_python_sdk.egg-info/PKG-INFO +21 -0
  7. 8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0/src/8x_esystem_reports_data_warehouse_api_python_sdk.egg-info/SOURCES.txt +15 -0
  8. 8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0/src/8x_esystem_reports_data_warehouse_api_python_sdk.egg-info/dependency_links.txt +1 -0
  9. 8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0/src/8x_esystem_reports_data_warehouse_api_python_sdk.egg-info/top_level.txt +2 -0
  10. 8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0/src/__init__.py +0 -0
  11. 8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0/src/oitoxesystem/__init__.py +0 -0
  12. 8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0/src/oitoxesystem/reportsdatawarehouseapi/__init__.py +0 -0
  13. 8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0/src/oitoxesystem/reportsdatawarehouseapi/api.py +19 -0
  14. 8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0/src/oitoxesystem/reportsdatawarehouseapi/apis/__init__.py +0 -0
  15. 8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0/src/oitoxesystem/reportsdatawarehouseapi/apis/fuel_suplly_record.py +37 -0
  16. 8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0/src/oitoxesystem/reportsdatawarehouseapi/apis/kilometer_tracker.py +35 -0
  17. 8x_esystem_reports_data_warehouse_api_python_sdk-1.0.0/src/oitoxesystem/reportsdatawarehouseapi/apis/working_day.py +34 -0
@@ -0,0 +1,5 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Seu Nome
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy...
@@ -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,26 @@
1
+ [build-system]
2
+ requires = ["setuptools>=61.0", "wheel"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "8x-esystem-reports-data-warehouse-api-python-sdk"
7
+ version = "1.0.0"
8
+ description = "Client de comunicaçao c/ API de E-mail da FMConsult"
9
+ readme = "README.md"
10
+ requires-python = ">=3.11"
11
+ license = {file = "LICENSE"}
12
+ authors = [
13
+ {name = "Filipe Coelho", email = "filipe@fmconsult.com.br"},
14
+ ]
15
+ keywords = ["sdk", "api", "reports", "data", "warehouse", "8x-esystem"]
16
+ classifiers = [
17
+ "Programming Language :: Python :: 3",
18
+ "License :: OSI Approved :: MIT License",
19
+ "Operating System :: OS Independent",
20
+ ]
21
+
22
+ dependencies = []
23
+
24
+ [project.urls]
25
+ "Homepage" = "https://github.com/seuuser/minha-biblioteca"
26
+ "Bug Tracker" = "https://github.com/seuuser/minha-biblioteca/issues"
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -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,15 @@
1
+ LICENSE
2
+ README.md
3
+ pyproject.toml
4
+ src/__init__.py
5
+ src/8x_esystem_reports_data_warehouse_api_python_sdk.egg-info/PKG-INFO
6
+ src/8x_esystem_reports_data_warehouse_api_python_sdk.egg-info/SOURCES.txt
7
+ src/8x_esystem_reports_data_warehouse_api_python_sdk.egg-info/dependency_links.txt
8
+ src/8x_esystem_reports_data_warehouse_api_python_sdk.egg-info/top_level.txt
9
+ src/oitoxesystem/__init__.py
10
+ src/oitoxesystem/reportsdatawarehouseapi/__init__.py
11
+ src/oitoxesystem/reportsdatawarehouseapi/api.py
12
+ src/oitoxesystem/reportsdatawarehouseapi/apis/__init__.py
13
+ src/oitoxesystem/reportsdatawarehouseapi/apis/fuel_suplly_record.py
14
+ src/oitoxesystem/reportsdatawarehouseapi/apis/kilometer_tracker.py
15
+ src/oitoxesystem/reportsdatawarehouseapi/apis/working_day.py
@@ -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
@@ -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