Skip to content
Snippets Groups Projects
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
0067_subject.py 4.48 KiB
# -*- coding: utf-8 -*-
# Generated by Django 1.10.7 on 2017-11-27 13:29
from __future__ import unicode_literals

import django.db.models.deletion
from django.db import migrations, models


class Migration(migrations.Migration):
    dependencies = [
        ('web', '0066_subject'),
    ]

    operations = [
        migrations.RunSQL('alter index if exists web_subject_default_written_communication_language_id_0bce1d22 rename to web_studysubject_default_written_communication_language_id_0bce1d22;'),
        migrations.RunSQL('alter index if exists web_subject_languages_subject_id_2cf93044 rename to web_studysubject_languages_subject_id_2cf93044;'),
        migrations.RunSQL('alter index if exists web_subject_languages_language_id_80eca4c1 rename to web_studysubject_languages_language_id_80eca4c1;'),
        migrations.CreateModel(
            name='Subject',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('tmp_study_subject_id', models.IntegerField()),
                ('sex',
                 models.CharField(choices=[(b'M', b'Male'), (b'F', b'Female')], max_length=1, verbose_name=b'Sex')),
                ('first_name', models.CharField(max_length=50, verbose_name=b'First name')),
                ('last_name', models.CharField(max_length=50, verbose_name=b'Last name')),
                ('phone_number', models.CharField(blank=True, max_length=20, null=True, verbose_name=b'Phone number')),
                ('phone_number_2',
                 models.CharField(blank=True, max_length=20, null=True, verbose_name=b'Phone number 2')),
                ('phone_number_3',
                 models.CharField(blank=True, max_length=20, null=True, verbose_name=b'Phone number 3')),
                ('email', models.EmailField(blank=True, max_length=254, null=True, verbose_name=b'E-mail')),
                ('date_born', models.DateField(blank=True, null=True, verbose_name=b'Date of birth (YYYY-MM-DD)')),
                ('address', models.CharField(blank=True, max_length=255, verbose_name=b'Address')),
                ('postal_code', models.CharField(blank=True, max_length=7, verbose_name=b'Postal code')),
                ('city', models.CharField(blank=True, max_length=50, verbose_name=b'City')),
                ('dead', models.BooleanField(default=False, verbose_name=b'Deceased')),
                ('country', models.ForeignKey(default=1, on_delete=django.db.models.deletion.CASCADE, to='web.Country',
                                              verbose_name=b'Country')),
                ('default_written_communication_language',
                 models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE,
                                   related_name='subjects_written_communication', to='web.Language',
                                   verbose_name=b'Default language for document generation')),
                ('languages', models.ManyToManyField(blank=True, to='web.Language', verbose_name=b'Known languages')),
            ],
        ),
        migrations.RunSQL('insert into web_subject (tmp_study_subject_id, sex, first_name, last_name, phone_number, ' +
                          'phone_number_2, phone_number_3, email, date_born, address, postal_code, city, dead, ' +
                          'country_id, default_written_communication_language_id) ' +
                          'select id, sex, first_name, last_name, phone_number, phone_number_2, phone_number_3, ' +
                          'email, date_born, address, postal_code, city, dead, country_id, '
                          'default_written_communication_language_id from web_studysubject;'),
        migrations.AddField(
            model_name='studysubject',
            name='subject',
            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='web.Subject',
                                    verbose_name=b'Subject'),
        ),
        migrations.RunSQL('update web_studysubject set subject_id = ' +
                          '(select id from web_subject where tmp_study_subject_id =web_studysubject.id);'),
        migrations.RemoveField(
            model_name='subject',
            name='tmp_study_subject_id',
        ),
        migrations.AlterField(
            model_name='studysubject',
            name='subject',
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='web.Subject',
                                    verbose_name=b'Subject'),
        ),
    ]