Skip to content
Snippets Groups Projects
0001_initial.py 41.7 KiB
Newer Older
Jonathan Weth's avatar
Jonathan Weth committed
                        verbose_name="ID",
                    ),
                ),
                (
                    "extended_data",
                    django.contrib.postgres.fields.jsonb.JSONField(
                        default=dict, editable=False
                    ),
                ),
                (
                    "short_name",
                    models.CharField(max_length=255, verbose_name="Short name"),
                ),
                (
                    "name",
                    models.CharField(
                        blank=True, max_length=255, null=True, verbose_name="Name"
                    ),
                ),
                (
                    "site",
                    models.ForeignKey(
                        default=1,
                        editable=False,
                        on_delete=django.db.models.deletion.CASCADE,
                        to="sites.Site",
                    ),
                ),
Hangzhi Yu's avatar
Hangzhi Yu committed
            ],
            options={
Jonathan Weth's avatar
Jonathan Weth committed
                "verbose_name": "Absence reason",
                "verbose_name_plural": "Absence reasons",
Hangzhi Yu's avatar
Hangzhi Yu committed
            },
Jonathan Weth's avatar
Jonathan Weth committed
            managers=[("objects", django.contrib.sites.managers.CurrentSiteManager()),],
Hangzhi Yu's avatar
Hangzhi Yu committed
        ),
        migrations.CreateModel(
Jonathan Weth's avatar
Jonathan Weth committed
            name="Absence",
Hangzhi Yu's avatar
Hangzhi Yu committed
            fields=[
Jonathan Weth's avatar
Jonathan Weth committed
                (
                    "id",
                    models.AutoField(
                        auto_created=True,
                        primary_key=True,
                        serialize=False,
                        verbose_name="ID",
                    ),
                ),
                (
                    "extended_data",
                    django.contrib.postgres.fields.jsonb.JSONField(
                        default=dict, editable=False
                    ),
                ),
                ("date_start", models.DateField(null=True, verbose_name="Start date")),
                ("date_end", models.DateField(null=True, verbose_name="End date")),
                (
                    "comment",
                    models.TextField(blank=True, null=True, verbose_name="Comment"),
                ),
                (
                    "group",
                    models.ForeignKey(
                        blank=True,
                        null=True,
                        on_delete=django.db.models.deletion.CASCADE,
                        related_name="absences",
                        to="core.Group",
                        verbose_name="Group",
                    ),
                ),
                (
                    "period_from",
                    models.ForeignKey(
                        null=True,
                        on_delete=django.db.models.deletion.CASCADE,
                        related_name="+",
                        to="chronos.TimePeriod",
                        verbose_name="Start period",
                    ),
                ),
                (
                    "period_to",
                    models.ForeignKey(
                        null=True,
                        on_delete=django.db.models.deletion.CASCADE,
                        related_name="+",
                        to="chronos.TimePeriod",
                        verbose_name="End period",
                    ),
                ),
                (
                    "reason",
                    models.ForeignKey(
                        blank=True,
                        null=True,
                        on_delete=django.db.models.deletion.SET_NULL,
                        related_name="absences",
                        to="chronos.AbsenceReason",
                        verbose_name="Absence reason",
                    ),
                ),
                (
                    "room",
                    models.ForeignKey(
                        blank=True,
                        null=True,
                        on_delete=django.db.models.deletion.CASCADE,
                        related_name="absences",
                        to="chronos.Room",
                        verbose_name="Room",
                    ),
                ),
                (
                    "site",
                    models.ForeignKey(
                        default=1,
                        editable=False,
                        on_delete=django.db.models.deletion.CASCADE,
                        to="sites.Site",
                    ),
                ),
                (
                    "teacher",
                    models.ForeignKey(
                        blank=True,
                        null=True,
                        on_delete=django.db.models.deletion.CASCADE,
                        related_name="absences",
                        to="core.Person",
                        verbose_name="Teacher",
                    ),
                ),
Hangzhi Yu's avatar
Hangzhi Yu committed
            ],
            options={
Jonathan Weth's avatar
Jonathan Weth committed
                "verbose_name": "Absence",
                "verbose_name_plural": "Absences",
                "ordering": ["date_start"],
Hangzhi Yu's avatar
Hangzhi Yu committed
            },
        ),
        migrations.AddIndex(
Jonathan Weth's avatar
Jonathan Weth committed
            model_name="timeperiod",
            index=models.Index(
                fields=["time_start", "time_end"], name="chronos_tim_time_st_491e4c_idx"
            ),
Hangzhi Yu's avatar
Hangzhi Yu committed
        ),
        migrations.AlterUniqueTogether(
Jonathan Weth's avatar
Jonathan Weth committed
            name="timeperiod", unique_together={("weekday", "period")},
Hangzhi Yu's avatar
Hangzhi Yu committed
        ),
        migrations.AddConstraint(
Jonathan Weth's avatar
Jonathan Weth committed
            model_name="lessonsubstitution",
            constraint=models.CheckConstraint(
                check=models.Q(
                    ("cancelled", True), ("subject__isnull", False), _negated=True
                ),
                name="either_substituted_or_cancelled",
            ),
Hangzhi Yu's avatar
Hangzhi Yu committed
        ),
        migrations.AlterUniqueTogether(
Jonathan Weth's avatar
Jonathan Weth committed
            name="lessonsubstitution", unique_together={("lesson_period", "week")},
Hangzhi Yu's avatar
Hangzhi Yu committed
        ),
        migrations.AddIndex(
Jonathan Weth's avatar
Jonathan Weth committed
            model_name="lessonperiod",
            index=models.Index(
                fields=["lesson", "period"], name="chronos_les_lesson__05250e_idx"
            ),
Hangzhi Yu's avatar
Hangzhi Yu committed
        ),
        migrations.AddIndex(
Jonathan Weth's avatar
Jonathan Weth committed
            model_name="lesson",
            index=models.Index(
                fields=["date_start", "date_end"], name="chronos_les_date_st_5ecc62_idx"
            ),
Hangzhi Yu's avatar
Hangzhi Yu committed
        ),
        migrations.AddIndex(
Jonathan Weth's avatar
Jonathan Weth committed
            model_name="holiday",
            index=models.Index(
                fields=["date_start", "date_end"], name="chronos_hol_date_st_a47004_idx"
            ),
Hangzhi Yu's avatar
Hangzhi Yu committed
        ),
        migrations.AddIndex(
Jonathan Weth's avatar
Jonathan Weth committed
            model_name="exam",
            index=models.Index(fields=["date"], name="chronos_exa_date_5ba442_idx"),
Hangzhi Yu's avatar
Hangzhi Yu committed
        ),
        migrations.AddIndex(
Jonathan Weth's avatar
Jonathan Weth committed
            model_name="event",
            index=models.Index(
                fields=["period_from", "period_to", "date_start", "date_end"],
                name="chronos_eve_period__c7ec33_idx",
            ),
Hangzhi Yu's avatar
Hangzhi Yu committed
        ),
        migrations.AddIndex(
Jonathan Weth's avatar
Jonathan Weth committed
            model_name="break",
            index=models.Index(
                fields=["after_period", "before_period"],
                name="chronos_bre_after_p_0f28d3_idx",
            ),
Hangzhi Yu's avatar
Hangzhi Yu committed
        ),
        migrations.AddIndex(
Jonathan Weth's avatar
Jonathan Weth committed
            model_name="absence",
            index=models.Index(
                fields=["date_start", "date_end"], name="chronos_abs_date_st_337ff5_idx"
            ),