Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# Generated by Django 3.0.6 on 2020-11-03 23:27
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('AKModel', '0040_event_reso_deadline'),
]
operations = [
migrations.CreateModel(
name='ConstraintViolation',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('type', models.CharField(choices=[('ots', 'Owner has two parallel slots'), ('soa', "AK Slot was scheduled outside the AK's availabilities"), ('rts', 'Room has two AK slots scheduled at the same time'), ('rng', 'Room does not satisfy the requirement of the scheduled AK'), ('acc', 'AK Slot is scheduled at the same time as an AK listed as a conflict'), ('abp', 'AK Slot is scheduled before an AK listed as a prerequisite'), ('aar', 'AK Slot for AK with intention to submit a resolution is scheduled after resolution deadline'), ('acm', 'AK Slot in a category is outside that categories availabilities'), ('asc', 'Two AK Slots for the same AK scheduled at the same time'), ('rce', 'AK Slot is scheduled in a room with less space than interest'), ('soe', "AK Slot is scheduled outside the event's availabilities")], help_text='Type of violation, i.e. what kind of constraint was violated', max_length=3, verbose_name='Type')),
('level', models.PositiveSmallIntegerField(choices=[(1, 'Warning'), (10, 'Violation')], help_text='Severity level of the violation', verbose_name='Level')),
('comment', models.TextField(blank=True, help_text='Comment or further details for this violation', verbose_name='Comment')),
('timestamp', models.DateTimeField(auto_now_add=True, help_text='Time of creation', verbose_name='Timestamp')),
('manually_resolved', models.BooleanField(default=False, help_text='Mark this violation manually as resolved', verbose_name='Manually Resolved')),
('ak_owner', models.ForeignKey(blank=True, help_text='AK Owner belonging to this constraint', null=True, on_delete=django.db.models.deletion.CASCADE, to='AKModel.AKOwner', verbose_name='AK Owner')),
('ak_slots', models.ManyToManyField(blank=True, help_text='AK Slot(s) belonging to this constraint', to='AKModel.AKSlot', verbose_name='AK Slots')),
('aks', models.ManyToManyField(blank=True, help_text='AK(s) belonging to this constraint', to='AKModel.AK', verbose_name='AKs')),
('category', models.ForeignKey(blank=True, help_text='AK Category belonging to this constraint', null=True, on_delete=django.db.models.deletion.CASCADE, to='AKModel.AKCategory', verbose_name='AK Category')),
('event', models.ForeignKey(help_text='Associated event', on_delete=django.db.models.deletion.CASCADE, to='AKModel.Event', verbose_name='Event')),
('requirement', models.ForeignKey(blank=True, help_text='AK Requirement belonging to this constraint', null=True, on_delete=django.db.models.deletion.CASCADE, to='AKModel.AKRequirement', verbose_name='AK Requirement')),
('room', models.ForeignKey(blank=True, help_text='Room belonging to this constraint', null=True, on_delete=django.db.models.deletion.CASCADE, to='AKModel.Room', verbose_name='Room')),
],
options={
'verbose_name': 'Constraint Violation',
'verbose_name_plural': 'Constraint Violations',
'ordering': ['-timestamp'],
},
),
]