Skip to content

Commit

Permalink
missing methods
Browse files Browse the repository at this point in the history
  • Loading branch information
brunovcosta committed Nov 8, 2024
1 parent 3112bd3 commit 8018b6f
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 14 deletions.
15 changes: 7 additions & 8 deletions abstra_notas/nfse/sp/sao_paulo/envio_rps.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
from abstra_notas.validacoes.cidades import validar_codigo_cidade, normalizar_uf
from abstra_notas.validacoes.cpf import normalizar_cpf
from abstra_notas.validacoes.cnpj import normalizar_cnpj
from abstra_notas.validacoes.cpfcnpj import cpf_ou_cnpj
from abstra_notas.validacoes.cpfcnpj import normalizar_cpf_ou_cnpj
from .codigos_de_servico import codigos_de_servico_validos
from datetime import date
from .pedido import Pedido
Expand Down Expand Up @@ -104,10 +104,7 @@ class RPS:
discriminacao: str

def __post_init__(self):
if self.tomador_tipo == "CPF":
self.tomador = ("CPF", normalizar_cpf(self.tomador))
if self.tomador_tipo == "CNPJ":
self.tomador = ("CNPJ", normalizar_cnpj(self.tomador))
self.tomador = normalizar_cpf_ou_cnpj(self.tomador)
self.endereco_uf = normalizar_uf(self.endereco_uf)
assert validar_codigo_cidade(
self.endereco_cidade
Expand Down Expand Up @@ -195,6 +192,7 @@ def gerar_string_xml(self, assinador: Assinador) -> Element:
aliquota_servicos=self.aliquota_servicos,
iss_retido=str(self.iss_retido).lower(),
tomador=self.tomador,
tomador_tipo=self.tomador_tipo,
razao_social_tomador=self.razao_social_tomador,
endereco_tipo_logradouro=self.endereco_tipo_logradouro,
endereco_logradouro=self.endereco_logradouro,
Expand Down Expand Up @@ -238,7 +236,7 @@ def assinatura(self, assinador: Assinador) -> str:

@property
def tomador_tipo(self) -> Literal["CPF", "CNPJ"]:
return cpf_ou_cnpj(self.tomador)
return normalizar_cpf_ou_cnpj(self.tomador)


@dataclass
Expand All @@ -248,6 +246,7 @@ class EnvioRPS(RPS, Pedido):
def gerar_xml(self, assinador: Assinador) -> Element:
xml = self.template.render(
remetente=self.remetente,
remetente_tipo=self.remetente_tipo,
rps=self.gerar_string_xml(assinador),
)

Expand All @@ -263,7 +262,7 @@ def classe_retorno(self):

@property
def remetente_tipo(self) -> Literal["CPF", "CNPJ"]:
return cpf_ou_cnpj(self.remetente)
return normalizar_cpf_ou_cnpj(self.remetente)

def executar(
self, cliente: Cliente
Expand Down Expand Up @@ -317,7 +316,7 @@ def valor_total_deducoes(self):

@property
def remetente_tipo(self) -> Literal["CPF", "CNPJ"]:
return cpf_ou_cnpj(self.remetente)
return normalizar_cpf_ou_cnpj(self.remetente)


class TesteEnvioLoteRps(EnvioLoteRps): ...
18 changes: 12 additions & 6 deletions abstra_notas/nfse/sp/sao_paulo/exemplos/envio_rps.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,18 @@
from abstra_notas.nfse.sp.sao_paulo import PedidoEnvioRPS, Cliente, RetornoEnvioRPS
from abstra_notas.nfse.sp.sao_paulo import EnvioRPS, Cliente, RetornoEnvioRPS
from datetime import date
from dotenv import load_dotenv
from os import getenv

load_dotenv()

cliente = Cliente(caminho_pfx="/meu/caminho/certificado.pfx", senha_pfx="senha")

pedido = PedidoEnvioRPS(
remetente="54.188.924/0001-92",
tomador="131.274.830-31",
cliente = Cliente(
caminho_pfx=load_dotenv("NFSE_PFX_PATH"), senha_pfx=getenv("NFSE_PFX_PASSWORD")
)

pedido = EnvioRPS(
remetente=getenv("NFSE_CNPJ_REMETENTE"),
tomador=getenv("NFSE_CNPJ_TOMADOR"),
aliquota_servicos=2.0,
codigo_servico=1,
data_emissao=date(2021, 1, 1),
Expand All @@ -20,7 +26,7 @@
endereco_numero="Número",
endereco_tipo_logradouro="Rua",
endereco_uf="SP",
inscricao_prestador="12345678",
inscricao_prestador=getenv("NFSE_INSCRICAO_PRESTADOR"),
iss_retido=False,
numero_rps=1,
razao_social_tomador="Razão Social",
Expand Down

0 comments on commit 8018b6f

Please sign in to comment.