Browse Source

[IMP] Melhorias no retorno SOAP

pull/37/head
Luis Felipe Mileo 8 years ago
parent
commit
01b87f3e6e
  1. 10
      pynfe/processamento/mdfe.py
  2. 21
      pynfe/processamento/resposta.py

10
pynfe/processamento/mdfe.py

@ -32,6 +32,8 @@ from mdfelib.v3_00 import consSitMDFe
from mdfelib.v3_00 import consMDFeNaoEnc from mdfelib.v3_00 import consMDFeNaoEnc
from mdfelib.v3_00 import enviMDFe from mdfelib.v3_00 import enviMDFe
from mdfelib.v3_00 import consReciMDFe from mdfelib.v3_00 import consReciMDFe
from mdfelib.v3_00 import procMDFe
# from mdfelib.v3_00 import procEventoMDFe
MDFE_SITUACAO_JA_ENVIADO = ('100', '101', '132') MDFE_SITUACAO_JA_ENVIADO = ('100', '101', '132')
@ -129,6 +131,7 @@ class ComunicacaoMDFe(Comunicacao):
ws_metodo=WS_MDFE_CONSULTA, ws_metodo=WS_MDFE_CONSULTA,
raiz_xml=raiz raiz_xml=raiz
) )
# ).analisar_processo('MDFe', procEventoMDFe)
def consulta_nao_encerrados(self, cnpj): def consulta_nao_encerrados(self, cnpj):
raiz = consMDFeNaoEnc.TConsMDFeNaoEnc( raiz = consMDFeNaoEnc.TConsMDFeNaoEnc(
@ -169,7 +172,7 @@ class ComunicacaoMDFe(Comunicacao):
classe=consReciMDFe, classe=consReciMDFe,
ws_metodo=WS_MDFE_RET_RECEPCAO, ws_metodo=WS_MDFE_RET_RECEPCAO,
raiz_xml=raiz, raiz_xml=raiz,
)
).analisar_processo('MDFe', procMDFe)
def processar_documento(self, edoc): def processar_documento(self, edoc):
@ -246,4 +249,9 @@ class ComunicacaoMDFe(Comunicacao):
proc_recibo = self.consulta_recibo( proc_recibo = self.consulta_recibo(
proc_envio.resposta.infRec.nRec proc_envio.resposta.infRec.nRec
) )
# TODO: Juntar processo com protocolo
if proc_recibo.processo:
pass
yield proc_recibo yield proc_recibo

21
pynfe/processamento/resposta.py

@ -2,6 +2,8 @@
# Copyright (C) 2018 - TODAY Luis Felipe Mileo - KMEE INFORMATICA LTDA # Copyright (C) 2018 - TODAY Luis Felipe Mileo - KMEE INFORMATICA LTDA
# License AGPL-3 - See https://www.gnu.org/licenses/lgpl-3.0.html # License AGPL-3 - See https://www.gnu.org/licenses/lgpl-3.0.html
from __future__ import division, print_function, unicode_literals
import re import re
from pynfe.utils import etree from pynfe.utils import etree
@ -12,6 +14,22 @@ class RetornoSoap(object):
self.webservice = webservice self.webservice = webservice
self.resposta = resposta self.resposta = resposta
self.retorno = retorno self.retorno = retorno
self.processo = False
def analisar_processo(self, documento, entidade):
if documento == 'MDFe' and self.resposta.protMDFe:
self.processo = entidade(
versao=self.resposta.versao,
protMDFe=self.resposta.protMDFe,
)
if documento == 'MDFe' and self.resposta.procEventoMDFe:
print('procEventoMDFe')
# self.processo = entidade(
# versao=self.resposta.versao,
# protMDFe=self.resposta.protMDFe,
# )
return self
def analisar_retorno(webservice, retorno, classe_resposta): def analisar_retorno(webservice, retorno, classe_resposta):
@ -25,4 +43,5 @@ def analisar_retorno(webservice, retorno, classe_resposta):
classe_resposta.Validate_simpletypes_ = False classe_resposta.Validate_simpletypes_ = False
resposta = classe_resposta.parseString(resultado.encode('utf-8')) resposta = classe_resposta.parseString(resultado.encode('utf-8'))
return RetornoSoap(webservice, retorno, resposta)
return RetornoSoap(webservice, retorno, resposta)
Loading…
Cancel
Save