# Generated by Django 5.2.7 on 2025-10-27 10:50 import django.db.models.deletion from django.conf import settings from django.db import migrations, models class Migration(migrations.Migration): initial = True dependencies = [ ("appointments", "0001_initial"), ("core", "0001_initial"), ("notifications", "0001_initial"), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.AddField( model_name="appointment", name="cancelled_by", field=models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="cancelled_appointments", to=settings.AUTH_USER_MODEL, verbose_name="Cancelled By", ), ), migrations.AddField( model_name="appointment", name="clinic", field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name="appointments", to="core.clinic", verbose_name="Clinic", ), ), migrations.AddField( model_name="appointment", name="patient", field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name="appointments", to="core.patient", verbose_name="Patient", ), ), migrations.AddField( model_name="appointment", name="tenant", field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name="%(app_label)s_%(class)s_related", to="core.tenant", verbose_name="Tenant", ), ), migrations.AddField( model_name="appointmentconfirmation", name="appointment", field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name="confirmations", to="appointments.appointment", verbose_name="Appointment", ), ), migrations.AddField( model_name="appointmentreminder", name="appointment", field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name="reminders", to="appointments.appointment", verbose_name="Appointment", ), ), migrations.AddField( model_name="appointmentreminder", name="message", field=models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="appointment_reminders", to="notifications.message", verbose_name="Message", ), ), migrations.AddField( model_name="historicalappointment", name="cancelled_by", field=models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to=settings.AUTH_USER_MODEL, verbose_name="Cancelled By", ), ), migrations.AddField( model_name="historicalappointment", name="clinic", field=models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="core.clinic", verbose_name="Clinic", ), ), migrations.AddField( model_name="historicalappointment", name="history_user", field=models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), migrations.AddField( model_name="historicalappointment", name="patient", field=models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="core.patient", verbose_name="Patient", ), ), migrations.AddField( model_name="historicalappointment", name="tenant", field=models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="core.tenant", verbose_name="Tenant", ), ), migrations.AddField( model_name="provider", name="specialties", field=models.ManyToManyField( related_name="providers", to="core.clinic", verbose_name="Specialties" ), ), migrations.AddField( model_name="provider", name="tenant", field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name="%(app_label)s_%(class)s_related", to="core.tenant", verbose_name="Tenant", ), ), migrations.AddField( model_name="provider", name="user", field=models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, related_name="provider_profile", to=settings.AUTH_USER_MODEL, verbose_name="User", ), ), migrations.AddField( model_name="historicalappointment", name="provider", field=models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="appointments.provider", verbose_name="Provider", ), ), migrations.AddField( model_name="appointment", name="provider", field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name="appointments", to="appointments.provider", verbose_name="Provider", ), ), migrations.AddField( model_name="room", name="clinic", field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name="rooms", to="core.clinic", verbose_name="Clinic", ), ), migrations.AddField( model_name="room", name="tenant", field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name="%(app_label)s_%(class)s_related", to="core.tenant", verbose_name="Tenant", ), ), migrations.AddField( model_name="historicalappointment", name="room", field=models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="appointments.room", verbose_name="Room", ), ), migrations.AddField( model_name="appointment", name="room", field=models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="appointments", to="appointments.room", verbose_name="Room", ), ), migrations.AddField( model_name="schedule", name="provider", field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name="schedules", to="appointments.provider", verbose_name="Provider", ), ), migrations.AddIndex( model_name="appointmentconfirmation", index=models.Index( fields=["appointment", "status"], name="appointment_appoint_30e403_idx" ), ), migrations.AddIndex( model_name="appointmentconfirmation", index=models.Index(fields=["token"], name="appointment_token_f2862e_idx"), ), migrations.AddIndex( model_name="appointmentconfirmation", index=models.Index( fields=["status", "expires_at"], name="appointment_status_7714ec_idx" ), ), migrations.AddIndex( model_name="appointmentreminder", index=models.Index( fields=["appointment", "scheduled_for"], name="appointment_appoint_f1e4b0_idx" ), ), migrations.AddIndex( model_name="appointmentreminder", index=models.Index( fields=["status", "scheduled_for"], name="appointment_status_3e65f8_idx" ), ), migrations.AlterUniqueTogether( name="room", unique_together={("tenant", "room_number")}, ), migrations.AddIndex( model_name="appointment", index=models.Index( fields=["appointment_number"], name="appointment_appoint_93abbc_idx" ), ), migrations.AddIndex( model_name="appointment", index=models.Index( fields=["patient", "scheduled_date"], name="appointment_patient_f4324c_idx" ), ), migrations.AddIndex( model_name="appointment", index=models.Index( fields=["provider", "scheduled_date"], name="appointment_provide_6ae384_idx" ), ), migrations.AddIndex( model_name="appointment", index=models.Index( fields=["clinic", "scheduled_date"], name="appointment_clinic__76467e_idx" ), ), migrations.AddIndex( model_name="appointment", index=models.Index( fields=["status", "scheduled_date"], name="appointment_status_93b56b_idx" ), ), migrations.AddIndex( model_name="appointment", index=models.Index( fields=["tenant", "scheduled_date"], name="appointment_tenant__9723f1_idx" ), ), ]