# Generated by Django 3.1.2 on 2020-10-21 15:51 from django.db import migrations, models import django.db.models.deletion import django_extensions.db.fields class Migration(migrations.Migration): initial = True dependencies = [ ] operations = [ migrations.CreateModel( name='Address', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('line1', models.CharField(max_length=255)), ('line2', models.CharField(blank=True, max_length=255)), ('line3', models.CharField(blank=True, max_length=255)), ('city', models.CharField(max_length=100)), ('county', models.CharField(blank=True, max_length=100)), ('postcode', models.CharField(max_length=10)), ('country', models.CharField(max_length=100)), ('other_details', models.CharField(blank=True, max_length=255)), ], options={ 'verbose_name_plural': 'Addresses', }, ), migrations.CreateModel( name='AddressType', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('descriptor', models.CharField(max_length=50)), ], ), migrations.CreateModel( name='IncidentReport', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('person_involved', models.CharField(blank=True, max_length=100, verbose_name='Name of person reporting/detecting incident')), ('role', models.CharField(blank=True, help_text='Role of person reporting/detecting incident', max_length=100)), ('phone_number', models.CharField(max_length=30)), ('email', models.EmailField(max_length=254)), ('internal_incident_number', models.CharField(blank=True, max_length=30)), ('date_time_incident_detected', models.DateTimeField(verbose_name='Date/Time incident detected')), ('date_time_incident_reported', models.DateTimeField(auto_now=True, verbose_name='Date/Time incident reported')), ('incident_type', models.CharField(choices=[('Cyber', 'Cyber'), ('Non-Cyber', 'Non-Cyber'), ('Both', 'Both'), ('Power Outage', 'Power Outage')], help_text='This can be appoximate', max_length=20)), ('incident_status', models.CharField(choices=[('Detected', 'Detected'), ('Suspected', 'Suspected'), ('Resolved', 'Resolved')], max_length=20)), ('incident_stage', models.CharField(choices=[('Ongoing', 'Ongoing'), ('Ended', 'Ended'), ('Ongoing but managed', 'Ongoing but managed')], max_length=20)), ('summary', models.TextField(help_text='Please provide a summary of your understanding of the incident, including any impact to services and/or users.')), ('mitigations', models.TextField(help_text='What investigations and/or mitigations have you or a third party performed or plan to perform?', verbose_name='Investigations or mitigations')), ('others_informed', models.TextField(help_text='Who else has been informed about this incident?(CSIRT, NCSC, NCA, etc)', verbose_name='Others parties informed')), ('next_steps', models.TextField(help_text='What are your planned next steps?', verbose_name='Planned next steps')), ('dft_handle_status', models.CharField(choices=[('QUEUED', 'QUEUED'), ('REVIEWING', 'REVIEWING'), ('WAITING', 'WAITING'), ('COMPLETED', 'COMPLETED')], default='QUEUED', max_length=20)), ], ), migrations.CreateModel( name='Mode', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('descriptor', models.CharField(max_length=100)), ], ), migrations.CreateModel( name='Organisation', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255)), ('slug', django_extensions.db.fields.AutoSlugField(blank=True, editable=False, populate_from=['name'])), ('oes', models.BooleanField(default=True)), ('designation_type', models.IntegerField(choices=[(1, 'Automatic'), (2, 'Reserve Power'), (3, 'NA')], default=1)), ('registered_company_name', models.CharField(blank=True, max_length=255)), ('registered_company_number', models.CharField(blank=True, max_length=100)), ('date_updated', models.DateField(auto_now=True)), ('comments', models.TextField(blank=True, max_length=500, null=True)), ('active', models.BooleanField(default=True)), ], ), migrations.CreateModel( name='Person', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('primary_nis_contact', models.BooleanField(default=False, verbose_name='Primary NIS contact')), ('voluntary_point_of_contact', models.BooleanField(default=False)), ('has_egress', models.BooleanField(default=False, verbose_name='Has Egress')), ('title', models.IntegerField(choices=[(1, 'Mr'), (2, 'Mrs'), (3, 'Miss'), (4, 'Ms'), (5, 'Dr.'), (6, 'Professor'), (7, 'The Rt Hon.'), (8, 'Lord'), (9, 'Lady')], default=1)), ('job_title', models.CharField(max_length=100)), ('first_name', models.CharField(max_length=50)), ('last_name', models.CharField(max_length=50)), ('email', models.EmailField(max_length=254)), ('secondary_email', models.EmailField(blank=True, max_length=254)), ('mobile', models.CharField(blank=True, max_length=20)), ('landline', models.CharField(blank=True, max_length=20)), ('date_updated', models.DateField(auto_now=True)), ('clearance', models.IntegerField(choices=[(1, 'NA'), (2, 'BPSS'), (3, 'CTC'), (4, 'SC'), (5, 'DV'), (6, 'Other')], default=1)), ('clearance_sponsor', models.CharField(blank=True, max_length=100)), ('clearance_start_date', models.DateField(blank=True, null=True)), ('clearance_last_checked', models.DateField(blank=True, null=True)), ('clearance_expiry', models.DateField(blank=True, null=True)), ('active', models.BooleanField(default=True)), ('date_ended', models.DateField(blank=True, null=True)), ('comments', models.TextField(blank=True, max_length=1000)), ('organisation', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='organisations.organisation')), ('predecessor', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='previous_person', to='organisations.person')), ], options={ 'verbose_name_plural': 'People', }, ), migrations.CreateModel( name='Role', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=100)), ], ), migrations.CreateModel( name='Submode', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('descriptor', models.CharField(max_length=100)), ('mode', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='organisations.mode')), ], ), migrations.CreateModel( name='Stakeholder', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='organisations.person')), ], ), migrations.AddField( model_name='person', name='role', field=models.ManyToManyField(to='organisations.Role'), ), ]