Add template cfdi pay

This commit is contained in:
Mauricio Baeza 2018-08-30 11:25:40 -05:00
parent fdbfbb2bc0
commit 9dc2c72de7
3 changed files with 31 additions and 7 deletions

View File

@ -216,6 +216,8 @@ def get_doc(type_doc, id, rfc):
data, file_name = CfdiNomina.get_pdf(id, rfc)
elif type_doc == 'xmlpago':
data, file_name = CfdiPagos.get_file_xml(id)
elif type_doc == 'pdfpago':
data, file_name = CfdiPagos.get_file_pdf(id)
return data, file_name, content_type
@ -5265,7 +5267,7 @@ class CfdiPagos(BaseModel):
estatus_sat = TextField(default='')
notas = TextField(default='')
error = TextField(default='')
cancelado = BooleanField(default=False)
cancelada = BooleanField(default=False)
class Meta:
order_by = ('movimiento',)
@ -5521,6 +5523,27 @@ class CfdiPagos(BaseModel):
name = '{}{}_{}.xml'.format(obj.serie, folio, obj.socio.rfc)
return obj.xml, name
@classmethod
def get_file_pdf(cls, id):
try:
emisor = Emisor.select()[0]
except IndexError:
return b'', 'sin_datos_de_emisor.pdf'
obj = CfdiPagos.get(CfdiPagos.id==id)
folio = str(obj.folio).zfill(6)
name = '{}{}_{}.pdf'.format(obj.serie, folio, obj.socio.rfc)
if obj.uuid is None:
return b'', name
# ~ values = cls._get_not_in_xml(cls, obj, emisor)
data = util.get_data_from_xml(obj, {})
print(data)
# ~ doc = util.to_pdf(data, emisor.rfc)
return b'', name
@classmethod
def get_values(cls, values):
opt = values.pop('opt')
@ -7809,6 +7832,7 @@ def _migrate_tables():
error = TextField(default='')
tipo_relacion = TextField(default='')
uuid_relacionado = UUIDField(null=True)
cancelada = BooleanField(default=False)
migrations.append(migrator.add_column('cfdipagos', 'serie', serie))
migrations.append(migrator.add_column('cfdipagos', 'folio', folio))
migrations.append(migrator.add_column('cfdipagos', 'lugar_expedicion', lugar_expedicion))
@ -7818,6 +7842,8 @@ def _migrate_tables():
migrations.append(migrator.add_column('cfdipagos', 'tipo_relacion', tipo_relacion))
migrations.append(migrator.add_column('cfdipagos', 'uuid_relacionado', uuid_relacionado))
migrations.append(migrator.add_column('cfdipagos', 'socio_id', socio))
migrations.append(migrator.drop_column('cfdipagos', 'cancelado'))
migrations.append(migrator.add_column('cfdipagos', 'cancelada', cancelada))
if migrations:
with database_proxy.atomic() as txn:

View File

@ -881,12 +881,10 @@ function grid_cfdi_pay_click(id, e, node){
if(id.column == 'xml'){
location = '/doc/xmlpago/' + row.id
}else if(id.column == 'pdf'){
window.open('/doc/pdfpago/' + row.id, '_blank')
}else if(id.column == 'email'){
//~ enviar_correo(row)
}
//~ }else if(id.column == 'pdf'){
//~ get_pdf(row.id)
//~ }else if(id.column == 'email'){
//~ enviar_correo(row)
//~ }
}

Binary file not shown.