forked from elmau/empresa-libre
Sincronizar PDF localmente
This commit is contained in:
parent
8fecfb8f56
commit
493f78fda5
|
@ -1481,11 +1481,11 @@ def local_copy(files):
|
|||
args = 'df -P ~/facturas | tail -1 | cut -d" " -f 1'
|
||||
try:
|
||||
result = _call(args)
|
||||
if result != 'empresalibre\n':
|
||||
log.info(result)
|
||||
msg = 'Asegurate de que exista la carpeta para sincronizar'
|
||||
log.error(msg)
|
||||
return
|
||||
# ~ if result != 'empresalibre\n':
|
||||
# ~ log.info(result)
|
||||
# ~ msg = 'Asegurate de que exista la carpeta para sincronizar'
|
||||
# ~ log.error(msg)
|
||||
# ~ return
|
||||
except subprocess.CalledProcessError:
|
||||
msg = 'No se pudo obtener la ruta para sincronizar'
|
||||
log.error(msg)
|
||||
|
|
|
@ -2056,7 +2056,7 @@ class Facturas(BaseModel):
|
|||
return values
|
||||
|
||||
@classmethod
|
||||
def get_pdf(cls, id, rfc):
|
||||
def get_pdf(cls, id, rfc, sync=True):
|
||||
try:
|
||||
emisor = Emisor.select()[0]
|
||||
except IndexError:
|
||||
|
@ -2070,6 +2070,11 @@ class Facturas(BaseModel):
|
|||
values = cls._get_not_in_xml(cls, obj, emisor)
|
||||
data = util.get_data_from_xml(obj, values)
|
||||
doc = util.to_pdf(data, emisor.rfc)
|
||||
|
||||
if sync:
|
||||
target = emisor.rfc + '/' + str(obj.fecha)[:7].replace('-', '/')
|
||||
cls._sync_pdf(cls, doc, name, target)
|
||||
|
||||
return doc, name
|
||||
|
||||
@classmethod
|
||||
|
@ -2099,6 +2104,15 @@ class Facturas(BaseModel):
|
|||
def _sync(self, id, auth):
|
||||
return Facturas.sync(id, auth)
|
||||
|
||||
@util.run_in_thread
|
||||
def _sync_pdf(self, pdf, name_pdf, target):
|
||||
auth = Emisor.get_auth()
|
||||
files = (
|
||||
(pdf, name_pdf, target),
|
||||
)
|
||||
util.sync_cfdi(auth, files)
|
||||
return
|
||||
|
||||
@util.run_in_thread
|
||||
def _actualizar_saldo_cliente(self, invoice):
|
||||
if invoice.tipo_comprobante == 'T':
|
||||
|
@ -2169,7 +2183,7 @@ class Facturas(BaseModel):
|
|||
return
|
||||
|
||||
emisor = Emisor.select()[0]
|
||||
pdf, name_pdf = cls.get_pdf(id, auth['RFC'])
|
||||
pdf, name_pdf = cls.get_pdf(id, auth['RFC'], False)
|
||||
name_xml = '{}{}_{}.xml'.format(obj.serie, obj.folio, obj.cliente.rfc)
|
||||
target = emisor.rfc + '/' + str(obj.fecha)[:7].replace('-', '/')
|
||||
files = (
|
||||
|
|
Loading…
Reference in New Issue