Resuelto: ticket #29

This commit is contained in:
El Mau 2021-12-30 11:56:22 -06:00
parent 2a2689a61b
commit 46d6329754
3 changed files with 23 additions and 20 deletions

View File

@ -72,6 +72,7 @@ from settings import USAR_TOKEN, API, DECIMALES_TAX
# ~ from .configpac import AUTH
from .utils import get_qr
# ~ v2
import segno
from .pacs.cfdi_cert import SATCertificate
@ -1606,22 +1607,22 @@ def to_letters(value, currency):
return NumLet(value, currency).letras
def get_qr(data, p=True):
qr = pyqrcode.create(data, mode='binary')
if p:
path = get_path_temp('.qr')
qr.png(path, scale=7)
return path
# ~ def get_qr(data, p=True):
# ~ qr = pyqrcode.create(data, mode='binary')
# ~ if p:
# ~ path = get_path_temp('.qr')
# ~ qr.png(path, scale=7)
# ~ return path
buffer = io.BytesIO()
qr.png(buffer, scale=8)
return base64.b64encode(buffer.getvalue()).decode()
# ~ buffer = io.BytesIO()
# ~ qr.png(buffer, scale=8)
# ~ return base64.b64encode(buffer.getvalue()).decode()
def get_qr2(data, kind='svg'):
buffer = io.BytesIO()
segno.make(data).save(buffer, kind=kind, scale=8, border=2)
return buffer
# ~ def get_qr2(data, kind='svg'):
# ~ buffer = io.BytesIO()
# ~ segno.make(data).save(buffer, kind=kind, scale=8, border=2)
# ~ return buffer
def _get_relacionados(doc, version):
@ -1878,9 +1879,9 @@ def _timbre(doc, version, values, pdf_from='1'):
qr_data = '{url}{uuid}{emisor}{receptor}{total}{sello}'.format(**qr_data)
if pdf_from == '1':
data['cbb'] = get_qr2(qr_data)
data['cbb'] = get_qr(qr_data, 'png')
else:
data['cbb'] = get_qr2(qr_data, 'png')
data['cbb'] = get_qr(qr_data)
data['cadenaoriginal'] = CADENA.format(**data)
return data

View File

@ -830,7 +830,10 @@ def upload_file(rfc, opt, file_obj):
return result
def get_qr(data):
def get_qr(data, kind='svg', in_base64=False):
buffer = io.BytesIO()
segno.make(data).save(buffer, kind='svg', scale=8, border=2)
return buffer.getvalue()
segno.make(data).save(buffer, kind=kind, scale=8, border=2)
qr = buffer
if in_base64:
qr = base64.b64encode(qr.getvalue()).decode()
return qr

View File

@ -4670,9 +4670,8 @@ class Facturas(BaseModel):
f"&rr={data['receptor_rfc']}&tt={data['cfdi_total']}"
f"&fe={data['cfdi_sello'][-8:]}"
)
cbb = util.get_qr(qr_data, False)
cbb = utils.get_qr(qr_data, 'png', True)
data['cbb'] = f'data:image/png;base64,{cbb}'
# ~ data['cbb'] = utils.get_qr(qr_data)
return data