Browse Source

serialização consultar lote/situação ginfes

pull/7/head
Leonardo Tada 10 years ago
parent
commit
ed94492883
  1. 28
      pynfe/processamento/autorizador_nfse.py
  2. 18
      pynfe/processamento/serializacao.py
  3. 19
      pynfe/utils/nfse/ginfes/servico_consultar_lote_rps_envio_v03.py
  4. 19
      pynfe/utils/nfse/ginfes/servico_consultar_situacao_lote_rps_envio_v03.py
  5. 4
      separarpfx.sh

28
pynfe/processamento/autorizador_nfse.py

@ -243,11 +243,15 @@ class SerializacaoGinfes(InterfaceAutorizador):
global _tipos, servico_consultar_nfse_envio_v03
global servico_enviar_lote_rps_envio_v03, cabecalho_v03
global servico_cancelar_nfse_envio_v03
global servico_consultar_lote_rps_envio_v03
global servico_consultar_situacao_lote_rps_envio_v03
_tipos = import_module('pynfe.utils.nfse.ginfes._tipos')
servico_consultar_nfse_envio_v03 = import_module('pynfe.utils.nfse.ginfes.servico_consultar_nfse_envio_v03')
servico_cancelar_nfse_envio_v03 = import_module('pynfe.utils.nfse.ginfes.servico_cancelar_nfse_envio_v03')
servico_enviar_lote_rps_envio_v03 = import_module('pynfe.utils.nfse.ginfes.servico_enviar_lote_rps_envio_v03')
cabecalho_v03 = import_module('pynfe.utils.nfse.ginfes.cabecalho_v03')
servico_consultar_lote_rps_envio_v03 = import_module('pynfe.utils.nfse.ginfes.servico_consultar_lote_rps_envio_v03')
servico_consultar_situacao_lote_rps_envio_v03 = import_module('pynfe.utils.nfse.ginfes.servico_consultar_situacao_lote_rps_envio_v03')
def consultar_rps(self, nfse):
"""Retorna string de um XML de consulta por Rps gerado a partir do
@ -291,6 +295,30 @@ class SerializacaoGinfes(InterfaceAutorizador):
return consulta.toxml(element_name='ns1:ConsultarNfseEnvio')
def consultar_lote(self, emitente, numero):
# Prestador
id_prestador = _tipos.tcIdentificacaoPrestador()
id_prestador.Cnpj = emitente.cnpj
id_prestador.InscricaoMunicipal = emitente.inscricao_municipal
consulta = servico_consultar_lote_rps_envio_v03.ConsultarLoteRpsEnvio()
consulta.Prestador = id_prestador
consulta.Protocolo = numero
return consulta.toxml(element_name='ns1:ConsultarLoteRps')
def consultar_situacao_lote(self, emitente, numero):
# Prestador
id_prestador = _tipos.tcIdentificacaoPrestador()
id_prestador.Cnpj = emitente.cnpj
id_prestador.InscricaoMunicipal = emitente.inscricao_municipal
consulta = servico_consultar_situacao_lote_rps_envio_v03.ConsultarSituacaoLoteRpsEnvio()
consulta.Prestador = id_prestador
consulta.Protocolo = numero
return consulta.toxml(element_name='ns1:ConsultarSituacaoLoteRps')
def serializar_lote_assincrono(self, nfse):
"Serializa lote de envio, baseado no servico_enviar_lote_rps_envio_v03.xsd"

18
pynfe/processamento/serializacao.py

@ -612,7 +612,23 @@ class SerializacaoNfse(object):
if self.autorizador.lower() == 'ginfes':
from pynfe.processamento.autorizador_nfse import SerializacaoGinfes
return SerializacaoGinfes().consultar_nfse(emitente, numero, inicio, fim)
else:
raise Exception('Este método só esta implementado no autorizador ginfes.')
def consultar_lote(self, emitente, numero):
if self.autorizador.lower() == 'ginfes':
from pynfe.processamento.autorizador_nfse import SerializacaoGinfes
return SerializacaoGinfes().consultar_lote(emitente, numero)
else:
raise Exception('Este método só esta implementado no autorizador ginfes.')
def consultar_situacao_lote(self, emitente, numero):
if self.autorizador.lower() == 'ginfes':
from pynfe.processamento.autorizador_nfse import SerializacaoGinfes
return SerializacaoGinfes().consultar_situacao_lote(emitente, numero)
else:
raise Exception('Este método só esta implementado no autorizador ginfes.')
def cancelar(self, nfse):
if self.autorizador.lower() == 'ginfes':
from pynfe.processamento.autorizador_nfse import SerializacaoGinfes

19
pynfe/utils/nfse/ginfes/servico_consultar_lote_rps_envio_v03.py

@ -24,8 +24,8 @@ if pyxb.__version__ != _PyXBVersion:
raise pyxb.PyXBVersionError(_PyXBVersion)
# Import bindings for namespaces imported into schema
import _tipos as _ImportedBinding__tipos
import _dsig as _ImportedBinding__dsig
from pynfe.utils.nfse.ginfes import _tipos as _ImportedBinding__tipos
from pynfe.utils.nfse.ginfes import _dsig as _ImportedBinding__dsig
import pyxb.binding.datatypes
# NOTE: All namespace declarations are reserved within the binding
@ -88,25 +88,25 @@ class CTD_ANON (pyxb.binding.basis.complexTypeDefinition):
_ElementMap = {}
_AttributeMap = {}
# Base type is pyxb.binding.datatypes.anyType
# Element {http://www.ginfes.com.br/servico_consultar_lote_rps_envio_v03.xsd}Prestador uses Python identifier Prestador
__Prestador = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, 'Prestador'), 'Prestador', '__httpwww_ginfes_com_brservico_consultar_lote_rps_envio_v03_xsd_CTD_ANON_httpwww_ginfes_com_brservico_consultar_lote_rps_envio_v03_xsdPrestador', False, pyxb.utils.utility.Location('/home/leonardo/Downloads/xsd ginfes/servico_consultar_lote_rps_envio_v03.xsd', 14, 4), )
Prestador = property(__Prestador.value, __Prestador.set, None, None)
# Element {http://www.ginfes.com.br/servico_consultar_lote_rps_envio_v03.xsd}Protocolo uses Python identifier Protocolo
__Protocolo = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, 'Protocolo'), 'Protocolo', '__httpwww_ginfes_com_brservico_consultar_lote_rps_envio_v03_xsd_CTD_ANON_httpwww_ginfes_com_brservico_consultar_lote_rps_envio_v03_xsdProtocolo', False, pyxb.utils.utility.Location('/home/leonardo/Downloads/xsd ginfes/servico_consultar_lote_rps_envio_v03.xsd', 16, 4), )
Protocolo = property(__Protocolo.value, __Protocolo.set, None, None)
# Element {http://www.w3.org/2000/09/xmldsig#}Signature uses Python identifier Signature
__Signature = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(_Namespace_dsig, 'Signature'), 'Signature', '__httpwww_ginfes_com_brservico_consultar_lote_rps_envio_v03_xsd_CTD_ANON_httpwww_w3_org200009xmldsigSignature', False, pyxb.utils.utility.Location('/home/leonardo/Downloads/xsd ginfes/xmldsig-core-schema20020212_v03.xsd', 41, 0), )
Signature = property(__Signature.value, __Signature.set, None, None)
_ElementMap.update({
@ -115,7 +115,7 @@ class CTD_ANON (pyxb.binding.basis.complexTypeDefinition):
__Signature.name() : __Signature
})
_AttributeMap.update({
})
@ -168,4 +168,3 @@ def _BuildAutomaton ():
st_2._set_transitionSet(transitions)
return fac.Automaton(states, counters, False, containing_state=None)
CTD_ANON._Automaton = _BuildAutomaton()

19
pynfe/utils/nfse/ginfes/servico_consultar_situacao_lote_rps_envio_v03.py

@ -24,8 +24,8 @@ if pyxb.__version__ != _PyXBVersion:
raise pyxb.PyXBVersionError(_PyXBVersion)
# Import bindings for namespaces imported into schema
import _tipos as _ImportedBinding__tipos
import _dsig as _ImportedBinding__dsig
from pynfe.utils.nfse.ginfes import _tipos as _ImportedBinding__tipos
from pynfe.utils.nfse.ginfes import _dsig as _ImportedBinding__dsig
import pyxb.binding.datatypes
# NOTE: All namespace declarations are reserved within the binding
@ -88,25 +88,25 @@ class CTD_ANON (pyxb.binding.basis.complexTypeDefinition):
_ElementMap = {}
_AttributeMap = {}
# Base type is pyxb.binding.datatypes.anyType
# Element {http://www.ginfes.com.br/servico_consultar_situacao_lote_rps_envio_v03.xsd}Prestador uses Python identifier Prestador
__Prestador = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, 'Prestador'), 'Prestador', '__httpwww_ginfes_com_brservico_consultar_situacao_lote_rps_envio_v03_xsd_CTD_ANON_httpwww_ginfes_com_brservico_consultar_situacao_lote_rps_envio_v03_xsdPrestador', False, pyxb.utils.utility.Location('/home/leonardo/Downloads/xsd ginfes/servico_consultar_situacao_lote_rps_envio_v03.xsd', 10, 4), )
Prestador = property(__Prestador.value, __Prestador.set, None, None)
# Element {http://www.ginfes.com.br/servico_consultar_situacao_lote_rps_envio_v03.xsd}Protocolo uses Python identifier Protocolo
__Protocolo = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(Namespace, 'Protocolo'), 'Protocolo', '__httpwww_ginfes_com_brservico_consultar_situacao_lote_rps_envio_v03_xsd_CTD_ANON_httpwww_ginfes_com_brservico_consultar_situacao_lote_rps_envio_v03_xsdProtocolo', False, pyxb.utils.utility.Location('/home/leonardo/Downloads/xsd ginfes/servico_consultar_situacao_lote_rps_envio_v03.xsd', 11, 4), )
Protocolo = property(__Protocolo.value, __Protocolo.set, None, None)
# Element {http://www.w3.org/2000/09/xmldsig#}Signature uses Python identifier Signature
__Signature = pyxb.binding.content.ElementDeclaration(pyxb.namespace.ExpandedName(_Namespace_dsig, 'Signature'), 'Signature', '__httpwww_ginfes_com_brservico_consultar_situacao_lote_rps_envio_v03_xsd_CTD_ANON_httpwww_w3_org200009xmldsigSignature', False, pyxb.utils.utility.Location('/home/leonardo/Downloads/xsd ginfes/xmldsig-core-schema20020212_v03.xsd', 41, 0), )
Signature = property(__Signature.value, __Signature.set, None, None)
_ElementMap.update({
@ -115,7 +115,7 @@ class CTD_ANON (pyxb.binding.basis.complexTypeDefinition):
__Signature.name() : __Signature
})
_AttributeMap.update({
})
@ -168,4 +168,3 @@ def _BuildAutomaton ():
st_2._set_transitionSet(transitions)
return fac.Automaton(states, counters, False, containing_state=None)
CTD_ANON._Automaton = _BuildAutomaton()

4
separarpfx.sh

@ -9,5 +9,5 @@
#
# The directory will now have a file cert.pem and a key.pem.
openssl pkcs12 -in JC.pfx -nocerts -nodes -out key.pem -passin pass:12345678
openssl pkcs12 -in JC.pfx -clcerts -nokeys -out cert.pem -passin pass:12345678
openssl pkcs12 -in C.pfx -nocerts -nodes -out key.pem -passin pass:1234
openssl pkcs12 -in C.pfx -clcerts -nokeys -out cert.pem -passin pass:1234
Loading…
Cancel
Save