from django.db import models

from management.models.plan_archivio import PlanArchivio
from management.models.utente import Utente

class ReviewTicket(models.Model):
    id = models.AutoField(primary_key=True)
    titolo = models.CharField(max_length=100)
    plan = models.ForeignKey(PlanArchivio, on_delete=models.CASCADE)
    # sub_review = models.ForeignKey(
    #     'self',
    #     on_delete=models.SET_NULL,
    #     null=True,
    #     blank=True
    # )    
    stato = models.SmallIntegerField(default=0)
    redattore = models.ForeignKey(Utente, on_delete=models.DO_NOTHING, related_name="review_redattore")
    destinatario = models.ForeignKey(Utente, on_delete=models.DO_NOTHING, related_name="review_destinatario")
    data_review = models.DateField()
    data_chiusura = models.DateField(blank=True, null=True)
    review = models.TextField()
    risposta = models.TextField(null=True, blank=True)
    data_ora_creazione = models.DateTimeField(auto_now_add=True)
    data_ora_modifica = models.DateTimeField(auto_now=True)

    class Meta:
        db_table = "Review_Ticket"


class ReviewAllegati(models.Model):
    review = models.ForeignKey(ReviewTicket, on_delete=models.CASCADE, related_name='attachments')
    nome = models.CharField(max_length=200)
    location = models.CharField(max_length=500)
    data_ora_creazione = models.DateTimeField(auto_now_add=True)
    data_ora_modifica = models.DateTimeField(auto_now=True)    

    class Meta:
        db_table = 'Review_Allegati'
        indexes = [
            models.Index(fields=['review']),
        ]