brynq-sdk-bob 2.6.8__tar.gz → 2.7.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 (34) hide show
  1. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/PKG-INFO +1 -1
  2. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob/__init__.py +2 -0
  3. brynq_sdk_bob-2.7.0/brynq_sdk_bob/reports.py +38 -0
  4. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob.egg-info/PKG-INFO +1 -1
  5. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob.egg-info/SOURCES.txt +1 -0
  6. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/setup.py +1 -1
  7. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob/bank.py +0 -0
  8. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob/company.py +0 -0
  9. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob/custom_tables.py +0 -0
  10. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob/documents.py +0 -0
  11. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob/employment.py +0 -0
  12. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob/named_lists.py +0 -0
  13. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob/payments.py +0 -0
  14. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob/payroll_history.py +0 -0
  15. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob/people.py +0 -0
  16. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob/salaries.py +0 -0
  17. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob/schemas/__init__.py +0 -0
  18. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob/schemas/bank.py +0 -0
  19. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob/schemas/custom_tables.py +0 -0
  20. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob/schemas/employment.py +0 -0
  21. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob/schemas/named_lists.py +0 -0
  22. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob/schemas/payments.py +0 -0
  23. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob/schemas/payroll_history.py +0 -0
  24. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob/schemas/people.py +0 -0
  25. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob/schemas/salary.py +0 -0
  26. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob/schemas/timeoff.py +0 -0
  27. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob/schemas/work.py +0 -0
  28. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob/timeoff.py +0 -0
  29. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob/work.py +0 -0
  30. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob.egg-info/dependency_links.txt +0 -0
  31. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob.egg-info/not-zip-safe +0 -0
  32. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob.egg-info/requires.txt +0 -0
  33. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/brynq_sdk_bob.egg-info/top_level.txt +0 -0
  34. {brynq_sdk_bob-2.6.8 → brynq_sdk_bob-2.7.0}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 1.0
2
2
  Name: brynq_sdk_bob
3
- Version: 2.6.8
3
+ Version: 2.7.0
4
4
  Summary: Bob wrapper from BrynQ
5
5
  Home-page: UNKNOWN
6
6
  Author: BrynQ
@@ -2,6 +2,7 @@ import base64
2
2
  from typing import List, Optional, Literal
3
3
  import requests
4
4
  import os
5
+ from .reports import Reports
5
6
  from brynq_sdk_brynq import BrynQ
6
7
  from .bank import Bank
7
8
  from .company import Company
@@ -39,6 +40,7 @@ class Bob(BrynQ):
39
40
  self.named_lists = NamedLists(self)
40
41
  self.custom_tables = CustomTables(self)
41
42
  self.payroll_history = History(self)
43
+ self.reports = Reports(self)
42
44
  self.data_interface_id = os.getenv("DATA_INTERFACE_ID")
43
45
  self.debug = debug
44
46
 
@@ -0,0 +1,38 @@
1
+ from datetime import datetime
2
+ from io import BytesIO
3
+ from typing import Optional
4
+
5
+ import pandas as pd
6
+ from brynq_sdk_functions import Functions
7
+
8
+
9
+ class Reports:
10
+ def __init__(self, bob):
11
+ self.bob = bob
12
+
13
+ def get(self) -> pd.DataFrame:
14
+ resp = self.bob.session.get(url=f"{self.bob.base_url}company/reports", timeout=self.bob.timeout)
15
+ resp.raise_for_status()
16
+ data = resp.json()
17
+ df = pd.json_normalize(
18
+ data,
19
+ record_path='views'
20
+ )
21
+ # df = self.bob.rename_camel_columns_to_snake_case(df)
22
+ # valid_documents, invalid_documents = Functions.validate_data(df=df, schema=DocumentsSchema, debug=True)
23
+
24
+ return df
25
+
26
+ def download(self, report_id: Optional[str] = None, report_name: Optional[str] = None) -> dict:
27
+ if report_id:
28
+ url = f"{self.bob.base_url}company/reports/{report_id}"
29
+ elif report_name:
30
+ url = f"{self.bob.base_url}company/reports/download/{report_name}"
31
+ else:
32
+ raise ValueError("Either report_id or report_name must be provided")
33
+
34
+ resp = self.bob.session.get(url=url, timeout=self.bob.timeout)
35
+ resp.raise_for_status()
36
+ data = resp.json()
37
+
38
+ return data
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 1.0
2
2
  Name: brynq-sdk-bob
3
- Version: 2.6.8
3
+ Version: 2.7.0
4
4
  Summary: Bob wrapper from BrynQ
5
5
  Home-page: UNKNOWN
6
6
  Author: BrynQ
@@ -9,6 +9,7 @@ brynq_sdk_bob/named_lists.py
9
9
  brynq_sdk_bob/payments.py
10
10
  brynq_sdk_bob/payroll_history.py
11
11
  brynq_sdk_bob/people.py
12
+ brynq_sdk_bob/reports.py
12
13
  brynq_sdk_bob/salaries.py
13
14
  brynq_sdk_bob/timeoff.py
14
15
  brynq_sdk_bob/work.py
@@ -2,7 +2,7 @@ from setuptools import setup, find_namespace_packages
2
2
 
3
3
  setup(
4
4
  name='brynq_sdk_bob',
5
- version='2.6.8',
5
+ version='2.7.0',
6
6
  description='Bob wrapper from BrynQ',
7
7
  long_description='Bob wrapper from BrynQ',
8
8
  author='BrynQ',
File without changes