from django.db import models
class Ticket(models.Model):
subject = models.CharField(max_length=255)
reporter = models.EmailField()
status = models.CharField(max_length=20, choices=[
("open", "Open"),
("closed", "Closed"),
("pending", "Pending"),
], default="open")
assignee = models.EmailField(blank=True, null=True) # New field
created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True)
class Message(models.Model):
ticket = models.ForeignKey(Ticket, on_delete=models.CASCADE, related_name="messages")
sender = models.EmailField()
body = models.TextField()
created_at = models.DateTimeField(auto_now_add=True)
raw_email = models.TextField(blank=True)
message_id = models.CharField(max_length=1024, unique=True, blank=True, null=True, default=None)
in_reply_to = models.CharField(max_length=1024, blank=True, null=True, default=None)
def __str__(self):
return f"Message from {self.sender} on ticket #{self.ticket.id}"