# -*- encoding: utf-8 -*- from django.db import models from django.contrib.auth.models import User class Estatus(models.Model): clave = models.CharField(max_length=250) descripcion = models.CharField(max_length=250) color = models.CharField(max_length=30) class Meta: verbose_name="Estatus" verbose_name_plural="Estatus" db_table="Estatus" def __unicode__(self): return self.clave class Rubros(models.Model): clave = models.CharField(max_length=250) nombre = models.CharField(max_length=250) descripcion = models.CharField(max_length=250) cat_estatus = models.ForeignKey(Estatus) class Meta: verbose_name="Rubros" verbose_name_plural="Rubros" db_table="Rubros" def __unicode__(self): return '%d - %s ' %(self.id,self.nombre) class Camaras(models.Model): clave = models.CharField(max_length=250) nombre = models.CharField('Nombre de la Camara Corresponsal',max_length=400) descripcion = models.CharField(max_length=250) cat_estatus = models.ForeignKey(Estatus) class Meta: verbose_name="Camara" verbose_name_plural="Camaras" db_table="Camaras" def __unicode__(self): return "%s - %s"%(self.id,self.nombre) class Secretario(models.Model): nombre = models.CharField(max_length=250) apepat = models.CharField(max_length=250) apemat = models.CharField(max_length=250) anio = models.IntegerField() cat_estatus = models.ForeignKey(Estatus) class meta: verbose_name="Secretario" verbose_name_plural="Secretario" db_table="Secretario" def __unicode__(self): return self.nombre class Proveedores(models.Model): TIPO_DOMICILIO =[ (1,'LOCAL'), (2,'FORÁNEO') ] TIPO_REPRESENTANTE =[ (1,'APODERADO LEGAL'), (2,'REPRESENTANTE LEGAL') ] TIPO_PERSONAS =[ (1,'FISICA'), (2,'MORAL') ] PRIORIDAD =[ (0,'0'), (1,'1'), (2,'2'), (3,'3'), (4,'4') ] numero_finanzas = models.IntegerField(null= True, blank=True) razon_social = models.CharField(max_length=300) razon_comercial = models.CharField(max_length=300) correo = models.EmailField(max_length=50, null= True, blank=True) rfc = models.CharField(max_length=100) fecha_inicio = models.DateField() representante_legal = models.CharField(max_length=300) tipo_representante = models.IntegerField(default=1,choices=TIPO_REPRESENTANTE) nombre_camara = models.ForeignKey(Camaras,null= True, blank=True) numero_protocolo = models.CharField(null= True, blank=True,max_length=300) numero_imms = models.CharField(null= True, blank=True,max_length=100) fecha_registro = models.DateField() fecha_final = models.DateField(null= True, blank=True) pul_direccion_id = models.IntegerField() rubros = models.ManyToManyField(Rubros) status = models.ForeignKey(Estatus) tipo_persona = models.IntegerField(default=1,choices=TIPO_PERSONAS) secretario_rm = models.ForeignKey(Secretario) tipo_domicilio = models.IntegerField(default=1, choices=TIPO_DOMICILIO) prioridad = models.IntegerField(default=4, choices=PRIORIDAD) fecha_actualizacion = models.DateField(null=True, blank=True) fecha_inicia_recepcion = models.DateField(null=True,blank=True) fecha_termina_recepcion = models.DateField(null=True,blank=True) fecha_impresion_cedula = models.DateField(null=True,blank=True) class Meta: verbose_name="Proveedores" verbose_name_plural="Proveedores" db_table="Proveedores" def __unicode__(self): return '%s - %s' % (self.id, self.razon_social ) class Telefonos(models.Model): telefonos = models.CharField(max_length=100, null= True, blank=True) proveedor = models.ForeignKey(Proveedores) class Meta: verbose_name="Telefono" verbose_name_plural="Telefonos" db_table="Telefonos" def __unicode__(self): return unicode(self.telefonos) class Sucursal(models.Model): nombre_sucursal = models.CharField(max_length=250, null=True, blank=True) proveedor = models.ForeignKey(Proveedores) pul_direccion_id = models.IntegerField() telefonos = models.CharField(max_length=100) class Meta: verbose_name="Sucursal" verbose_name_plural="Sucursales" db_table="Sucursales" def __unicode__(self): return '%s' %(self.nombre_sucursal) class Socios(models.Model): nombre_completo = models.CharField(max_length=250) proveedor = models.ForeignKey(Proveedores) class Meta: verbose_name="Socios" verbose_name_plural="Socios" db_table="Socios" def __unicode__(self): return unicode(self.nombre_completo) class Movimientos(models.Model): clave = models.CharField(max_length=200) nombre = models.CharField(max_length=200) descripcion = models.CharField(max_length=200) cat_estatus = models.ForeignKey(Estatus) class Meta: verbose_name="Movimientos" verbose_name_plural="Movimientos" db_table="Movimientos" def __unicode__(self): return self.nombre class Historial(models.Model): proveedor = models.ForeignKey(Proveedores) fecha = models.DateField(auto_now=True) hora = models.TimeField(auto_now_add=True,null=True) movimiento = models.ForeignKey(Movimientos) antes = models.CharField(max_length=1000, null = True, blank = True) despues = models.CharField(max_length=1000, null=True, blank=True) otro = models.CharField(max_length=1000, null=True, blank=True) status = models.ForeignKey(Estatus) usuario = models.ForeignKey(User) class Meta: verbose_name="Historial" verbose_name_plural="Historial" db_table="Historial" def __unicode__(self): return '%s - %s '%(self.proveedor.razon_social,self.movimiento.nombre) class Bitacora(models.Model): usuario = models.ForeignKey(User) fecha = models.DateField(auto_now=True) hora = models.TimeField(auto_now_add=True,null=True) movimiento = models.ForeignKey(Movimientos) descripcion = models.CharField(max_length=250) class Meta: verbose_name="Bitacora" verbose_name_plural="Bitacora" db_table="Bitacora" def __unicode__(self): return '%s - %s '%(self.usuario, self.movimiento) tipo = ((1,'Capturista'), (2,'Supervisor'), (3,'Administrador'), (4,'Lectura'), (5,'Mesa de Ayuda')) User.add_to_class('nombre', models.CharField(max_length=250)) User.add_to_class('apepat', models.CharField(max_length=250)) User.add_to_class('apemat', models.CharField(max_length=250)) User.add_to_class('tipo_usuario', models.IntegerField(default=1,choices=tipo)) User.add_to_class('dependencia',models.IntegerField(blank=True,null=True)) User.add_to_class('unidad_admin',models.IntegerField(blank=True,null=True)) class Sistemas(models.Model): usuario = models.OneToOneField(User) clave = models.CharField(max_length=15) descripcion = models.TextField() url = models.TextField(null=True, blank=True) fecha_alta = models.DateField(auto_now_add=True) def __str__(self): return "%s - %s" % (self.clave, self.descripcion)