Skip to content
Snippets Groups Projects
Commit fabc3a49 authored by Piotr Gawron's avatar Piotr Gawron
Browse files

Merge branch '173-approaching-visits-list' into 'master'

Resolve "approaching visits list"

Closes #173

See merge request NCER-PD/scheduling-system!108
parents 5b7b917c ff6b7dcf
No related branches found
No related tags found
1 merge request!108Resolve "approaching visits list"
Pipeline #
# -*- coding: utf-8 -*-
# Generated by Django 1.10.7 on 2017-12-05 16:50
from __future__ import unicode_literals
from django.db import migrations
# noinspection PyUnusedLocal
# noinspection PyPep8Naming
def create_default_columns_for_VISIT_LIST_APPROACHING_WITHOUT_APPOINTMENTS(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_language = 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 = False
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 = False
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', '0086_unfinished_visit_list'),
]
operations = [
migrations.RunPython(create_default_columns_for_VISIT_LIST_APPROACHING_WITHOUT_APPOINTMENTS),
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), " +
"FALSE, " +
"FALSE, " +
"FALSE, " +
"'APPROACHING_WITHOUT_APPOINTMENTS' FROM web_visitcolumns, web_studycolumns, web_subjectcolumns;"),
]
......@@ -183,6 +183,8 @@ def get_approaching_visits_without_appointments(user):
today_plus_two_months = today + datetime.timedelta(days=91)
return Visit.objects.annotate(
my_count=Count(Case(When(appointment__status=Appointment.APPOINTMENT_STATUS_SCHEDULED, then=1)))).filter(
subject__subject__dead=False,
subject__resigned=False,
datetime_begin__gt=today,
datetime_begin__lt=today_plus_two_months,
is_finished=False,
......@@ -196,6 +198,8 @@ def get_approaching_visits_for_mail_contact(user):
today_plus_six_months = today + datetime.timedelta(days=183)
return Visit.objects.annotate(
my_count=Count(Case(When(appointment__status=Appointment.APPOINTMENT_STATUS_SCHEDULED, then=1)))).filter(
subject__subject__dead=False,
subject__resigned=False,
datetime_begin__gt=today_plus_three_months,
datetime_begin__lt=today_plus_six_months,
is_finished=False,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment