From 3b888153e1ae5ded41bbac91d5ee7b324d8dc2cc Mon Sep 17 00:00:00 2001 From: Piotr Gawron <piotr.gawron@uni.lu> Date: Wed, 14 Feb 2018 15:52:55 +0100 Subject: [PATCH] columns for missing appointments visit list modified --- .../0109_missing_appointment_list_update.py | 85 +++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 smash/web/migrations/0109_missing_appointment_list_update.py diff --git a/smash/web/migrations/0109_missing_appointment_list_update.py b/smash/web/migrations/0109_missing_appointment_list_update.py new file mode 100644 index 00000000..799c7681 --- /dev/null +++ b/smash/web/migrations/0109_missing_appointment_list_update.py @@ -0,0 +1,85 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.10.7 on 2018-02-14 10:26 +from __future__ import unicode_literals + +from django.db import migrations, models + +def create_default_columns_for_VISIT_LIST_MISSING_APPOINTMENT(apps, schema_editor): + # We can't import the Study model directly as it may be a newer + # version than this migration expects. We use the historical version. + SubjectColumns = apps.get_model("web", "SubjectColumns") + subject_columns = SubjectColumns.objects.create() + subject_columns.sex = False + subject_columns.first_name = True + subject_columns.last_name = True + subject_columns.languages = False + subject_columns.default_written_communication_langua0106_approaching_post_mail_list_updatege = False + subject_columns.phone_number = False + subject_columns.phone_number_2 = False + subject_columns.phone_number_3 = False + subject_columns.email = False + subject_columns.date_born = False + subject_columns.address = False + subject_columns.postal_code = False + subject_columns.city = False + subject_columns.country = False + subject_columns.dead = False + subject_columns.save() + + StudyColumns = apps.get_model("web", "StudyColumns") + study_columns = StudyColumns.objects.create() + study_columns.postponed = False + study_columns.datetime_contact_reminder = False + study_columns.type = False + study_columns.default_location = True + study_columns.flying_team = True + study_columns.screening_number = False + study_columns.nd_number = True + study_columns.mpower_id = False + study_columns.comments = False + study_columns.referral = False + study_columns.diagnosis = False + study_columns.year_of_diagnosis = False + study_columns.information_sent = False + study_columns.pd_in_family = False + study_columns.resigned = False + study_columns.resign_reason = False + study_columns.save() + + VisitColumns = apps.get_model("web", "VisitColumns") + visit_columns = VisitColumns.objects.create() + visit_columns.datetime_begin = True + visit_columns.datetime_end = True + visit_columns.is_finished = False + visit_columns.post_mail_sent = False + visit_columns.visit_number = True + visit_columns.visible_appointment_types = False + visit_columns.save() + + +class Migration(migrations.Migration): + dependencies = [ + ('web', '0108_unfinished_visit_list_update'), + ] + + operations = [ + migrations.RunPython(create_default_columns_for_VISIT_LIST_MISSING_APPOINTMENT), + migrations.RunSQL('INSERT INTO web_studyvisitlist (' + + 'study_id, ' + + 'visible_visit_columns_id, ' + + 'visible_subject_columns_id, ' + + 'visible_study_subject_columns_id, ' + + 'visible_appointment_types_done,' + 'visible_appointment_types_in_progress,' + 'visible_appointment_types_missing,' + 'type) ' + + "SELECT " + + "1, " + + "max(web_visitcolumns.id), " + + "max(web_subjectcolumns.id), " + + "max(web_studycolumns.id), " + + "TRUE, " + + "TRUE, " + + "TRUE, " + + "'MISSING_APPOINTMENTS' FROM web_visitcolumns, web_studycolumns, web_subjectcolumns;"), + ] -- GitLab