odoo-brasil icon indicating copy to clipboard operation
odoo-brasil copied to clipboard

Inicio do modo de contingência

Open ImplantiSolucoes opened this issue 5 years ago • 9 comments

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

ImplantiSolucoes avatar Jul 04 '19 00:07 ImplantiSolucoes

Coverage Status

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

coveralls avatar Jul 04 '19 01:07 coveralls

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%) :arrow_down:

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.

codecov-io avatar Jul 04 '19 02:07 codecov-io

@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

ImplantiSolucoes avatar Jul 04 '19 03:07 ImplantiSolucoes

Gravar o Digest Value no banco? Qual a necessidade?

nogueira-raphael avatar Jul 04 '19 03:07 nogueira-raphael

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

ImplantiSolucoes avatar Jul 04 '19 03:07 ImplantiSolucoes

@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.

nogueira-raphael avatar Jul 04 '19 03:07 nogueira-raphael

@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

ImplantiSolucoes avatar Jul 04 '19 03:07 ImplantiSolucoes

@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).

danimaribeiro avatar Jul 05 '19 15:07 danimaribeiro

Corrigido conflitos de alteração.

ImplantiSolucoes avatar Sep 30 '19 17:09 ImplantiSolucoes