2025-08-12 13:33:25 +03:00

376 lines
13 KiB
Python

# Generated by Django 5.2.4 on 2025-08-04 04:41
import django.db.models.deletion
from django.conf import settings
from django.db import migrations, models
class Migration(migrations.Migration):
initial = True
dependencies = [
("communications", "0001_initial"),
("core", "0001_initial"),
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
]
operations = [
migrations.AddField(
model_name="alertrule",
name="tenant",
field=models.ForeignKey(
help_text="Tenant organization",
on_delete=django.db.models.deletion.CASCADE,
to="core.tenant",
),
),
migrations.AddField(
model_name="alertinstance",
name="alert_rule",
field=models.ForeignKey(
help_text="Associated alert rule",
on_delete=django.db.models.deletion.CASCADE,
related_name="instances",
to="communications.alertrule",
),
),
migrations.AddField(
model_name="communicationchannel",
name="created_by",
field=models.ForeignKey(
blank=True,
help_text="Channel creator",
null=True,
on_delete=django.db.models.deletion.SET_NULL,
to=settings.AUTH_USER_MODEL,
),
),
migrations.AddField(
model_name="communicationchannel",
name="tenant",
field=models.ForeignKey(
help_text="Tenant organization",
on_delete=django.db.models.deletion.CASCADE,
to="core.tenant",
),
),
migrations.AddField(
model_name="deliverylog",
name="channel",
field=models.ForeignKey(
help_text="Communication channel used",
on_delete=django.db.models.deletion.CASCADE,
related_name="delivery_logs",
to="communications.communicationchannel",
),
),
migrations.AddField(
model_name="message",
name="reply_to_message",
field=models.ForeignKey(
blank=True,
help_text="Original message if this is a reply",
null=True,
on_delete=django.db.models.deletion.SET_NULL,
to="communications.message",
),
),
migrations.AddField(
model_name="message",
name="sender",
field=models.ForeignKey(
help_text="Message sender",
on_delete=django.db.models.deletion.CASCADE,
related_name="sent_messages",
to=settings.AUTH_USER_MODEL,
),
),
migrations.AddField(
model_name="message",
name="tenant",
field=models.ForeignKey(
help_text="Tenant organization",
on_delete=django.db.models.deletion.CASCADE,
to="core.tenant",
),
),
migrations.AddField(
model_name="deliverylog",
name="message",
field=models.ForeignKey(
help_text="Associated message",
on_delete=django.db.models.deletion.CASCADE,
related_name="delivery_logs",
to="communications.message",
),
),
migrations.AddField(
model_name="messagerecipient",
name="message",
field=models.ForeignKey(
help_text="Associated message",
on_delete=django.db.models.deletion.CASCADE,
related_name="recipients",
to="communications.message",
),
),
migrations.AddField(
model_name="messagerecipient",
name="user",
field=models.ForeignKey(
blank=True,
help_text="User recipient",
null=True,
on_delete=django.db.models.deletion.CASCADE,
to=settings.AUTH_USER_MODEL,
),
),
migrations.AddField(
model_name="deliverylog",
name="recipient",
field=models.ForeignKey(
help_text="Associated recipient",
on_delete=django.db.models.deletion.CASCADE,
related_name="delivery_logs",
to="communications.messagerecipient",
),
),
migrations.AddField(
model_name="notificationtemplate",
name="created_by",
field=models.ForeignKey(
blank=True,
help_text="Template creator",
null=True,
on_delete=django.db.models.deletion.SET_NULL,
to=settings.AUTH_USER_MODEL,
),
),
migrations.AddField(
model_name="notificationtemplate",
name="tenant",
field=models.ForeignKey(
help_text="Tenant organization",
on_delete=django.db.models.deletion.CASCADE,
to="core.tenant",
),
),
migrations.AddField(
model_name="alertrule",
name="notification_template",
field=models.ForeignKey(
blank=True,
help_text="Notification template to use",
null=True,
on_delete=django.db.models.deletion.SET_NULL,
to="communications.notificationtemplate",
),
),
migrations.AddIndex(
model_name="alertinstance",
index=models.Index(
fields=["alert_rule", "status"], name="communicati_alert_r_69aa1e_idx"
),
),
migrations.AddIndex(
model_name="alertinstance",
index=models.Index(
fields=["severity", "triggered_at"],
name="communicati_severit_65b0c9_idx",
),
),
migrations.AddIndex(
model_name="alertinstance",
index=models.Index(
fields=["status", "triggered_at"], name="communicati_status_402adb_idx"
),
),
migrations.AddIndex(
model_name="alertinstance",
index=models.Index(
fields=["expires_at"], name="communicati_expires_2c10ee_idx"
),
),
migrations.AddIndex(
model_name="communicationchannel",
index=models.Index(
fields=["tenant", "channel_type"], name="communicati_tenant__0326d1_idx"
),
),
migrations.AddIndex(
model_name="communicationchannel",
index=models.Index(
fields=["is_active", "is_healthy"],
name="communicati_is_acti_77d48f_idx",
),
),
migrations.AddIndex(
model_name="communicationchannel",
index=models.Index(
fields=["last_health_check"], name="communicati_last_he_71110c_idx"
),
),
migrations.AddIndex(
model_name="communicationchannel",
index=models.Index(
fields=["provider_type"], name="communicati_provide_583ead_idx"
),
),
migrations.AlterUniqueTogether(
name="communicationchannel",
unique_together={("tenant", "name")},
),
migrations.AddIndex(
model_name="message",
index=models.Index(
fields=["tenant", "status"], name="communicati_tenant__d41606_idx"
),
),
migrations.AddIndex(
model_name="message",
index=models.Index(
fields=["sender", "created_at"], name="communicati_sender__7da57d_idx"
),
),
migrations.AddIndex(
model_name="message",
index=models.Index(
fields=["message_type", "priority"],
name="communicati_message_b3baa0_idx",
),
),
migrations.AddIndex(
model_name="message",
index=models.Index(
fields=["scheduled_at"], name="communicati_schedul_59afe2_idx"
),
),
migrations.AddIndex(
model_name="message",
index=models.Index(
fields=["message_thread_id"], name="communicati_message_990a68_idx"
),
),
migrations.AddIndex(
model_name="messagerecipient",
index=models.Index(
fields=["message", "status"], name="communicati_message_6c5b5b_idx"
),
),
migrations.AddIndex(
model_name="messagerecipient",
index=models.Index(
fields=["user", "status"], name="communicati_user_id_2e3702_idx"
),
),
migrations.AddIndex(
model_name="messagerecipient",
index=models.Index(
fields=["recipient_type"], name="communicati_recipie_b45f4d_idx"
),
),
migrations.AddIndex(
model_name="messagerecipient",
index=models.Index(
fields=["sent_at"], name="communicati_sent_at_10fda1_idx"
),
),
migrations.AlterUniqueTogether(
name="messagerecipient",
unique_together={
("message", "email_address"),
("message", "phone_number"),
("message", "user"),
},
),
migrations.AddIndex(
model_name="deliverylog",
index=models.Index(
fields=["message", "status"], name="communicati_message_fdf561_idx"
),
),
migrations.AddIndex(
model_name="deliverylog",
index=models.Index(
fields=["recipient", "status"], name="communicati_recipie_8a8767_idx"
),
),
migrations.AddIndex(
model_name="deliverylog",
index=models.Index(
fields=["channel", "started_at"], name="communicati_channel_03e902_idx"
),
),
migrations.AddIndex(
model_name="deliverylog",
index=models.Index(
fields=["status", "started_at"], name="communicati_status_eb46bd_idx"
),
),
migrations.AddIndex(
model_name="deliverylog",
index=models.Index(
fields=["external_id"], name="communicati_externa_64021f_idx"
),
),
migrations.AddIndex(
model_name="notificationtemplate",
index=models.Index(
fields=["tenant", "template_type"],
name="communicati_tenant__c0ae05_idx",
),
),
migrations.AddIndex(
model_name="notificationtemplate",
index=models.Index(
fields=["category", "is_active"], name="communicati_categor_2c7900_idx"
),
),
migrations.AddIndex(
model_name="notificationtemplate",
index=models.Index(
fields=["is_system_template"], name="communicati_is_syst_dae5b7_idx"
),
),
migrations.AddIndex(
model_name="notificationtemplate",
index=models.Index(
fields=["usage_count"], name="communicati_usage_c_d78c30_idx"
),
),
migrations.AlterUniqueTogether(
name="notificationtemplate",
unique_together={("tenant", "name", "template_type")},
),
migrations.AddIndex(
model_name="alertrule",
index=models.Index(
fields=["tenant", "is_active"], name="communicati_tenant__6d58f7_idx"
),
),
migrations.AddIndex(
model_name="alertrule",
index=models.Index(
fields=["trigger_type", "severity"],
name="communicati_trigger_0ab274_idx",
),
),
migrations.AddIndex(
model_name="alertrule",
index=models.Index(
fields=["last_evaluated_at"], name="communicati_last_ev_3529e2_idx"
),
),
migrations.AddIndex(
model_name="alertrule",
index=models.Index(
fields=["is_system_rule"], name="communicati_is_syst_52420d_idx"
),
),
migrations.AlterUniqueTogether(
name="alertrule",
unique_together={("tenant", "name")},
),
]