models.py 2.11 KB
from django.db import models

from .constants import STATUS_CHOICE

from usuario.models import Usuario

# Create your models here.


class Precio (models.Model):
    precio = models.FloatField(max_length=50, blank=False, null=False)
    vigencia_desde = models.DateTimeField()
    vigencia_hasta = models.DateTimeField()
    usuario = models.ForeignKey(Usuario, on_delete=models.CASCADE)
    moneda = models.CharField(max_length=50, blank=False, null=False)
    precio_ejemplar = models.FloatField(max_length=50, blank=False, null=False)

    class Meta:
        verbose_name = 'Administrador'
        verbose_name_plural = 'Administradores'

    def __str__(self):
        return self.moneda


class Edicto(models.Model):
    usuario = models.ForeignKey(Usuario, on_delete=models.CASCADE, verbose_name='Usuario', null=True)
    cuerpo_edicto = models.TextField(blank=False, null=False)
    archivo = models.FileField(upload_to="uploads/%Y/%m/%d/", null=False, blank=False)
    dias_publicar = models.PositiveIntegerField(blank=False, null=False)
    cantidad_sellos = models.PositiveIntegerField(blank=False, null=False)
    estado = models.CharField(max_length=150, choices=STATUS_CHOICE, default='inciado')
    cantidad_palabras = models.IntegerField(blank=False, null=False)
    cantidad_copias = models.PositiveIntegerField(blank=False, null=False)
    fecha_publicacion = models.DateField(blank=False, null=False)
    fecha_creacion = models.DateTimeField(auto_now_add=True)
    fecha_modificacion = models.DateTimeField(auto_now_add=True)

    class Meta:
        verbose_name = 'Edicto'
        verbose_name_plural = 'Edictos'

    def __str__(self):
        return self.cuerpo_edicto


class ComprobantePago(models.Model):
    edicto = models.ForeignKey(Edicto, on_delete=models.CASCADE)
    resultado = models.FloatField(blank=False, null=False)
    numero_comprobante = models.CharField(max_length=300, blank=False, null=True)
    fecha_pago = models.DateTimeField(blank=False, null=True)

    class Meta:
        verbose_name = 'ComprobantePago'
        verbose_name_plural = 'ComprobantesPagos'

    def __str__(self):
        return self.edicto