2022-10-19 12:32:56 +01:00
|
|
|
import uuid
|
|
|
|
|
|
|
|
|
|
from django.db import models
|
|
|
|
|
|
2024-08-01 08:48:39 -06:00
|
|
|
|
|
|
|
|
class EmailMessageQuerySet(models.QuerySet):
|
|
|
|
|
def create(self, **kwargs):
|
|
|
|
|
from apps.base.models.user_notification_policy_log_record import (
|
|
|
|
|
_check_if_notification_policy_is_transient_fallback,
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
_check_if_notification_policy_is_transient_fallback(kwargs)
|
|
|
|
|
return super().create(**kwargs)
|
2022-10-19 12:32:56 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
class EmailMessage(models.Model):
|
2024-08-01 08:48:39 -06:00
|
|
|
objects = EmailMessageQuerySet.as_manager()
|
|
|
|
|
|
2022-10-19 12:32:56 +01:00
|
|
|
message_uuid = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
|
|
|
|
|
|
|
|
|
|
exceeded_limit = models.BooleanField(null=True, default=None)
|
|
|
|
|
represents_alert = models.ForeignKey("alerts.Alert", on_delete=models.SET_NULL, null=True, default=None)
|
|
|
|
|
represents_alert_group = models.ForeignKey("alerts.AlertGroup", on_delete=models.SET_NULL, null=True, default=None)
|
|
|
|
|
notification_policy = models.ForeignKey(
|
|
|
|
|
"base.UserNotificationPolicy", on_delete=models.SET_NULL, null=True, default=None
|
|
|
|
|
)
|
|
|
|
|
|
2023-05-31 07:44:55 -06:00
|
|
|
receiver = models.ForeignKey("user_management.User", on_delete=models.CASCADE, null=True, default=None)
|
2022-10-19 12:32:56 +01:00
|
|
|
created_at = models.DateTimeField(auto_now_add=True)
|