forked from elmau/empresa-libre
Tablas para permisos
This commit is contained in:
parent
8e75a6cc16
commit
9d2b79b53b
|
@ -528,6 +528,29 @@ class Sucursales(BaseModel):
|
|||
order_by = ('nombre',)
|
||||
|
||||
|
||||
class Roles(BaseModel):
|
||||
nombre = TextField(default='')
|
||||
|
||||
class Meta:
|
||||
order_by = ('nombre',)
|
||||
|
||||
|
||||
class Permisos(BaseModel):
|
||||
rol = ForeignKeyField(Roles)
|
||||
modulo = TextField(default='')
|
||||
ver = BooleanField(default=False)
|
||||
agregar = BooleanField(default=False)
|
||||
editar = BooleanField(default=False)
|
||||
eliminar = BooleanField(default=False)
|
||||
especiales = TextField(default='')
|
||||
|
||||
class Meta:
|
||||
order_by = ('rol', 'modulo')
|
||||
indexes = (
|
||||
(('rol', 'modulo'), True),
|
||||
)
|
||||
|
||||
|
||||
class Usuarios(BaseModel):
|
||||
usuario = TextField(unique=True)
|
||||
nombre = TextField(default='')
|
||||
|
@ -540,6 +563,7 @@ class Usuarios(BaseModel):
|
|||
fecha_ingreso = DateTimeField(default=util.now)
|
||||
ultimo_ingreso = DateTimeField(null=True)
|
||||
sucursal = ForeignKeyField(Sucursales, null=True)
|
||||
rol = ForeignKeyField(Roles, null=True)
|
||||
|
||||
def __str__(self):
|
||||
t = '{} {} ({})'
|
||||
|
@ -897,6 +921,7 @@ class Folios(BaseModel):
|
|||
inicio = IntegerField(default=1)
|
||||
default = BooleanField(default=False)
|
||||
usarcon = TextField(default='')
|
||||
plantilla = TextField(default='')
|
||||
|
||||
class Meta:
|
||||
order_by = ('-default', 'serie', 'inicio')
|
||||
|
@ -2305,6 +2330,7 @@ class Addendas(BaseModel):
|
|||
class Socios(BaseModel):
|
||||
tipo_persona = IntegerField(default=1)
|
||||
rfc = TextField(index=True)
|
||||
id_fiscal = TextField(default='')
|
||||
nombre = TextField(index=True)
|
||||
slug = TextField(default='')
|
||||
nombre_comercial = TextField(index=True, default='')
|
||||
|
@ -2338,6 +2364,7 @@ class Socios(BaseModel):
|
|||
addenda = ForeignKeyField(Addendas, null=True)
|
||||
uso_cfdi = ForeignKeyField(SATUsoCfdi, null=True)
|
||||
tags = ManyToManyField(Tags, related_name='socios_tags')
|
||||
plantilla = TextField(default='')
|
||||
|
||||
def __str__(self):
|
||||
t = '{} ({})'
|
||||
|
@ -4782,6 +4809,7 @@ class PreFacturasDetalle(BaseModel):
|
|||
nivel = TextField(default='')
|
||||
autorizacion = TextField(default='')
|
||||
cuenta_predial = TextField(default='')
|
||||
unidad = TextField(default='')
|
||||
|
||||
class Meta:
|
||||
order_by = ('factura',)
|
||||
|
@ -7057,7 +7085,7 @@ def _init_values(rfc):
|
|||
|
||||
def _crear_tablas(rfc):
|
||||
tablas = [Addendas, Categorias, Certificado, CondicionesPago, Configuracion,
|
||||
Folios, Registro, CamposPersonalizados,
|
||||
Folios, Registro, CamposPersonalizados, Permisos,
|
||||
Emisor, Facturas, FacturasDetalle, FacturasImpuestos, FacturasPagos,
|
||||
FacturasRelacionadas, FacturasComplementos, FacturasPersonalizados,
|
||||
SeriesProductos, Almacenes, Productos, RangosPrecios, Sucursales,
|
||||
|
@ -7071,7 +7099,7 @@ def _crear_tablas(rfc):
|
|||
SATTipoPercepcion, SATTipoRegimen,
|
||||
Socios, Contactos, ContactoCorreos, ContactoDirecciones, Empleados,
|
||||
ContactoTelefonos, Departamentos, Puestos,
|
||||
Tags, Usuarios, CuentasBanco, TipoCambio, MovimientosBanco,
|
||||
Tags, Roles, Usuarios, CuentasBanco, TipoCambio, MovimientosBanco,
|
||||
TipoCorreo, TipoDireccion, TipoPariente, TipoResponsable, TipoTelefono,
|
||||
TipoTitulo, TipoMovimientoAlumno, TipoMovimientoAlmacen,
|
||||
CfdiPagos, NivelesEducativos, Alumnos, AlumnosParientes, Grupos,
|
||||
|
@ -7133,7 +7161,7 @@ def _migrate_tables():
|
|||
CfdiNominaHorasExtra, CfdiNominaIncapacidad, CfdiNominaJubilacion,
|
||||
CfdiNominaOtroPago, CfdiNominaOtros, CfdiNominaPercepciones,
|
||||
CfdiNominaRelacionados, CfdiNominaSeparacion, CfdiNominaSubcontratos,
|
||||
CfdiNominaTotales, SATNivelesEducativos
|
||||
CfdiNominaTotales, SATNivelesEducativos, Roles, Permisos
|
||||
]
|
||||
log.info('Creando tablas nuevas...')
|
||||
database_proxy.create_tables(tablas, True)
|
||||
|
@ -7148,6 +7176,10 @@ def _migrate_tables():
|
|||
sucursal = ForeignKeyField(Sucursales, null=True, to_field=Sucursales.id)
|
||||
migrations.append(
|
||||
migrator.add_column('usuarios', 'sucursal_id', sucursal))
|
||||
if not 'rol_id' in columns:
|
||||
rol = ForeignKeyField(Roles, null=True, to_field=Roles.id)
|
||||
migrations.append(
|
||||
migrator.add_column('usuarios', 'rol_id', rol))
|
||||
|
||||
columns = [c.name for c in database_proxy.get_columns('emisor')]
|
||||
if not 'registro_patronal' in columns:
|
||||
|
@ -7160,6 +7192,29 @@ def _migrate_tables():
|
|||
migrations.append(
|
||||
migrator.add_column('emisor', 'curp', curp))
|
||||
|
||||
columns = [c.name for c in database_proxy.get_columns('socios')]
|
||||
if not 'id_fiscal' in columns:
|
||||
id_fiscal = TextField(default='')
|
||||
migrations.append(
|
||||
migrator.add_column(
|
||||
'socios', 'id_fiscal', id_fiscal))
|
||||
if not 'plantilla' in columns:
|
||||
plantilla = TextField(default='')
|
||||
migrations.append(
|
||||
migrator.add_column('socios', 'plantilla', plantilla))
|
||||
|
||||
columns = [c.name for c in database_proxy.get_columns('folios')]
|
||||
if not 'plantilla' in columns:
|
||||
plantilla = TextField(default='')
|
||||
migrations.append(
|
||||
migrator.add_column('folios', 'plantilla', plantilla))
|
||||
|
||||
columns = [c.name for c in database_proxy.get_columns('prefacturasdetalle')]
|
||||
if not 'unidad' in columns:
|
||||
unidad = TextField(default='')
|
||||
migrations.append(
|
||||
migrator.add_column('prefacturasdetalle', 'unidad', unidad))
|
||||
|
||||
if migrations:
|
||||
with database_proxy.atomic() as txn:
|
||||
migrate(*migrations)
|
||||
|
|
|
@ -102,7 +102,7 @@
|
|||
{"key": "610", "name": "Residentes en el Extranjero sin Establecimiento Permanente en México", "fisica": true, "moral": true, "activo": false},
|
||||
{"key": "611", "name": "Ingresos por Dividendos (socios y accionistas)", "fisica": true, "activo": false},
|
||||
{"key": "612", "name": "Personas Físicas con Actividades Empresariales y Profesionales", "fisica": true, "activo": true, "default": true},
|
||||
{"key": "614", "name": "Ingresos por intereses", "fisica": true, "activo": false},
|
||||
{"key": "614", "name": "Ingresos por intereses", "fisica": true, "activo": true},
|
||||
{"key": "616", "name": "Sin obligaciones fiscales", "fisica": true, "activo": false},
|
||||
{"key": "620", "name": "Sociedades Cooperativas de Producción que optan por diferir sus ingresos", "moral": true, "activo": false},
|
||||
{"key": "621", "name": "Incorporación Fiscal", "fisica": true, "activo": true},
|
||||
|
|
Loading…
Reference in New Issue