from __future__ import unicode_literals
from django.db import models
from django.contrib.auth.models import User, Group
import datetime

class CatalogoTipoAlumno(models.Model):
    tipo = models.CharField(max_length=255, verbose_name=u'Tipo de Alumno')

    def __unicode__(self):
        return self.tipo

class TablaAlumno(models.Model):
    nombre = models.CharField(max_length=255, verbose_name=u'Nombre')
    apellidoP = models.CharField(max_length=255, verbose_name=u'Apellido Paterno')
    apellidoM = models.CharField(max_length=255, verbose_name=u'Apellido Materno')
    boleta = models.IntegerField(verbose_name=u'Boleta')
    codigo = models.CharField(max_length=10,default='00',null=True,verbose_name=u'Codigo')
    nacimiento = models.DateField(default=datetime.date.today, verbose_name=u'Nacimiento')
    correo = models.CharField(default = None,max_length=255, verbose_name=u'Correo')
    tipo = models.ForeignKey(CatalogoTipoAlumno)



    def __unicode__(self):
        return '%s %s %s' % (self.nombre, self.apellidoP, self.apellidoM)

    class Meta:
        ordering = ('id','boleta')

class CatalogoEstadoSolicitud(models.Model):
    estado = models.CharField(max_length=255, verbose_name=u'Estado')

    def __unicode__(self):
        return self.estado

class CatalogoTipoDocumento(models.Model):
    tipo = models.CharField(max_length=255, verbose_name=u'Tipo de Documento')

    def __unicode__(self):
        return self.tipo

class TablaSolicitud(models.Model):
    estado = models.ForeignKey(CatalogoEstadoSolicitud)
    documento = models.ForeignKey(CatalogoTipoDocumento)
    alumno = models.ForeignKey(TablaAlumno)
    area = models.ForeignKey(Group, null=True)
    fecha = models.DateField(default=datetime.date.today, verbose_name=u'Fecha')
    trabajador = models.ForeignKey(User, null=True)
    folio = models.IntegerField(verbose_name=u'Folio',null=True)

    def __unicode__(self):
        return '%s pedido por %s el %s' % (self.documento, self.alumno, self.fecha)

class TablaCambioSolicitud(models.Model):
    solicitud = models.ForeignKey(TablaSolicitud)
    estado = models.ForeignKey(CatalogoEstadoSolicitud)
    trabajador = models.ForeignKey(User)
    fecha = models.DateField(default=datetime.date.today, verbose_name=u'Fecha')
