131 lines
8.7 KiB
Python
131 lines
8.7 KiB
Python
# Generated by Django 3.1.5 on 2021-01-16 19:43
|
|
|
|
from django.db import migrations, models
|
|
import django.db.models.deletion
|
|
import main.models
|
|
|
|
|
|
class Migration(migrations.Migration):
|
|
|
|
initial = True
|
|
|
|
dependencies = [
|
|
]
|
|
|
|
operations = [
|
|
migrations.CreateModel(
|
|
name='Cfdi',
|
|
fields=[
|
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
|
('uuid', models.UUIDField(unique=True, verbose_name='UUID')),
|
|
('version', models.CharField(max_length=10, verbose_name='Version')),
|
|
('version_nomina', models.CharField(blank=True, default='', max_length=10, verbose_name='Ver. Nom.')),
|
|
('serie', models.CharField(blank=True, default='', max_length=50, verbose_name='Serie')),
|
|
('folio', models.CharField(blank=True, default='', max_length=50, verbose_name='Folio')),
|
|
('date_cfdi', models.DateTimeField(verbose_name='Fecha CFDI')),
|
|
('date_stamp', models.DateTimeField(verbose_name='Fecha Timbrado')),
|
|
('date_cancel', models.DateTimeField(null=True, verbose_name='Fecha Cancelada')),
|
|
('type_cfdi', models.CharField(blank=True, default='', max_length=100, verbose_name='Tipo')),
|
|
('no_cert', models.CharField(blank=True, default='', max_length=50, verbose_name='No. Certificado')),
|
|
('no_cert_sat', models.CharField(blank=True, default='', max_length=50, verbose_name='Cert. SAT')),
|
|
('place_expedition', models.CharField(blank=True, default='', max_length=200, verbose_name='Lugar Expedición')),
|
|
('currency', models.CharField(blank=True, default='MXN', max_length=100, verbose_name='Moneda')),
|
|
('type_change', models.DecimalField(decimal_places=6, max_digits=19, null=True, verbose_name='T.C.')),
|
|
('way_pay', models.CharField(blank=True, default='', max_length=100, verbose_name='Forma de pago')),
|
|
('method_pay', models.CharField(blank=True, default='', max_length=100, verbose_name='Método de pago')),
|
|
('subtotal', models.DecimalField(decimal_places=6, max_digits=19, verbose_name='Subtotal')),
|
|
('discount', models.DecimalField(decimal_places=6, max_digits=19, null=True, verbose_name='Descuento')),
|
|
('tax_trasladados', models.DecimalField(decimal_places=6, max_digits=19, null=True, verbose_name='I. Trasladados')),
|
|
('tax_retenidos', models.DecimalField(decimal_places=6, max_digits=19, null=True, verbose_name='I. Retenidos')),
|
|
('tax_others', models.DecimalField(decimal_places=6, max_digits=19, null=True, verbose_name='Otros I.')),
|
|
('total', models.DecimalField(decimal_places=6, max_digits=19, verbose_name='Total')),
|
|
('emisor_rfc', main.models.RFCField(max_length=13, verbose_name='Emisor RFC')),
|
|
('emisor', models.CharField(blank=True, default='', max_length=500, verbose_name='Emisor')),
|
|
('regimen_fiscal', models.CharField(blank=True, default='', max_length=10, verbose_name='Regimen Fiscal')),
|
|
('registro_patronal', models.CharField(blank=True, default='', max_length=50, verbose_name='Registro Patronal')),
|
|
('receptor_rfc', main.models.RFCField(max_length=13, verbose_name='Receptor RFC')),
|
|
('receptor', models.CharField(blank=True, default='', max_length=500, verbose_name='Receptor')),
|
|
('uso_cfdi', models.CharField(blank=True, default='', max_length=50, verbose_name='Uso CFDI')),
|
|
('rfc_pac', models.CharField(blank=True, default='', max_length=15, verbose_name='RFC PAC')),
|
|
('status_sat', models.CharField(blank=True, default='', max_length=100, verbose_name='Estatus SAT')),
|
|
('xml', models.TextField(verbose_name='XML')),
|
|
],
|
|
options={
|
|
'verbose_name': 'Cfdi',
|
|
'verbose_name_plural': 'Cfdis',
|
|
'ordering': ['-date_cfdi'],
|
|
},
|
|
),
|
|
migrations.CreateModel(
|
|
name='CfdiDetails',
|
|
fields=[
|
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
|
('key', models.CharField(blank=True, default='', max_length=15, verbose_name='Clave')),
|
|
('key_sat', models.CharField(blank=True, default='', max_length=15, verbose_name='Clave SAT')),
|
|
('key_unit', models.CharField(blank=True, default='', max_length=15, verbose_name='Clave Unidad')),
|
|
('unit', models.CharField(blank=True, default='', max_length=100, verbose_name='Unidad')),
|
|
('description', models.CharField(blank=True, default='', max_length=5000, verbose_name='Descripción')),
|
|
('cant', models.DecimalField(decimal_places=6, max_digits=19, verbose_name='Cantidad')),
|
|
('value', models.DecimalField(decimal_places=6, max_digits=19, verbose_name='Valor Unitario')),
|
|
('discount', models.DecimalField(decimal_places=6, max_digits=19, null=True, verbose_name='Descuento')),
|
|
('importe', models.DecimalField(decimal_places=6, max_digits=19, verbose_name='Importe')),
|
|
('cfdi', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='cfdi_details', to='main.cfdi')),
|
|
],
|
|
options={
|
|
'verbose_name': 'Concepto',
|
|
'verbose_name_plural': 'Conceptos',
|
|
},
|
|
),
|
|
migrations.CreateModel(
|
|
name='Clients',
|
|
fields=[
|
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
|
('rfc', main.models.RFCField(max_length=13, unique=True, verbose_name='RFC')),
|
|
('name', models.CharField(max_length=500, verbose_name='Razón Social')),
|
|
('key', models.TextField(blank=True, default='', verbose_name='Key')),
|
|
('cer', models.TextField(blank=True, default='', verbose_name='Cer')),
|
|
('serial_number', models.CharField(blank=True, default='', max_length=100, verbose_name='Fiel Serie')),
|
|
('date_from', models.DateTimeField(blank=True, null=True, verbose_name='Desde')),
|
|
('date_to', models.DateTimeField(blank=True, null=True, verbose_name='Hasta')),
|
|
],
|
|
options={
|
|
'verbose_name': 'Cliente',
|
|
'verbose_name_plural': 'Clientes',
|
|
'ordering': ['name'],
|
|
},
|
|
),
|
|
migrations.CreateModel(
|
|
name='Taxes',
|
|
fields=[
|
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
|
('type_tax', models.CharField(choices=[('T', 'Traslado'), ('R', 'Retención')], max_length=1, verbose_name='Tipo')),
|
|
('key_sat', models.CharField(blank=True, default='', max_length=5, verbose_name='Clave SAT')),
|
|
('importe', models.DecimalField(decimal_places=6, max_digits=19, verbose_name='Importe')),
|
|
('type_factor', models.CharField(blank=True, default='', max_length=10, verbose_name='Tipo Factor')),
|
|
('rate', models.DecimalField(decimal_places=6, max_digits=19, null=True, verbose_name='Tasa')),
|
|
('cfdi', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='cfdi_taxes', to='main.cfdi')),
|
|
],
|
|
options={
|
|
'verbose_name': 'Impuesto',
|
|
'verbose_name_plural': 'Impuestos',
|
|
},
|
|
),
|
|
migrations.CreateModel(
|
|
name='DetailTaxes',
|
|
fields=[
|
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
|
('type_tax', models.CharField(choices=[('T', 'Traslado'), ('R', 'Retención')], max_length=1, verbose_name='Tipo')),
|
|
('key_sat', models.CharField(blank=True, default='', max_length=5, verbose_name='Clave SAT')),
|
|
('base', models.DecimalField(decimal_places=6, max_digits=19, verbose_name='Base')),
|
|
('importe', models.DecimalField(decimal_places=6, max_digits=19, verbose_name='Importe')),
|
|
('type_factor', models.CharField(blank=True, default='', max_length=10, verbose_name='Tipo Factor')),
|
|
('rate', models.DecimalField(decimal_places=6, max_digits=19, null=True, verbose_name='Tasa')),
|
|
('detail', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='detail', to='main.cfdidetails')),
|
|
],
|
|
options={
|
|
'verbose_name': 'Impuesto',
|
|
'verbose_name_plural': 'Impuestos',
|
|
},
|
|
),
|
|
]
|