# Generated by Django 3.2 on 2022-02-04 11:22

from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion
import django.utils.timezone


class Migration(migrations.Migration):

    initial = True

    dependencies = [
        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
    ]

    operations = [
        migrations.CreateModel(
            name='Attendance',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('date', models.CharField(default='1400-11-15', max_length=120, verbose_name='تاریخ کلاس')),
                ('create', models.DateTimeField(default=django.utils.timezone.now, verbose_name='تاریخ ساخت کلاس')),
            ],
            options={
                'verbose_name': 'حضور و غیاب',
                'verbose_name_plural': '07. حضور و غیاب ها',
                'ordering': ('-create',),
            },
        ),
        migrations.CreateModel(
            name='Books',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('name', models.CharField(max_length=150, verbose_name='نام کتاب درسی')),
                ('units', models.IntegerField(verbose_name='تعداد واحد')),
            ],
            options={
                'verbose_name': 'کتاب',
                'verbose_name_plural': '06. کتاب ها',
            },
        ),
        migrations.CreateModel(
            name='EventCalendar',
            fields=[
                ('id', models.CharField(max_length=100, primary_key=True, serialize=False, unique=True, verbose_name='آیدی رویدار')),
                ('title', models.CharField(max_length=120, verbose_name='عنوان رویداد')),
                ('description', models.TextField(blank=True, null=True, verbose_name='توضیحات رویداد')),
                ('start', models.CharField(max_length=60, verbose_name='شروع رویداد')),
                ('end', models.CharField(default=models.CharField(max_length=60, verbose_name='شروع رویداد'), max_length=60, verbose_name='پایان رویداد')),
                ('backgroundColor', models.CharField(max_length=20, verbose_name='رنگ زمینه رویداد')),
                ('borderColor', models.CharField(max_length=20, verbose_name='رنگ خط رویداد')),
                ('publish', models.DateTimeField(auto_now_add=True, verbose_name='زمان ساخت')),
            ],
            options={
                'verbose_name': 'رویداد',
                'verbose_name_plural': '01. تقویم رویداد ها',
            },
        ),
        migrations.CreateModel(
            name='ExternalEventCalendar',
            fields=[
                ('id', models.CharField(max_length=100, primary_key=True, serialize=False, unique=True, verbose_name='آیدی رویدار')),
                ('title', models.CharField(max_length=120, verbose_name='عنوان رویداد')),
                ('backgroundColor', models.CharField(max_length=20, verbose_name='رنگ زمینه رویداد')),
                ('borderColor', models.CharField(max_length=20, verbose_name='رنگ خط رویداد')),
                ('publish', models.DateTimeField(auto_now_add=True, verbose_name='زمان ساخت')),
            ],
            options={
                'verbose_name': 'رویداد',
                'verbose_name_plural': '1_02. رویداد های اضافه نشده',
            },
        ),
        migrations.CreateModel(
            name='Grade',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('name', models.CharField(max_length=120, verbose_name='نام مقطع')),
            ],
            options={
                'verbose_name': 'مقطع',
                'verbose_name_plural': '03. مقاطع تحصیلی',
            },
        ),
        migrations.CreateModel(
            name='Major',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('name', models.CharField(max_length=120, verbose_name='نام رشته تحصیلی')),
            ],
            options={
                'verbose_name': 'رشته',
                'verbose_name_plural': '4. رشته های تحصیلی',
            },
        ),
        migrations.CreateModel(
            name='ReportCard',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('report_card', models.TextField(verbose_name='کارنامه')),
                ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='stu_rc', to=settings.AUTH_USER_MODEL, verbose_name='دانش آموز')),
            ],
        ),
        migrations.CreateModel(
            name='NoticeBox',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('title', models.CharField(max_length=120, verbose_name='عنوان اعلان')),
                ('description', models.TextField(max_length=350, verbose_name='متن اعلان')),
                ('publish', models.DateTimeField(auto_now_add=True, verbose_name='زمان ساخت')),
                ('writer', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='نویسنده اعلان')),
            ],
            options={
                'verbose_name': 'اعلان',
                'verbose_name_plural': '02. تابلو اعلانات',
            },
        ),
        migrations.CreateModel(
            name='HomeWork',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('title', models.CharField(max_length=120, verbose_name='عنوان')),
                ('description', models.TextField(blank=True, verbose_name='شرح تکلیف')),
                ('create', models.DateTimeField(default=django.utils.timezone.now, verbose_name='تاریخ ساخت تکلیف')),
                ('attendance', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='att_home_work', to='manager.attendance', verbose_name='برای کلاس')),
            ],
            options={
                'verbose_name': 'تکلیف',
                'verbose_name_plural': '08. تکالیف',
                'ordering': ('-create',),
            },
        ),
        migrations.CreateModel(
            name='EmploymentForm',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('organ', models.CharField(max_length=120, verbose_name='ارگان مورد نظر')),
                ('status', models.CharField(choices=[('بررسی شده', 'بررسی شده'), ('در انتظار بررسی', 'در انتظار بررسی'), ('رد شده', 'رد شده')], default='در انتظار بررسی', max_length=120, verbose_name='وضعیت')),
                ('form_image', models.ImageField(blank=True, null=True, upload_to='main/employment-form/', verbose_name='تصویر فرم')),
                ('create', models.DateTimeField(default=django.utils.timezone.now, verbose_name='تاریخ ساخت فرم')),
                ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='stu_emp_form', to=settings.AUTH_USER_MODEL, verbose_name='دانش آموز')),
            ],
            options={
                'verbose_name': 'فرم',
                'verbose_name_plural': '09. فرم های اشتغال به تحصیل',
                'ordering': ('-create',),
            },
        ),
        migrations.CreateModel(
            name='Classes',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('name', models.CharField(max_length=120, verbose_name='نام کلاس')),
                ('code', models.CharField(blank=True, max_length=10, null=True, verbose_name='شماره کلاس')),
                ('books', models.ManyToManyField(blank=True, related_name='books_class', to='manager.Books', verbose_name='کتاب های کلاس')),
                ('grade', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='grade_classes', to='manager.grade', verbose_name='مقطع')),
                ('major', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='major_classes', to='manager.major', verbose_name='رشته')),
                ('teacher', models.ManyToManyField(related_name='teacher_class', to=settings.AUTH_USER_MODEL, verbose_name='معلم کلاس')),
            ],
            options={
                'verbose_name': 'کلاس',
                'verbose_name_plural': '05. کلاس ها',
            },
        ),
        migrations.AddField(
            model_name='books',
            name='grade',
            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='grade_books', to='manager.grade', verbose_name='مقطع'),
        ),
        migrations.AddField(
            model_name='books',
            name='major',
            field=models.ManyToManyField(blank=True, related_name='major_books', to='manager.Major', verbose_name='رشته'),
        ),
        migrations.AddField(
            model_name='books',
            name='teacher',
            field=models.ManyToManyField(blank=True, related_name='teacher_book', to=settings.AUTH_USER_MODEL, verbose_name='دبیر کتاب'),
        ),
        migrations.AddField(
            model_name='attendance',
            name='attendance_class',
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='attendance_class', to='manager.classes', verbose_name='کلاس'),
        ),
        migrations.AddField(
            model_name='attendance',
            name='book',
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='attendance_book', to='manager.books', verbose_name='کتاب'),
        ),
        migrations.AddField(
            model_name='attendance',
            name='teacher',
            field=models.ForeignKey(default=1, on_delete=django.db.models.deletion.CASCADE, related_name='attendance_teacher', to=settings.AUTH_USER_MODEL, verbose_name='دبیر'),
        ),
        migrations.CreateModel(
            name='Assign',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('attendance_status', models.CharField(blank=True, choices=[('حاضر', 'حاضر'), ('حاضر (با تاخیر)', 'حاضر (با تاخیر)'), ('غایب', 'غایب')], max_length=120, null=True, verbose_name='وضعیت حضور و غیاب')),
                ('attendance_note', models.CharField(blank=True, max_length=100, null=True, verbose_name='توضیحات بیشتر')),
                ('attendance', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='att_assign', to='manager.attendance')),
                ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='stu_assign', to=settings.AUTH_USER_MODEL)),
            ],
            options={
                'verbose_name': 'ارتباط',
                'verbose_name_plural': 'ارتباط ها',
            },
        ),
    ]
