csc-cia-stne 0.0.33__tar.gz → 0.0.34__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 (33) hide show
  1. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/PKG-INFO +1 -1
  2. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/pyproject.toml +1 -1
  3. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne/__init__.py +6 -6
  4. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne/provio.py +39 -5
  5. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne.egg-info/PKG-INFO +1 -1
  6. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/LICENCE +0 -0
  7. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/README.md +0 -0
  8. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/README_PYPI.md +0 -0
  9. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/setup.cfg +0 -0
  10. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne/bc_correios.py +0 -0
  11. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne/bc_sta.py +0 -0
  12. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne/email.py +0 -0
  13. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne/gcp_bigquery.py +0 -0
  14. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne/google_drive.py +0 -0
  15. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne/karavela.py +0 -0
  16. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne/logger_json.py +0 -0
  17. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne/logger_rich.py +0 -0
  18. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne/servicenow.py +0 -0
  19. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne/stne_admin.py +0 -0
  20. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne/utilitarios/__init__.py +0 -0
  21. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne/utilitarios/functions/__init__.py +0 -0
  22. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne/utilitarios/functions/func_b64.py +0 -0
  23. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne/utilitarios/functions/func_converters.py +0 -0
  24. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne/utilitarios/functions/func_recriar_pastas.py +0 -0
  25. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne/utilitarios/functions/func_titulo.py +0 -0
  26. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne/utilitarios/validations/GcpBigQueryValidator.py +0 -0
  27. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne/utilitarios/validations/GoogleDriveValidator.py +0 -0
  28. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne/utilitarios/validations/ServiceNowValidator.py +0 -0
  29. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne/utilitarios/validations/__init__.py +0 -0
  30. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne.egg-info/SOURCES.txt +0 -0
  31. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne.egg-info/dependency_links.txt +0 -0
  32. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne.egg-info/requires.txt +0 -0
  33. {csc_cia_stne-0.0.33 → csc_cia_stne-0.0.34}/src/csc_cia_stne.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: csc_cia_stne
3
- Version: 0.0.33
3
+ Version: 0.0.34
4
4
  Summary: Biblioteca do time CSC-CIA utilizada no desenvolvimento de RPAs
5
5
  License: MIT
6
6
  Keywords: karavela,csc,cia,stone,rpa
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "csc_cia_stne"
7
- version = "0.0.33"
7
+ version = "0.0.34"
8
8
  license = { text = "MIT" }
9
9
  description = "Biblioteca do time CSC-CIA utilizada no desenvolvimento de RPAs"
10
10
  keywords = ["karavela", "csc", "cia", "stone", "rpa"]
@@ -13,7 +13,7 @@ from .provio import Provio
13
13
 
14
14
  # Define os itens disponíveis para importação
15
15
  __all__ = [
16
- "titulo",
16
+ "Karavela",
17
17
  "BigQuery",
18
18
  "BC_Correios",
19
19
  "BC_STA",
@@ -25,14 +25,14 @@ __all__ = [
25
25
  "Email"
26
26
  ]
27
27
 
28
- diretorio_inicial = os.getcwd()
29
- caminho_env = os.path.join(diretorio_inicial, ".env")
28
+ _diretorio_inicial = os.getcwd()
29
+ _caminho_env = os.path.join(_diretorio_inicial, ".env")
30
30
 
31
31
  # Carrega .env
32
- load_dotenv(caminho_env)
32
+ load_dotenv(_caminho_env)
33
33
  logger = None # Inicializa como None
34
34
 
35
- def running_in_container():
35
+ def _running_in_container():
36
36
 
37
37
  if os.environ.get("KUBERNETES_SERVICE_HOST") or os.path.exists("/.dockerenv"):
38
38
 
@@ -60,7 +60,7 @@ def logger():
60
60
 
61
61
  return get_logger_json()
62
62
 
63
- elif running_in_container():
63
+ elif _running_in_container():
64
64
 
65
65
  return get_logger_json()
66
66
 
@@ -2,29 +2,63 @@ import logging
2
2
  import requests
3
3
  from requests.auth import HTTPBasicAuth
4
4
  from pydantic import BaseModel, Field, ValidationError
5
+ from typing import List, Dict, Union
5
6
 
6
7
  # Validadores
7
8
  class ProvioModel(BaseModel):
9
+ """
10
+ Modelo para validação das credenciais de autenticação.
11
+ """
8
12
  username: str = Field(..., strip_whitespace=True, min_length=1)
9
13
  password: str = Field(..., strip_whitespace=True, min_length=1)
10
14
 
11
15
  class ExportarRelatorioParams(BaseModel):
16
+ """
17
+ Modelo para validação dos parâmetros do relatório.
18
+ """
12
19
  ano: int = Field(..., gt=2015, description="O ano deve ser maior que 2015")
13
20
  mes: int = Field(..., ge=1, le=12, description="O mês deve estar entre 1 e 12")
14
21
 
15
22
  # Classe provio
16
23
  class Provio:
17
-
18
- def __init__(self,username:str,password:str):
19
-
24
+ """
25
+ Classe para interagir com a API do Provio.
26
+ """
27
+
28
+ def __init__(self, username: str, password: str):
29
+ """
30
+ Inicializa a classe com as credenciais de autenticação.
31
+
32
+ Args:
33
+ username (str): Nome de usuário para autenticação.
34
+ password (str): Senha para autenticação.
35
+
36
+ Raises:
37
+ ValidationError: Se as credenciais forem inválidas de acordo com o modelo `ProvioModel`.
38
+ """
20
39
  # Validação usando Pydantic
21
40
  data = ProvioModel(username=username, password=password)
22
41
 
23
42
  self.api_url = "https://provio.apps.stone.com.br/api/reports"
24
43
  self.auth = HTTPBasicAuth(data.username, data.password)
25
44
 
26
- def exportar_relatorio_geral(self, ano:int, mes:int):
27
-
45
+ def exportar_relatorio_geral(self, ano: int, mes: int) -> Dict[str, Union[bool, str, List[Dict]]]:
46
+ """
47
+ Exporta o relatório geral para o período especificado.
48
+
49
+ Args:
50
+ ano (int): Ano do relatório (deve ser maior que 2015).
51
+ mes (int): Mês do relatório (deve estar entre 1 e 12).
52
+
53
+ Returns:
54
+ Dict[str, Union[bool, str, List[Dict]]]: Um dicionário contendo:
55
+ - `success` (bool): Indica se a exportação foi bem-sucedida.
56
+ - `error` (str): Mensagem de erro, se houver.
57
+ - `report` (List[Dict]): Lista de registros exportados, se `success` for `True`.
58
+
59
+ Raises:
60
+ ValidationError: Se os parâmetros `ano` e `mes` forem inválidos.
61
+ """
28
62
  # Validação dos parâmetros
29
63
  params = ExportarRelatorioParams(ano=ano, mes=mes)
30
64
  periodo = f"{params.ano}-{params.mes:02d}"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: csc_cia_stne
3
- Version: 0.0.33
3
+ Version: 0.0.34
4
4
  Summary: Biblioteca do time CSC-CIA utilizada no desenvolvimento de RPAs
5
5
  License: MIT
6
6
  Keywords: karavela,csc,cia,stone,rpa
File without changes
File without changes
File without changes