Browse Source

ajuste para python 3

pull/1/head
Junior Tada 11 years ago
parent
commit
0f57086b91
  1. 2
      pynfe/entidades/base.py
  2. 2
      pynfe/entidades/fonte_dados.py
  3. 6
      pynfe/processamento/serializacao.py
  4. 6
      pynfe/utils/__init__.py
  5. 7
      test.py

2
pynfe/entidades/base.py

@ -11,7 +11,7 @@ class Entidade(object):
# Adiciona o objeto à fonte de dados informada
if not self._fonte_dados:
from fonte_dados import _fonte_dados
from .fonte_dados import _fonte_dados
self._fonte_dados = _fonte_dados
self._fonte_dados.adicionar_objeto(self)

2
pynfe/entidades/fonte_dados.py

@ -49,7 +49,7 @@ class FonteDados(object):
u"""Método responsável por adicionar o(s) objeto(s) informado(s) ao
repositorio de objetos da fonte de dados."""
from base import Entidade
from .base import Entidade
# Adiciona _objeto como objeto
if isinstance(_objeto, Entidade):

6
pynfe/processamento/serializacao.py

@ -27,7 +27,7 @@ class Serializacao(object):
if cls == Serializacao:
raise Exception('Esta classe nao pode ser instanciada diretamente!')
else:
return super(Serializacao, cls).__new__(cls, *args, **kwargs)
return super(Serializacao, cls).__new__(cls)
def __init__(self, fonte_dados, homologacao=False):
self._fonte_dados = fonte_dados
@ -247,10 +247,10 @@ class SerializacaoXML(Serializacao):
"""dhCont Data e Hora da entrada em contingência E B01 D 0-1 Formato AAAA-MM-DDThh:mm:ssTZD (UTC - Universal
Coordinated Time)
Exemplo: no formato UTC para os campos de Data-Hora, "TZD" pode ser -02:00 (Fernando de Noronha), -03:00 (Brasília) ou -04:00 (Manaus), no
horário de verão serão -01:00, -02:00 e -03:00. Exemplo: "2010-08-19T13:00:15-03:00".
horário de verão serão -01:00, -02:00 e -03:00. Exemplo: "2010-08-19T13:00:15-03:00".
"""
etree.SubElement(ide, 'tpNF').text = str(nota_fiscal.tipo_documento) # 0=entrada 1=saida
etree.SubElement(ide, 'idDest').text = str(1) # Identificador de local de destino da operação 1=Operação interna;2=Operação interestadual;3=Operação com exterior.
etree.SubElement(ide, 'idDest').text = str(1) # Identificador de local de destino da operação 1=Operação interna;2=Operação interestadual;3=Operação com exterior.
etree.SubElement(ide, 'cMunFG').text = nota_fiscal.municipio
etree.SubElement(ide, 'tpImp').text = str(nota_fiscal.tipo_impressao_danfe)
etree.SubElement(ide, 'tpEmis').text = str(nota_fiscal.forma_emissao)

6
pynfe/utils/__init__.py

@ -31,7 +31,7 @@ except ImportError:
try:
from StringIO import StringIO
except ImportError:
from io import StringIO
from io import StringIO
try:
import flags
@ -74,7 +74,7 @@ CARACTERS_ACENTUADOS = {
# @memoize
def normalizar_municipio(municipio):
if not isinstance(municipio, unicode):
if not isinstance(municipio, str):
municipio = municipio.decode('utf-8')
return municipio.lower().translate(CARACTERS_ACENTUADOS).upper()
@ -82,7 +82,7 @@ def normalizar_municipio(municipio):
# @memoize
def carregar_arquivo_municipios(uf, reverso=False):
if isinstance(uf, basestring):
if isinstance(uf, str):
try:
uf = int(uf)
except ValueError:

7
test.py

@ -79,9 +79,9 @@ nota_fiscal = NotaFiscal(
nota_fiscal.adicionar_produto_servico(codigo='000328', # id do produto (000328 era o id no antigo sistemas de assinatura)
descricao='Assinatura Rolling Stone',
ncm='49029000', # categoria international do prod (sempre esse para assinaturas)
cfop='6922',
cfop='6922',
unidade_comercial='UN',
quantidade_comercial=Decimal('12'), # 12 unidades (12 revistas)
quantidade_comercial=Decimal('12'), # 12 unidades (12 revistas)
valor_unitario_comercial=Decimal('9.75'),
valor_total_bruto=Decimal('117.00'),
unidade_tributavel='UN',
@ -104,7 +104,7 @@ nota_fiscal.adicionar_produto_servico(codigo='000328', # id do produto (000328 e
serializador = SerializacaoXML(_fonte_dados, homologacao=True)
xml= serializador.exportar(retorna_string=True)
arquivo = file('nota1.xml', 'w')
arquivo = open('nota1.xml', 'wb')
arquivo.write(xml)
certificado = '/home/junior/Projetos/falcao/doc/JC FERRAGENS S=12345678.pfx'
senha = '12345328'
@ -113,4 +113,3 @@ a = AssinaturaA1(certificado, senha)
print (a.assinar_nfe(xml))
#print serializador._serializar_nota_fiscal(nota_fiscal)
Loading…
Cancel
Save