def enroll(subject_identifier=None): subject_identifier = subject_identifier or "1111111" site_reference_configs.registry = {} reference = ReferenceModelConfig( name="edc_action_item.CrfLongitudinalOne", fields=["f1", "f2", "f3"]) site_reference_configs.register(reference) site_visit_schedules._registry = {} site_visit_schedules.loaded = False site_visit_schedules.register(visit_schedule) site_reference_configs.register_from_visit_schedule( visit_models={ "edc_appointment.appointment": "edc_metadata.subjectvisit" }) subject_consent = SubjectConsent.objects.create( subject_identifier=subject_identifier, consent_datetime=get_utcnow()) _, schedule = site_visit_schedules.get_by_onschedule_model( "edc_metadata.onschedule") schedule.put_on_schedule( subject_identifier=subject_consent.subject_identifier, onschedule_datetime=subject_consent.consent_datetime, ) return subject_identifier
def setUp(self): self.panel_one = Panel.objects.create(name="one") self.panel_two = Panel.objects.create(name="two") for name in ["three", "four", "five", "six"]: Panel.objects.create(name=name) site_visit_schedules._registry = {} site_visit_schedules.loaded = False site_visit_schedules.register(visit_schedule) register_to_site_reference_configs() site_reference_configs.register_from_visit_schedule( visit_models={"edc_appointment.appointment": "edc_metadata.subjectvisit"} ) self.subject_identifier = "1111111" self.assertEqual(CrfMetadata.objects.all().count(), 0) self.assertEqual(RequisitionMetadata.objects.all().count(), 0) subject_consent = SubjectConsent.objects.create( subject_identifier=self.subject_identifier, consent_datetime=get_utcnow() ) _, self.schedule = site_visit_schedules.get_by_onschedule_model( "edc_metadata.onschedule" ) self.schedule.put_on_schedule( subject_identifier=self.subject_identifier, onschedule_datetime=subject_consent.consent_datetime, ) self.appointment = Appointment.objects.get( subject_identifier=self.subject_identifier, visit_code=self.schedule.visits.first.code, )
def setUp(self): self.panel_one = Panel.objects.create(name='one') self.panel_two = Panel.objects.create(name='two') import_holidays() register_to_site_reference_configs() site_visit_schedules._registry = {} site_visit_schedules.loaded = False site_visit_schedules.register(visit_schedule) site_reference_configs.register_from_visit_schedule( visit_models={ 'edc_appointment.appointment': 'edc_metadata.subjectvisit'}) self.subject_identifier = '1111111' self.assertEqual(CrfMetadata.objects.all().count(), 0) self.assertEqual(RequisitionMetadata.objects.all().count(), 0) subject_consent = SubjectConsent.objects.create( subject_identifier=self.subject_identifier, consent_datetime=get_utcnow()) _, self.schedule = site_visit_schedules.get_by_onschedule_model( 'edc_metadata.onschedule') self.schedule.put_on_schedule( subject_identifier=self.subject_identifier, onschedule_datetime=subject_consent.consent_datetime) self.appointment = Appointment.objects.get( subject_identifier=self.subject_identifier, visit_code=self.schedule.visits.first.code)
def register_new_visit_schedule(crfs): site_visit_schedules._registry = {} site_visit_schedules.loaded = False visit = Visit( code="1000", title="Week 1", timepoint=0, rbase=relativedelta(days=0), rlower=relativedelta(days=0), rupper=relativedelta(days=6), crfs=crfs, allow_unscheduled=True, facility_name="5-day-clinic", ) schedule = Schedule( name="schedule", onschedule_model="edc_metadata.onschedule", offschedule_model="edc_metadata.offschedule", consent_model="edc_metadata.subjectconsent", appointment_model="edc_appointment.appointment", ) schedule.add_visit(visit) new_visit_schedule = VisitSchedule( name="visit_schedule", offstudy_model="edc_metadata.subjectoffstudy", death_report_model="edc_metadata.deathreport", ) new_visit_schedule.add_schedule(schedule) site_visit_schedules.register(new_visit_schedule)
def setUp(self): self.subject_identifier = "12345" site_visit_schedules._registry = {} site_visit_schedules.register(visit_schedule=visit_schedule3) self.helper = self.helper_cls( subject_identifier=self.subject_identifier, now=Protocol().study_open_datetime, )
def setUp(self) -> None: site_visit_schedules._registry = {} site_visit_schedules.loaded = False site_visit_schedules.register(visit_schedule) self.subject_identifier = "12345" RegisteredSubject.objects.create( subject_identifier=self.subject_identifier) report_datetime = get_utcnow() creator = AppointmentsCreator( subject_identifier=self.subject_identifier, visit_schedule=visit_schedule, schedule=schedule, report_datetime=report_datetime, ) creator.create_appointments(base_appt_datetime=report_datetime) self.assertGreater( Appointment.objects.filter( subject_identifier=self.subject_identifier).count(), 0, ) self.medication = Medication.objects.create(name="Flucytosine", ) self.formulation = Formulation.objects.create( medication=self.medication, strength=500, units=Units.objects.get(name="mg"), route=Route.objects.get(display_name="Oral"), formulation_type=FormulationType.objects.get( display_name__iexact="Tablet"), ) self.dosage_guideline_100 = DosageGuideline.objects.create( medication=self.medication, dose_per_kg=100, dose_units=Units.objects.get(name="mg"), frequency=1, frequency_units=FrequencyUnits.objects.get(name="day"), ) self.dosage_guideline_200 = DosageGuideline.objects.create( medication=self.medication, dose_per_kg=100, dose_units=Units.objects.get(name="mg"), frequency=2, frequency_units=FrequencyUnits.objects.get(name="day"), ) self.rx = Rx.objects.create( subject_identifier=self.subject_identifier, weight_in_kgs=40, report_datetime=report_datetime, medication=self.medication, )
def setUp(self): self.subject_identifier = "12345" site_visit_schedules._registry = {} site_visit_schedules.register(visit_schedule=visit_schedule1) site_visit_schedules.register(visit_schedule=visit_schedule2) self.helper = self.helper_cls( subject_identifier=self.subject_identifier, now=arrow.Arrow.fromdatetime(datetime(2017, 1, 7), tzinfo="UTC").datetime, )
def setUp(self): site_visit_schedules._registry = {} site_visit_schedules.register(visit_schedule) subject_consent = baker.make_recipe( "adverse_event_app.subjectconsent", subject_identifier="1234567" ) self.subject_identifier = subject_consent.subject_identifier # put subject on schedule _, schedule = site_visit_schedules.get_by_onschedule_model( "adverse_event_app.onschedule" ) schedule.put_on_schedule( subject_identifier=subject_consent.subject_identifier, onschedule_datetime=subject_consent.consent_datetime, )
def setUp(self): site_visit_schedules._registry = {} site_visit_schedules.register(visit_schedule=visit_schedule1) RegisteredSubject.objects.create(subject_identifier="12345") self.appointment = Appointment.objects.create( visit_code="1000", appt_datetime=get_utcnow(), visit_schedule_name="visit_schedule1", schedule_name="schedule1", ) self.subject_visit = SubjectVisit.objects.create( appointment=self.appointment, subject_identifier="12345") self.bad_subject_visit = BadSubjectVisit.objects.create( appointment=self.appointment, subject_identifier="12345") self.test_model = TestModel.objects.create( subject_visit=self.subject_visit)
def setUp(self): site_visit_schedules._registry = {} site_visit_schedules.register(visit_schedule) self.user = User.objects.create(username="******", is_staff=True, is_active=True) self.subject_identifier = "1234" for permission in Permission.objects.filter( content_type__app_label="edc_form_label", content_type__model="mymodel"): self.user.user_permissions.add(permission) RegisteredSubject.objects.create( subject_identifier=self.subject_identifier) self.appointment_one = Appointment.objects.create( subject_identifier=self.subject_identifier, appt_datetime=get_utcnow() - timedelta(days=1), visit_code=VISIT_ONE, visit_code_sequence=0, visit_schedule_name="visit_schedule", schedule_name="schedule", timepoint=0, timepoint_datetime=get_utcnow() - timedelta(days=1), ) self.subject_visit_one = SubjectVisit.objects.create( appointment=self.appointment_one) self.appointment_two = Appointment.objects.create( subject_identifier=self.subject_identifier, appt_datetime=get_utcnow(), visit_code=VISIT_TWO, visit_code_sequence=0, visit_schedule_name="visit_schedule", schedule_name="schedule", timepoint=1, timepoint_datetime=get_utcnow(), ) self.subject_visit_two = SubjectVisit.objects.create( appointment=self.appointment_two) for field in MyModel._meta.fields: if field.name == "circumcised": self.default_label = field.verbose_name break
def setUp(self): self.subject_identifier = "12345" site_consents.registry = {} site_consents.register(v1_consent) self.helper = self.helper_cls( subject_identifier=self.subject_identifier, subject_consent_model_cls=SubjectConsent, onschedule_model_name="visit_schedule_app.onschedule", ) site_visit_schedules._registry = {} site_visit_schedules.register(visit_schedule=visit_schedule) site_reference_configs.register_from_visit_schedule(visit_models={ "edc_appointment.appointment": "visit_schedule_app.subjectvisit" }) self.helper.consent_and_put_on_schedule() appointment = Appointment.objects.all()[0] self.subject_visit = SubjectVisit.objects.create( appointment=appointment, report_datetime=get_utcnow(), reason=SCHEDULED)
from edc_visit_schedule import VisitSchedule, site_visit_schedules from .schedule import schedule from .schedule_w10 import schedule_w10 app_label = 'ambition_subject' visit_schedule = VisitSchedule( name='visit_schedule', verbose_name='Ambition', offstudy_model=f'ambition_prn.studyterminationconclusion', death_report_model=f'ambition_prn.deathreport', locator_model='edc_locator.subjectlocator', previous_visit_schedule=None) visit_schedule.add_schedule(schedule) visit_schedule_w10 = VisitSchedule( name='visit_schedule_w10', verbose_name='Ambition W10', offstudy_model=f'ambition_prn.studyterminationconclusion', death_report_model=f'ambition_prn.deathreport', locator_model='edc_locator.subjectlocator', previous_visit_schedule=None) visit_schedule_w10.add_schedule(schedule_w10) site_visit_schedules.register(visit_schedule) site_visit_schedules.register(visit_schedule_w10)
from edc_visit_schedule import VisitSchedule, site_visit_schedules from .schedule import schedule1 visit_schedule1 = VisitSchedule( name='visit_schedule1', verbose_name='Trainee', offstudy_model='trainee_prn.subjectoffstudy', locator_model='trainee_subject.subject_locator', death_report_model='trainee_prn.deathreport', previous_visit_schedule=None) visit_schedule1.add_schedule(schedule1) site_visit_schedules.register(visit_schedule1)
cohort_a2_visit_schedule_v1.add_schedule(a_enrollment2_schedule_1) cohort_a2_visit_schedule_v1.add_schedule(a_antenatal2_schedule_1) cohort_a2_visit_schedule_v1.add_schedule(a_birth2_schedule_1) cohort_a2_visit_schedule_v1.add_schedule(a_quarterly2_schedule_1) cohort_a2_visit_schedule_v1.add_schedule(a_sec2_schedule_1) cohort_a2_visit_schedule_v1.add_schedule(a_sec_quart2_schedule_1) cohort_a2_visit_schedule_v1.add_schedule(a_fu2_schedule_1) cohort_a2_visit_schedule_v1.add_schedule(a_fu_quarterly2_schedule_1) cohort_a3_visit_schedule_v1 = VisitSchedule( name='a3_visit_schedule1', verbose_name='Cohort A3 Visit Schedule', offstudy_model='flourish_prn.caregiveroffstudy', death_report_model='flourish_prn.caregiverdeathreport', locator_model='', previous_visit_schedule=None) cohort_a3_visit_schedule_v1.add_schedule(a_enrollment3_schedule_1) cohort_a3_visit_schedule_v1.add_schedule(a_antenatal3_schedule_1) cohort_a3_visit_schedule_v1.add_schedule(a_birth3_schedule_1) cohort_a3_visit_schedule_v1.add_schedule(a_quarterly3_schedule_1) cohort_a3_visit_schedule_v1.add_schedule(a_sec3_schedule_1) cohort_a3_visit_schedule_v1.add_schedule(a_sec_quart3_schedule_1) cohort_a3_visit_schedule_v1.add_schedule(a_fu3_schedule_1) cohort_a3_visit_schedule_v1.add_schedule(a_fu_quarterly3_schedule_1) # Registering Visit Schedules site_visit_schedules.register(cohort_a1_visit_schedule_v1) site_visit_schedules.register(cohort_a2_visit_schedule_v1) site_visit_schedules.register(cohort_a3_visit_schedule_v1)
death_report_model='flourish_prn.caregiverdeathreport', locator_model='', previous_visit_schedule=None) cohort_b2_visit_schedule_v1.add_schedule(b_enrollment2_schedule_1) cohort_b2_visit_schedule_v1.add_schedule(b_quarterly2_schedule_1) cohort_b2_visit_schedule_v1.add_schedule(b_sec2_schedule_1) cohort_b2_visit_schedule_v1.add_schedule(b_sec_quart2_schedule_1) cohort_b2_visit_schedule_v1.add_schedule(b_fu2_schedule_1) cohort_b2_visit_schedule_v1.add_schedule(b_fu_quarterly2_schedule_1) cohort_b3_visit_schedule_v1 = VisitSchedule( name='b3_visit_schedule1', verbose_name='Cohort B3 Visit Schedule', offstudy_model='flourish_prn.caregiveroffstudy', death_report_model='flourish_prn.caregiverdeathreport', locator_model='', previous_visit_schedule=None) cohort_b3_visit_schedule_v1.add_schedule(b_enrollment3_schedule_1) cohort_b3_visit_schedule_v1.add_schedule(b_quarterly3_schedule_1) cohort_b3_visit_schedule_v1.add_schedule(b_sec3_schedule_1) cohort_b3_visit_schedule_v1.add_schedule(b_sec_quart3_schedule_1) cohort_b3_visit_schedule_v1.add_schedule(b_fu3_schedule_1) cohort_b3_visit_schedule_v1.add_schedule(b_fu_quarterly3_schedule_1) # Registering Visit Schedules site_visit_schedules.register(cohort_b1_visit_schedule_v1) site_visit_schedules.register(cohort_b2_visit_schedule_v1) site_visit_schedules.register(cohort_b3_visit_schedule_v1)
def setUp(self): Appointment.objects.all().delete() self.subject_identifier = "12345" self.visit_schedule = VisitSchedule( name="visit_schedule", verbose_name="Visit Schedule", offstudy_model="edc_offstudy.subjectoffstudy", death_report_model="edc_appointment.deathreport", ) self.schedule = Schedule( name="schedule", onschedule_model="edc_appointment.onschedule", offschedule_model="edc_appointment.offschedule", appointment_model="edc_appointment.appointment", consent_model="edc_appointment.subjectconsent", ) self.visit1000 = Visit( code="1000", timepoint=0, rbase=relativedelta(days=0), rlower=relativedelta(days=0), rupper=relativedelta(days=6), facility_name="7-day-clinic", ) self.visit1001 = Visit( code="1001", timepoint=1, rbase=relativedelta(days=14), rlower=relativedelta(days=1), # one day before base rupper=relativedelta(days=6), facility_name="7-day-clinic", ) self.visit1010 = Visit( code="1010", timepoint=2, rbase=relativedelta(days=28), rlower=relativedelta(days=6), # one day before base rupper=relativedelta(days=6), facility_name="7-day-clinic", ) self.schedule.add_visit(self.visit1000) self.schedule.add_visit(self.visit1001) self.schedule.add_visit(self.visit1010) self.visit_schedule.add_schedule(self.schedule) site_visit_schedules._registry = {} site_visit_schedules.register(visit_schedule=self.visit_schedule) app_config = django_apps.get_app_config("edc_facility") class Meta: label_lower = "" class DummyAppointmentObj: subject_identifier = self.subject_identifier visit_schedule = self.visit_schedule schedule = self.schedule facility = app_config.get_facility(name="7-day-clinic") _meta = Meta() self.model_obj = DummyAppointmentObj()
def setUp(self): self.subject_identifier = "12345" site_visit_schedules._registry = {} site_visit_schedules.register(visit_schedule=visit_schedule1)
from edc_visit_schedule import VisitSchedule, site_visit_schedules # from ..models import S from .schedule import pre_flourish_schedule pre_flourish_visit_schedule = VisitSchedule( name='visit_schedule1', verbose_name='Pre Flourish Visit Schedule', offstudy_model='pre_flourish.preflourishoffstudy', locator_model='pre_flourish.preflourishcaregiverlocator', death_report_model='pre_flourish.preflourishdeathreport', previous_visit_schedule=None) pre_flourish_visit_schedule.add_schedule(pre_flourish_schedule) site_visit_schedules.register(pre_flourish_visit_schedule)
infant_visit_schedule_v1 = VisitSchedule( name='infant_visit_schedule_v1', verbose_name='Infant Visit Schedule V1', offstudy_model='td_prn.infantoffstudy', death_report_model='td_prn.infantdeathreport', locator_model='td_maternal.maternallocator', previous_visit_schedule=None) infant_visit_schedule_v1.add_schedule(infant_schedule_v1) infant_visit_schedule_v3 = VisitSchedule( name='infant_visit_schedule_v3', verbose_name='Infant Visit Schedule V3', offstudy_model='td_prn.infantoffstudy', death_report_model='td_prn.infantdeathreport', locator_model='td_maternal.maternallocator', previous_visit_schedule=None) infant_visit_schedule_v3.add_schedule(infant_schedule_v3) # Registering Visit Schedules site_visit_schedules.register(antenatal_visit_schedule_v1) site_visit_schedules.register(antenatal_visit_schedule_v3) site_visit_schedules.register(antenatal_membership_visit_schedule_v1) site_visit_schedules.register(antenatal_membership_visit_schedule_v3) site_visit_schedules.register(maternal_labour_visit_schedule_v1) site_visit_schedules.register(maternal_labour_visit_schedule_v3) site_visit_schedules.register(infant_visit_schedule_v1) site_visit_schedules.register(infant_visit_schedule_v3)
previous_visit_schedule=None) cohort_c2_visit_schedule_v1.add_schedule(c_enrollment2_schedule_1) cohort_c2_visit_schedule_v1.add_schedule(c_quarterly2_schedule_1) cohort_c2_visit_schedule_v1.add_schedule(c_sec2_schedule_1) cohort_c2_visit_schedule_v1.add_schedule(c_sec_quart2_schedule_1) cohort_c2_visit_schedule_v1.add_schedule(caregiver_pool2_schedule_1) cohort_c2_visit_schedule_v1.add_schedule(c_fu2_schedule_1) cohort_c2_visit_schedule_v1.add_schedule(c_fu_quarterly2_schedule_1) cohort_c3_visit_schedule_v1 = VisitSchedule( name='c3_visit_schedule1', verbose_name='Cohort C3 Visit Schedule', offstudy_model='flourish_prn.caregiveroffstudy', death_report_model='flourish_prn.caregiverdeathreport', locator_model='', previous_visit_schedule=None) cohort_c3_visit_schedule_v1.add_schedule(c_enrollment3_schedule_1) cohort_c3_visit_schedule_v1.add_schedule(c_quarterly3_schedule_1) cohort_c3_visit_schedule_v1.add_schedule(c_sec3_schedule_1) cohort_c3_visit_schedule_v1.add_schedule(c_sec_quart3_schedule_1) cohort_c3_visit_schedule_v1.add_schedule(caregiver_pool3_schedule_1) cohort_c3_visit_schedule_v1.add_schedule(c_fu3_schedule_1) cohort_c3_visit_schedule_v1.add_schedule(c_fu_quarterly3_schedule_1) # Registering Visit Schedules site_visit_schedules.register(cohort_c1_visit_schedule_v1) site_visit_schedules.register(cohort_c2_visit_schedule_v1) site_visit_schedules.register(cohort_c3_visit_schedule_v1)
locator_model='', previous_visit_schedule=None) child_b_visit_schedule_v1.add_schedule(child_b_enrollment_schedule_1) child_b_visit_schedule_v1.add_schedule(child_b_quarterly_schedule_1) child_b_visit_schedule_v1.add_schedule(child_b_sec_schedule_1) child_b_visit_schedule_v1.add_schedule(child_b_sec_qt_schedule_1) child_b_visit_schedule_v1.add_schedule(child_b_fu_schedule_1) child_b_visit_schedule_v1.add_schedule(child_b_fu_quarterly_schedule_1) child_c_visit_schedule_v1 = VisitSchedule( name='child_c_visit_schedule_v1', verbose_name='Child Cohort C Visit Schedule', offstudy_model='flourish_prn.childoffstudy', death_report_model='flourish_prn.childdeathreport', locator_model='', previous_visit_schedule=None) child_c_visit_schedule_v1.add_schedule(child_c_enrollment_schedule_1) child_c_visit_schedule_v1.add_schedule(child_c_quarterly_schedule_1) child_c_visit_schedule_v1.add_schedule(child_c_sec_schedule_1) child_c_visit_schedule_v1.add_schedule(child_c_sec_qt_schedule_1) child_c_visit_schedule_v1.add_schedule(child_pool_schedule_1) child_c_visit_schedule_v1.add_schedule(child_c_fu_schedule_1) child_c_visit_schedule_v1.add_schedule(child_c_fu_quarterly_schedule_1) # Registering Visit Schedules site_visit_schedules.register(child_a_visit_schedule_v1) site_visit_schedules.register(child_b_visit_schedule_v1) site_visit_schedules.register(child_c_visit_schedule_v1)