Skip to content

Commit 6c1106d

Browse files
authored
Merge pull request #198 from FernandoBernardi/main
Corrigido NFC-e no estado de SC
2 parents 2f12e17 + fdf01a0 commit 6c1106d

2 files changed

Lines changed: 24 additions & 23 deletions

File tree

pynfe/processamento/serializacao.py

Lines changed: 23 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1157,7 +1157,7 @@ def gerar_qrcode(self, token, csc, xml, return_qr=False, online=True):
11571157
data = nfe.xpath('ns:infNFe/ns:ide/ns:dhEmi/text()', namespaces=ns)[0].encode()
11581158
tpamb = nfe.xpath('ns:infNFe/ns:ide/ns:tpAmb/text()', namespaces=ns)[0]
11591159
cuf = nfe.xpath('ns:infNFe/ns:ide/ns:cUF/text()', namespaces=ns)[0]
1160-
uf = [key for key, value in CODIGOS_ESTADOS.items() if value == cuf][0]
1160+
uf = [key for key, value in CODIGOS_ESTADOS.items() if value == cuf][0].upper()
11611161

11621162
# tenta encontrar a tag cpf
11631163
try:
@@ -1201,45 +1201,46 @@ def gerar_qrcode(self, token, csc, xml, return_qr=False, online=True):
12011201
# Informar a URL da “Consulta por chave de acesso da NFC-e”.
12021202
# A mesma URL que deve estar informada no DANFE NFC-e para consulta por chave de acesso
12031203
lista_uf_padrao = ['PR', 'CE', 'RS', 'RJ', 'RO', 'DF']
1204-
if uf.upper() in lista_uf_padrao:
1205-
qrcode = NFCE[uf.upper()]['QR'] + url
1206-
url_chave = NFCE[uf.upper()]['URL']
1207-
elif uf.upper() == 'SP':
1204+
if uf in lista_uf_padrao:
1205+
qrcode = NFCE[uf]['QR'] + url
1206+
url_chave = NFCE[uf]['URL']
1207+
elif uf == 'SP':
12081208
if tpamb == '1':
1209-
qrcode = NFCE[uf.upper()]['HTTPS'] + 'www.' + NFCE[uf.upper()]['QR'] + url
1210-
url_chave = NFCE[uf.upper()]['HTTPS'] + 'www.' + NFCE[uf.upper()]['URL']
1209+
qrcode = NFCE[uf]['HTTPS'] + 'www.' + NFCE[uf]['QR'] + url
1210+
url_chave = NFCE[uf]['HTTPS'] + 'www.' + NFCE[uf]['URL']
12111211
else:
1212-
qrcode = NFCE[uf.upper()]['HTTPS'] + 'www.homologacao.' + NFCE[uf.upper()]['QR'] + url
1213-
url_chave = NFCE[uf.upper()]['HTTPS'] + 'www.homologacao.' + NFCE[uf.upper()]['URL']
1212+
qrcode = NFCE[uf]['HTTPS'] + 'www.homologacao.' + NFCE[uf]['QR'] + url
1213+
url_chave = NFCE[uf]['HTTPS'] + 'www.homologacao.' + NFCE[uf]['URL']
12141214
# BA tem comportamento distindo para qrcode e url
1215-
elif uf.upper() == 'BA':
1215+
elif uf == 'BA':
12161216
if tpamb == '1':
1217-
qrcode = NFCE[uf.upper()]['HTTPS'] + NFCE[uf.upper()]['QR'] + url
1217+
qrcode = NFCE[uf]['HTTPS'] + NFCE[uf]['QR'] + url
12181218
else:
1219-
qrcode = NFCE[uf.upper()]['HOMOLOGACAO'] + NFCE[uf.upper()]['QR'] + url
1220-
url_chave = url_chave = NFCE[uf.upper()]['URL']
1219+
qrcode = NFCE[uf]['HOMOLOGACAO'] + NFCE[uf]['QR'] + url
1220+
url_chave = url_chave = NFCE[uf]['URL']
12211221
# MG tem comportamento distindos qrcode e url
1222-
elif uf.upper() == 'MG':
1223-
qrcode = NFCE[uf.upper()]['QR'] + url
1222+
elif uf == 'MG':
1223+
qrcode = NFCE[uf]['QR'] + url
12241224
if tpamb == '1':
1225-
url_chave = NFCE[uf.upper()]['HTTPS'] + NFCE[uf.upper()]['URL']
1225+
url_chave = NFCE[uf]['HTTPS'] + NFCE[uf]['URL']
12261226
else:
1227-
url_chave = NFCE[uf.upper()]['HOMOLOGACAO'] + NFCE[uf.upper()]['URL']
1227+
url_chave = NFCE[uf]['HOMOLOGACAO'] + NFCE[uf]['URL']
12281228
# AC, AM, RR, PA,
12291229
else:
12301230
if tpamb == '1':
1231-
qrcode = NFCE[uf.upper()]['HTTPS'] + NFCE[uf.upper()]['QR'] + url
1232-
url_chave = NFCE[uf.upper()]['HTTPS'] + NFCE[uf.upper()]['URL']
1231+
qrcode = NFCE[uf]['HTTPS'] + NFCE[uf]['QR'] + url
1232+
url_chave = NFCE[uf]['HTTPS'] + NFCE[uf]['URL']
12331233
else:
1234-
qrcode = NFCE[uf.upper()]['HOMOLOGACAO'] + NFCE[uf.upper()]['QR'] + url
1235-
url_chave = NFCE[uf.upper()]['HOMOLOGACAO'] + NFCE[uf.upper()]['URL']
1234+
qrcode = NFCE[uf]['HOMOLOGACAO'] + NFCE[uf]['QR'] + url
1235+
url_chave = NFCE[uf]['HOMOLOGACAO'] + NFCE[uf]['URL']
12361236
# adicionta tag infNFeSupl com qrcode
12371237
info = etree.Element('infNFeSupl')
12381238
etree.SubElement(info, 'qrCode').text = '<![CDATA['+ qrcode.strip() + ']]>'
12391239
etree.SubElement(info, 'urlChave').text = url_chave
12401240
nfe.insert(1, info)
12411241
# correção da tag qrCode, retira caracteres pois e CDATA
1242-
tnfe = etree.tostring(nfe, encoding='unicode')
1242+
tnfe = etree.tostring(nfe, encoding='unicode') \
1243+
.replace('\n','').replace('&lt;','<').replace('&gt;','>').replace('amp;','')
12431244
etree.tostring(nfe.find(".//qrCode"), encoding='unicode') \
12441245
.replace('\n','').replace('&lt;','<').replace('&gt;','>').replace('amp;','')
12451246
nfe = etree.fromstring(tnfe)

pynfe/utils/webservices.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -230,7 +230,7 @@
230230
'CHAVE': '',
231231
'INUTILIZACAO': '',
232232
'EVENTOS': '',
233-
'QR': 'sat.sef.sc.gov.br/nfce/consulta?p=',
233+
'QR': 'sat.sef.sc.gov.br/nfce/consulta?',
234234
'HTTPS': 'https://',
235235
'HOMOLOGACAO': 'https://hom.',
236236
'URL': 'sat.sef.sc.gov.br/nfce/consulta'

0 commit comments

Comments
 (0)