# Generated by Django 3.2.13 on 2023-04-25 06:49 from django.conf import settings from django.db import migrations, models import django.db.models.deletion class Migration(migrations.Migration): dependencies = [ ('course', '0004_coursesession_assignment_details_list'), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ('assignment', '0001_initial'), ] operations = [ migrations.CreateModel( name='AssignmentCompletionAuditLog', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateTimeField(auto_now_add=True)), ('completion_status', models.CharField(choices=[(1, 'in_progress'), (2, 'submitted'), (3, 'grading_in_progress'), (4, 'graded')], default='in_progress', max_length=255)), ('completion_data', models.JSONField(default=dict)), ('additional_json_data', models.JSONField(default=dict)), ('assignment_user_email', models.CharField(max_length=255)), ('assignment_slug', models.CharField(max_length=255)), ('grading_user_email', models.CharField(blank=True, default='', max_length=255)), ('assignment', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='assignment.assignment')), ('assignment_user', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL)), ('course_session', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='course.coursesession')), ('grading_user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='AssignmentCompletion', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('submitted_at', models.DateTimeField(blank=True, null=True)), ('graded_at', models.DateTimeField(blank=True, null=True)), ('completion_status', models.CharField(choices=[(1, 'in_progress'), (2, 'submitted'), (3, 'grading_in_progress'), (4, 'graded')], default='in_progress', max_length=255)), ('completion_data', models.JSONField(default=dict)), ('additional_json_data', models.JSONField(default=dict)), ('assignment', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='assignment.assignment')), ('assignment_user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ('course_session', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='course.coursesession')), ('grading_user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to=settings.AUTH_USER_MODEL)), ], ), migrations.AddConstraint( model_name='assignmentcompletion', constraint=models.UniqueConstraint(fields=('assignment_user', 'assignment', 'course_session'), name='assignment_completion_unique_user_assignment_course_session'), ), ]