~linuxgoose/Inque

ref: 4dc8e7b1a7624d0b2b123899fb2dcc87be79e044 Inque/inque/tickets/models.py -rw-r--r-- 1.0 KiB
4dc8e7b1Jordan Robinson update wording 2 months ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
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}"