Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Inicio do modo de contingência #848

Open
wants to merge 24 commits into
base: 11.0
Choose a base branch
from

Conversation

ImplantiSolucoes
Copy link

Acabei bagunçando o antigo fork e fiz um novo e passei as alterações corrigidas...

Foi corrigido a geração do QRCode para usar os paramentros corretos e considerar o tipo_emissao, mantendo a formar antiga quando 1 e usando a nova forma quando for diferente.
Foi criado parametros fixo para contingência, sera melhor definidos no futuro.
Foi feitas algumas correções que o danimar pediu no PR Trust-Code#846
@coveralls
Copy link

coveralls commented Jul 4, 2019

Coverage Status

Coverage increased (+0.05%) to 61.995% when pulling 1393840 on ImplantiSolucoes:11.0 into 3a83df8 on Trust-Code:11.0.

Criado o arquivo de tradução para parar de gerar erro.
.
.
.
.
@codecov-io
Copy link

codecov-io commented Jul 4, 2019

Codecov Report

Merging #848 into 11.0 will decrease coverage by 0.04%.
The diff coverage is 28.57%.

Impacted file tree graph

@@            Coverage Diff             @@
##             11.0     #848      +/-   ##
==========================================
- Coverage   62.07%   62.03%   -0.05%     
==========================================
  Files         188      188              
  Lines        9260     9271      +11     
==========================================
+ Hits         5748     5751       +3     
- Misses       3512     3520       +8
Impacted Files Coverage Δ
br_nfe/models/invoice_eletronic.py 64.98% <28.57%> (-0.98%) ⬇️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 84427e6...fff7ca6. Read the comment docs.

@ImplantiSolucoes
Copy link
Author

@danimaribeiro só ficou confuso a seguinte situação: Quando uma nota for transmitida, quando ela vai ativar o modo de contingencia ou não ?

Na minha opinião poderia ser o seguinte...

  1. Validar
    • Faz validações padrões ja existente
    • Gera o XML
    • Passa ele no esquema de validação
  2. Transmissão
    • Testa para ver se o servidor da sefaz esta funcionando (Consulta status)
      • Gera o xml e Tenta transmitir caso esteja tudo certo
      • Gera o xml com os parâmetros de contingência
      • Gera pdf de modelo de contingencia para impressão
      • Coloca em uma fila especial para fica verificando o servidor da sefaz esta ativo, quando estive tudo certo, faz a transmissão

desfazendo alteração desnecessaria
@nogueira-raphael
Copy link
Contributor

Gravar o Digest Value no banco? Qual a necessidade?

@ImplantiSolucoes
Copy link
Author

ImplantiSolucoes commented Jul 4, 2019

Gravar o Digest Value no banco? Qual a necessidade?

É necessário porque o xml pode ser excluído ou modificado gerando um certo probleminha com os dados

@nogueira-raphael
Copy link
Contributor

@ImplantiSolucoes como a emissão em contingência depende do XML assinado, acho que a responsabilidade de gerar o qrcode em contingência deveria ficar na pytrustnfe, eu fiz assim...
Como no core do odoo-brasil foi implementado a geração do qrcode no odoo, estou usando muda um pouco, mas posso ver se da pra mover, mas essa responsabilidade na minha opinião seria melhor na pytrustnfe.

@ImplantiSolucoes
Copy link
Author

@ImplantiSolucoes como a emissão em contingência depende do XML assinado, acho que a responsabilidade de gerar o qrcode em contingência deveria ficar na pytrustnfe, eu fiz assim...
Como no core do odoo-brasil foi implementado a geração do qrcode no odoo, estou usando muda um pouco, mas posso ver se da pra mover, mas essa responsabilidade na minha opinião seria melhor na pytrustnfe.

Curti a ideia... do mesmo jeito que pega o Digest Value poderia pega o QRCode, logo isso reduz um campo no banco de dados que é a ideia ideal do @danimaribeiro... Só depende ver se o @danimaribeiro aceita passa pra o pytrustnfe

@danimaribeiro
Copy link
Member

@danimaribeiro só ficou confuso a seguinte situação: Quando uma nota for transmitida, quando ela vai ativar o modo de contingencia ou não ?

Na minha opinião poderia ser o seguinte...

  1. Validar

    • Faz validações padrões ja existente
    • Gera o XML
    • Passa ele no esquema de validação
  2. Transmissão

    • Testa para ver se o servidor da sefaz esta funcionando (Consulta status)

      • Gera o xml e Tenta transmitir caso esteja tudo certo
      • Gera o xml com os parâmetros de contingência
      • Gera pdf de modelo de contingencia para impressão
      • Coloca em uma fila especial para fica verificando o servidor da sefaz esta ativo, quando estive tudo certo, faz a transmissão
  • No documento eletrônico deve haver um status novo "contigencia".
  • Fila específica para enviar nesse status - ok
  • Tenta-se o envio diretamente, sem consulta status, em caso de erro se emite em contingência.
  • É bom ter um parâmetro da empresa que diz se passa para contingência automaticamente.
  • Sim, pode ser passado ao pytrustnfe a geração da url do QRCode, só evitar mudar os métodos (parâmetros e retorno de método).

@ImplantiSolucoes
Copy link
Author

Corrigido conflitos de alteração.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants