# This is an auto-generated Django model module.
# You'll have to do the following manually to clean this up:
# * Rearrange models' order
# * Make sure each model has one field with primary_key=True
# Feel free to rename the models, but don't rename db_table values or field names.
#
# Also note: You'll have to insert the output of 'django-admin.py sqlcustom [appname]'
# into your database.
from __future__ import unicode_literals
from django.db import models
from django import forms
from django.utils import timezone
#################################################################
class Catalogo(models.Model):
nombre = models.CharField(max_length=255)
def __unicode__(self):
return u"%s" % self.nombre
class Meta:
ordering = ["nombre"]
#################################################################
class Escolaridad(Catalogo):
def __unicode__(self):
return u"%s" % self.nombre
class Meta:
verbose_name_plural = 'escolaridad'
tipoSexo = (
(0, 'Masculino'),
(1, 'Femenino'),
)
class tipo_actores(models.Model):
nombre = models.CharField(max_length=150, db_column='NOMBRE', blank=True)
clave = models.CharField(max_length=3, db_column='CLAVE', blank=True)
descripcion = models.CharField(max_length=200, db_column='DESCRIPCION', blank=True)
def __unicode__(self):
return u"%s" % self.nombre
class Meta:
db_table = 'CAT_TIPOACTORES'
ordering = ["nombre"]
verbose_name_plural='tipo actor'
class tipo_integrante(models.Model):
nombre = models.CharField(max_length=150, db_column='NOMBRE', blank=True)
clave = models.CharField(max_length=3, db_column='CLAVE', blank=True)
descripcion = models.CharField(max_length=200, db_column='DESCRIPCION', blank=True)
def __unicode__(self):
return u"%s" % self.nombre
class Meta:
db_table = 'CAT_TIPOINTEGRANTE'
ordering = ["nombre"]
verbose_name_plural='tipo integrante'
class Dependencias(models.Model):
nombre = models.CharField(max_length=150, db_column='NOMBRE', blank=True)
clave = models.CharField(max_length=3, db_column='CLAVE', blank=True)
descripcion = models.CharField(max_length=200, db_column='DESCRIPCION', blank=True)
def __unicode__(self):
return u"%s" % self.nombre
class Meta:
db_table = 'CAT_DEPENDENCIAS'
ordering = ["nombre"]
verbose_name_plural='dependencias'
class MesaTematica(models.Model):
#id_mesa_tematica = models.IntegerField(primary_key=True, db_column='ID_MESA_TEMATICA') # Field name made lowercase.
nombre = models.CharField(max_length=150, db_column='NOMBRE_MESA', blank=False)
fecha_trabajo = models.DateTimeField(null=True, db_column='FECHA_TRABAJO', blank=True) # Field name made lowercase.
sede = models.TextField(max_length=300, db_column='SEDE', blank=True) # Field name made lowercase.
moderador = models.CharField(max_length=200, db_column='ID_MODERADOR', blank=True) # Field name made lowercase.
responsable = models.ManyToManyField('Dependencias', db_column='ID_DEPENDENCIA')
def __unicode__(self):
return u"%s" % self.nombre
class Meta:
db_table = 'MESA_TEMATICA'
ordering = ["nombre"]
verbose_name = 'foro'
class Fuente(models.Model):
#id_fuente = models.IntegerField(primary_key=True, db_column='ID_FUENTE') # Field name made lowercase.
descripcion = models.CharField(max_length=200, db_column='DESCRIPCION', blank=True) # Field name made lowercase.
def __unicode__(self):
return self.descripcion
class Meta:
db_table = 'FUENTE'
ordering = ["descripcion"]
verbose_name_plural='fuentes'
class Instituciones(models.Model):
nombre = models.CharField(max_length=50)
def __unicode__(self):
return u"%s" % self.nombre
class Meta:
ordering = ["nombre"]
verbose_name_plural='instituciones'
class Cargo(models.Model):
nombre = models.CharField(max_length=50)
def __unicode__(self):
return u"%s" % self.nombre
class Meta:
ordering = ["nombre"]
verbose_name_plural='cargos'
class InscripcionForo(models.Model):
#id_inscripcion_foro = models.IntegerField(primary_key=True, db_column='ID_INSCRIPCION_FORO') # Field name made lowercase.
nombre = models.CharField(max_length=100, db_column='NOMBRE', blank=True) # Field name made lowercase.
apellidos = models.CharField(max_length=60, db_column='APELLIDOS', blank=True) # Field name made lowercase.
correo_electronico = models.EmailField(max_length=40, db_column='CORREO_ELECTRONICO', blank=True) # Field name made lowercase.
telefono = models.CharField(max_length=50, db_column='TELEFONO', blank=True) # Field name made lowercase.
#institucion = models.CharField(max_length=50, db_column='INSTITUCION', blank=True)
institucion = models.ForeignKey(Instituciones, blank=True, null=True)
procedencia = models.ForeignKey('Procedencia', blank=True, null=True)
#cargo = models.CharField(max_length=150, db_column='CARGO', blank=True) # Field name made lowercase.
cargo = models.ForeignKey(Cargo, blank=True, null=True)
introduccion = models.TextField(max_length=500, db_column='INTRODUCCION', blank=True, help_text = 'Breve descripcion del tema a desarrollar') # Field name made lowercase.
# El subtema es el Foro al que se inscribe en el nuevo modelo
subtema = models.CharField(max_length=100, db_column='SUBTEMA', blank=True, help_text='Subtema en la que se inscribe') # Field name made lowercase.
# El titulo es la Mesa a la que se inscribe en el nuevo modelo
titulo = models.CharField(max_length=100, db_column='TITULO', blank=True, help_text='Maximo 20 palabras') # Field name made lowercase.
# La mesa tematica en el nuevo modelo
mesa = models.ForeignKey('Mesa', null=True)
subtitulo = models.CharField(max_length=300, db_column='SUBTITULO', blank=True, verbose_name='ponencia') # Field name made lowercase.
fecha = models.DateField(null=True, db_column='FECHA', blank=True, help_text='Fecha') # Field name made lowercase.
#nombre_mesa = models.CharField(max_length=200, db_column='NOMBRE_MESA', blank=True, help_text='Nombre de la mesa a participar') # Field name made lowercase.
# La siguiente relacion se va a eliminar ya que es la misma que representa la propiedad mesa
# nombre_mesa = models.ForeignKey(Foro, db_column='ID_MESA_TEMATICA', blank=True, null=True)
domicilio = models.TextField(max_length=400, db_column='DOMICILIO', blank=True) # Field name made lowercase.
colonia = models.CharField(max_length=200, db_column='COLONIA', blank=True) # Field name made lowercase.
fuente = models.ForeignKey(Fuente, db_column='ID_FUENTE') # Field name made lowercase.
def folio_registro(self):
return u"%s" % self.id
def __unicode__(self):
return u"%s" % self.subtitulo
def nombre_(self):
return self.nombre + ' ' + self.apellidos
class Meta:
db_table = 'INSCRIPCION_FORO'
verbose_name_plural='inscripcion foro'
class Ponencia(models.Model):
#id_ponencia = models.IntegerField(primary_key=True, db_column='ID_PONENCIA') # Field name made lowercase.
fecha_ponencia = models.DateField(null=True, db_column='FECHA_PONENCIA', blank=True , default = timezone.now()) # Field name made lowercase.
inscripcion_foro = models.ForeignKey(InscripcionForo, db_column='ID_INSCRIPCION_FORO') # Field name made lowercase.
def __unicode__(self):
return u"%s" % self.id
class Meta:
db_table = 'PONENCIA'
verbose_name_plural='ponencias'
class Problematica(models.Model):
#id_problematica = models.IntegerField(primary_key=True, db_column='ID_PROBLEMATICA') # Field name made lowercase.
# ponencia = models.ForeignKey(Ponencia, db_column='ID_PONENCIA') # Field name made lowercase.
inscripcion_foro = models.ForeignKey(InscripcionForo)
descripcion = models.CharField(max_length=500, db_column='DESCRIPCION', blank=True) # Field name made lowercase.
def __unicode__(self):
return self.descripcion
class Meta:
db_table = 'PROBLEMATICA'
verbose_name_plural='problematica'
class Actor(models.Model):
#id_actores = models.IntegerField(primary_key=True, db_column='ID_ACTORES') # Field name made lowercase.
problematica = models.ForeignKey(Problematica, db_column='ID_PROBLEMATICA') # Field name made lowercase.
nombre = models.CharField(max_length=150, db_column='NOMBRE', blank=True) # Field name made lowercase.
tipo_actores = models.ForeignKey('tipo_actores', db_column='ID_TIPO_ACTOR') # Field name made lowercase.
def __unicode__(self):
return self.nombre
class Meta:
db_table = 'ACTOR'
verbose_name_plural='actores'
class Plazo(models.Model):
nombre = models.CharField(max_length=150, db_column='NOMBRE', blank=True) # Field name made lowercase.
descripcion = models.TextField(max_length=300, db_column='DESCRIPCION', blank=True) # Field name made lowercase.
def __unicode__(self):
return self.nombre
class Meta:
db_table = 'PLAZOS'
ordering = ["nombre"]
verbose_name_plural='plazos'
from django.contrib.auth.models import User
class BuzonProposito(models.Model):
#id_proposito = models.IntegerField(primary_key=True, db_column='ID_PROPOSITO') # Field name made lowercase.
descripcion = models.CharField(max_length=150, db_column='DESCRIPCION', blank=True) # Field name made lowercase.
def __unicode__(self):
return u"%s" % self.descripcion
class Meta:
db_table = 'BUZON_PROPOSITO'
ordering = ["descripcion"]
class Eje(Catalogo):
foros = models.ManyToManyField(MesaTematica)
proposito = models.ManyToManyField(BuzonProposito)
pass
class BuzonCiudadano(models.Model):
#id_buzon_ciudadano = models.IntegerField(primary_key=True, db_column='ID_BUZON_CIUDADANO') # Field name made lowercase.
edad = models.IntegerField(null=True, db_column='EDAD', blank=True) # Field name made lowercase.
sexo = models.IntegerField( choices=tipoSexo, null= True, db_column='SEXO', blank=True)
escolaridad = models.ForeignKey( Escolaridad )
propuesta = models.TextField(max_length=500, db_column='PROPUESTA', blank=True, help_text='Para el asunto que mas me preocupa propongo que se haga lo siguiente') # Field name made lowercase.
fecha_registro = models.DateField(null=True, auto_now_add=True, db_column='FECHA_REGISTRO', blank=True) # Field name made lowercase.
municipio = models.ForeignKey('Municipio', db_column='ID_MUNICIPIO') # Field name made lowercase.
plazo = models.ForeignKey('Plazo',db_column='ID_PLAZO', null=True, blank=True)
usuario = models.ForeignKey( User )
eje = models.ManyToManyField(Eje)
def __unicode__(self):
return self.propuesta
class Meta:
db_table = 'BUZON_CIUDADANO'
def ejes(self):
return u"
".join('%s' % s.nombre for s in self.eje.all())
ejes.admin_order_field = 'eje' #'propuesta'
ejes.allow_tags = True
class BuzonSolucion(models.Model):
#id_solucion = models.IntegerField(primary_key=True, db_column='ID_SOLUCION') # Field name made lowercase.
descripcion = models.CharField(max_length=150, db_column='DESCRIPCION', blank=True) # Field name made lowercase.
def __unicode__(self):
return u"%s" % self.descripcion
class Meta:
db_table = 'BUZON_SOLUCION'
ordering = ["descripcion"]
class BuzonSugerencia(models.Model):
#id_buzon_sugerencia = models.IntegerField(primary_key=True, db_column='ID_BUZON_SUGERENCIA') # Field name made lowercase.
buzon_ciudadano = models.ForeignKey(BuzonCiudadano, db_column='ID_BUZON_CIUDADANO') # Field name made lowercase.
proposito = models.ForeignKey(BuzonProposito, db_column='ID_PROPOSITO') # Field name made lowercase.
solucion = models.ManyToManyField(BuzonSolucion, db_column='ID_SOLUCION') # Field name made lowercase.
def __unicode__(self):
return u"%s" % self.id
class Meta:
db_table = 'BUZON_SUGERENCIA'
class Efecto(models.Model):
#id_efecto = models.IntegerField(primary_key=True, db_column='ID_EFECTO') # Field name made lowercase.
#problematica = models.ForeignKey('Problematica', db_column='ID_PROBLEMATICA') # Field name made lowercase.
id_inscripcion_foro = models.ForeignKey(InscripcionForo)
descripcion = models.CharField(max_length=500, db_column='DESCRIPCION', blank=True) # Field name made lowercase.
def __unicode__(self):
return u"%s" % self.descripcion
class Meta:
db_table = 'EFECTO'
verbose_name_plural='efectos'
class Causa(models.Model):
#id_causas = models.IntegerField(primary_key=True, db_column='ID_CAUSAS') # Field name made lowercase.
id_inscripcion_foro = models.ForeignKey(InscripcionForo)
descripcion = models.CharField(max_length=500, db_column='DESCRIPCION', blank=True) # Field name made lowercase.
#efecto = models.ForeignKey(Efecto) # Field name made lowercase.
def __unicode__(self):
return u"%s" % self.descripcion
class Meta:
db_table = 'CAUSA'
verbose_name_plural='causas'
class Criterio(models.Model):
#id_criterio = models.IntegerField(primary_key=True, db_column='ID_CRITERIO') # Field name made lowercase.
nombre = models.CharField(max_length=50, db_column='nombre', blank=True)
descripcion = models.TextField(max_length=250, db_column='DESCRIPCION', blank=True) # Field name made lowercase.
def __unicode__(self):
return u"%s" % self.nombre
class Meta:
db_table = 'CRITERIO'
ordering = ["nombre"]
verbose_name_plural='criterios'
class Evaluacion(models.Model):
#id_evaluacion = models.IntegerField(primary_key=True, db_column='ID_EVALUACION') # Field name made lowercase.
mesa_tematica = models.ForeignKey('MesaTematica', db_column='ID_MESA_TEMATICA') # Field name made lowercase.
ponencia = models.ForeignKey(InscripcionForo, db_column='ID_PONENCIA') # Field name made lowercase.
valoracion = models.ForeignKey('Valoracion', db_column='ID_VALORACION') # Field name made lowercase.
criterio = models.ForeignKey(Criterio, db_column='ID_CRITERIO') # Field name made lowercase.
fecha_evaluacion = models.DateField(null=True, auto_now_add=True, db_column='FECHA_EVALUACION', blank=True) # Field name made lowercase.
def __unicode__(self):
return u"%s" % self.id
class Meta:
db_table = 'EVALUACION'
verbose_name_plural='evaluaciones'
class Integrante(models.Model):
#id_participante = models.IntegerField(primary_key=True, db_column='ID_PARTICIPANTE') # Field name made lowercase.
mesa_tematica = models.ForeignKey('MesaTematica', db_column='ID_MESA_TEMATICA') # Field name made lowercase.
nombre = models.CharField(max_length=60, db_column='NOMBRE', blank=True) # Field name made lowercase.
direccion = models.TextField(max_length=300, db_column='DIRECCION', blank=True) # Field name made lowercase.
telefono = models.CharField(max_length=20, db_column='TELEFONO', blank=True) # Field name made lowercase.
correo_electronico = models.EmailField(max_length=40, db_column='CORREO_ELECTRONICO', blank=True) # Field name made lowercase.
# tipo_integrante = models.IntegerField(null=True, db_column='TIPO_INTEGRANTE', blank=True) # Field name made lowercase.
tipo_integrante = models.ForeignKey('tipo_integrante', db_column='ID_TIPO_INTEGRANTE') # Field name made lowercase.
cargo = models.CharField(max_length=100, db_column='CARGO', blank=True) # Field name made lowercase.
def __unicode__(self):
return u"%s" % self.id
class Meta:
db_table = 'MESA_INTEGRANTES'
verbose_name_plural='integrantes'
class Estado(models.Model):
nombre = models.CharField(max_length=50)
def __unicode__(self):
return self.nombre
class Meta:
db_table = 'CAT_ESTADOS'
verbose_name_plural='estados'
class Municipio(models.Model):
#id_municipio = models.IntegerField(primary_key=True, db_column='ID_MUNICIPIO') # Field name made lowercase.
descripcion = models.CharField(max_length=100, db_column='DESCRIPCION', blank=True) # Field name made lowercase.
estado = models.ForeignKey(Estado, help_text='Estado')
def __unicode__(self):
return self.descripcion + ', ' + self.estado.nombre
class Meta:
db_table = 'CAT_MUNICIPIO'
ordering = ["estado","descripcion"]
verbose_name_plural='municipios'
class Propuesta(models.Model):
#id_propuestas = models.IntegerField(primary_key=True, db_column='ID_PROPUESTAS') # Field name made lowercase.
descripcion = models.CharField('propuesta', max_length=1000, db_column='DESCRIPCION', blank=True) # Field name made lowercase.
#ponencia = models.ForeignKey(Ponencia, db_column='ID_PONENCIA') # Field name made lowercase.
id_inscripcion_foro = models.ForeignKey(InscripcionForo)
def __unicode__(self):
return self.descripcion
class Meta:
db_table = 'PROPUESTA'
verbose_name_plural='propuestas'
class PropuestaMesa(models.Model):
mesa_tematica = models.ForeignKey(MesaTematica, db_column='ID_MESA_TEMATICA') # Field name made lowercase.
ponencia = models.ForeignKey(Ponencia, db_column='ID_PONENCIA') # Field name made lowercase.
fecha_propuesta = models.DateField(null=True, db_column='FECHA_PROPUESTA', blank=True) # Field name made lowercase.
def __unicode__(self):
return u"%s" % self.id
class Meta:
db_table = 'PROPUESTA_MESA'
verbose_name_plural='propuesta mesa'
class Valoracion(models.Model):
#id_valoracion = models.IntegerField(primary_key=True, db_column='ID_VALORACION') # Field name made lowercase.
calificacion = models.IntegerField(null=True, db_column='CALIFICACION', blank=True) # Field name made lowercase.
descripcion = models.CharField(max_length = 20, db_column = 'DESCRIPCION', blank=True)
def __unicode__(self):
return u"%s" % self.descripcion
class Meta:
db_table = 'VALORACION'
ordering = ["calificacion"]
verbose_name_plural='valoraciones'
class reporte(models.Model):
url = models.URLField(blank=True)
descripcion = models.CharField(max_length = 20, db_column = 'DESCRIPCION', blank=True)
def __unicode__(self):
return u"%s" % self.url
class Meta:
db_table = 'REPORTES'
ordering = ["url"]
verbose_name_plural='reportes'
###############################################################################
class Mesa(Catalogo):
foro = models.ForeignKey(MesaTematica)
@staticmethod
def autocomplete_search_fields():
return ("id__iexact", "nombre__icontains")
def __unicode__(self):
return u'%s - %s' % (self.nombre, self.foro)
class Meta:
ordering = ['foro', 'nombre']
class Procedencia(Catalogo):
pass
class Diccionario(models.Model):
nombre = models.CharField(max_length=255, )
#proposito = models.ForeignKey(BuzonProposito)
eje = models.ForeignKey( Eje )
class Meta:
verbose_name_plural = 'diccionarios'
unique_together = ('nombre','eje')
ordering = ['nombre']
def __unicode__(self):
return u'%s' % (self.nombre)
def save(self, force_insert=False, force_update=False):
self.nombre = self.nombre.upper()
super(Diccionario, self).save(force_insert, force_update)