class Migration(migrations.Migration): dependencies = [ ('course_overviews', '0014_courseoverview_certificate_available_date'), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ('student', '0020_auto_20190227_2019'), ] operations = [ migrations.CreateModel( name='HistoricalCourseEnrollment', fields=[ ('id', models.IntegerField(auto_created=True, blank=True, db_index=True, verbose_name='ID')), ('created', models.DateTimeField(blank=True, db_index=True, editable=False, null=True)), ('is_active', models.BooleanField(default=True)), ('mode', models.CharField(default=u'audit', max_length=100)), ('history_id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), ('history_date', models.DateTimeField()), ('history_change_reason', models.CharField(max_length=100, null=True)), ('history_type', models.CharField(choices=[('+', 'Created'), ('~', 'Changed'), ('-', 'Deleted')], max_length=1)), ('course', models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='course_overviews.CourseOverview')), ('history_user', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL)), ('user', models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to=settings.AUTH_USER_MODEL)), ], options={ 'ordering': ('-history_date', '-history_id'), 'db_table': 'student_courseenrollment_history', 'verbose_name': 'historical course enrollment', 'get_latest_by': 'history_date', }, bases=(simple_history.models.HistoricalChanges, models.Model), ), ]
class Migration(migrations.Migration): dependencies = [ ('core', '0051_ecommercefeatureroleassignment_enterprise_id'), ] operations = [ migrations.CreateModel( name='HistoricalBusinessClient', fields=[ ('id', models.IntegerField(auto_created=True, blank=True, db_index=True, verbose_name='ID')), ('name', models.CharField(db_index=True, max_length=255, verbose_name='Name')), ('enterprise_customer_uuid', models.UUIDField(blank=True, help_text='UUID for an EnterpriseCustomer from the Enterprise Service.', null=True, verbose_name='EnterpriseCustomer UUID')), ('history_id', models.AutoField(primary_key=True, serialize=False)), ('history_date', models.DateTimeField()), ('history_change_reason', models.CharField(max_length=100, null=True)), ('history_type', models.CharField(choices=[('+', 'Created'), ('~', 'Changed'), ('-', 'Deleted')], max_length=1)), ('history_user', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL)), ], options={ 'ordering': ('-history_date', '-history_id'), 'get_latest_by': 'history_date', 'verbose_name': 'historical business client', }, bases=(simple_history.models.HistoricalChanges, models.Model), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='HistoricalProgramEnrollment', fields=[ ('id', models.IntegerField(auto_created=True, blank=True, db_index=True, verbose_name='ID')), ('created', model_utils.fields.AutoCreatedField(default=django.utils.timezone.now, editable=False, verbose_name='created')), ('modified', model_utils.fields.AutoLastModifiedField(default=django.utils.timezone.now, editable=False, verbose_name='modified')), ('external_user_key', models.CharField(db_index=True, max_length=255, null=True)), ('program_uuid', models.UUIDField(db_index=True)), ('curriculum_uuid', models.UUIDField(db_index=True)), ('status', models.CharField(choices=[('enrolled', 'enrolled'), ('pending', 'pending'), ('suspended', 'suspended'), ('withdrawn', 'withdrawn')], max_length=9)), ('history_id', models.AutoField(primary_key=True, serialize=False)), ('history_date', models.DateTimeField()), ('history_change_reason', models.CharField(max_length=100, null=True)), ('history_type', models.CharField(choices=[('+', 'Created'), ('~', 'Changed'), ('-', 'Deleted')], max_length=1)), ('history_user', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL)), ('user', models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to=settings.AUTH_USER_MODEL)), ], options={ 'ordering': ('-history_date', '-history_id'), 'get_latest_by': 'history_date', 'verbose_name': 'historical program enrollment', }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name='ProgramEnrollment', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created', model_utils.fields.AutoCreatedField(default=django.utils.timezone.now, editable=False, verbose_name='created')), ('modified', model_utils.fields.AutoLastModifiedField(default=django.utils.timezone.now, editable=False, verbose_name='modified')), ('external_user_key', models.CharField(db_index=True, max_length=255, null=True)), ('program_uuid', models.UUIDField(db_index=True)), ('curriculum_uuid', models.UUIDField(db_index=True)), ('status', models.CharField(choices=[('enrolled', 'enrolled'), ('pending', 'pending'), ('suspended', 'suspended'), ('withdrawn', 'withdrawn')], max_length=9)), ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], ), ]
class Migration(migrations.Migration): dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ("barriers", "0012_auto_20180924_1654"), ] operations = [ migrations.CreateModel( name="BarrierCompany", fields=[ ( "id", models.AutoField( auto_created=True, primary_key=True, serialize=False, verbose_name="ID", ), ), ( "created_on", models.DateTimeField(auto_now_add=True, db_index=True, null=True), ), ("modified_on", models.DateTimeField(auto_now=True, null=True)), ("company_id", models.UUIDField(help_text="Data hub company UUID")), ( "company_name", models.CharField(help_text="Data hub company name", max_length=255), ), ( "barrier", models.ForeignKey( on_delete=django.db.models.deletion.PROTECT, related_name="companies", to="barriers.BarrierInstance", ), ), ( "created_by", models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "modified_by", models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ], ), migrations.CreateModel( name="HistoricalBarrierCompany", fields=[ ( "id", models.IntegerField( auto_created=True, blank=True, db_index=True, verbose_name="ID" ), ), ( "created_on", models.DateTimeField( blank=True, db_index=True, editable=False, null=True ), ), ( "modified_on", models.DateTimeField(blank=True, editable=False, null=True), ), ("company_id", models.UUIDField(help_text="Data hub company UUID")), ( "company_name", models.CharField(help_text="Data hub company name", max_length=255), ), ("history_id", models.AutoField(primary_key=True, serialize=False)), ("history_change_reason", models.CharField(max_length=100, null=True)), ("history_date", models.DateTimeField()), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "barrier", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="barriers.BarrierInstance", ), ), ( "created_by", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "history_user", models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "modified_by", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ], options={ "verbose_name": "historical barrier company", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.AlterUniqueTogether( name="barriercompany", unique_together={("barrier", "company_id")} ), ]
class Migration(migrations.Migration): dependencies = [ ("inte_lists", "0007_auto_20200910_1742"), ("sites", "0002_alter_domain_unique"), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ("inte_subject", "0053_auto_20200910_2201"), ] operations = [ migrations.CreateModel( name="ComplicationsFollowup", fields=[ ( "revision", django_revision.revision_field.RevisionField( blank=True, editable=False, help_text= "System field. Git repository tag:branch:commit.", max_length=75, null=True, verbose_name="Revision", ), ), ( "created", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "modified", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "user_created", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user created", ), ), ( "user_modified", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user modified", ), ), ( "hostname_created", models.CharField( blank=True, default=_socket.gethostname, help_text="System field. (modified on create only)", max_length=60, ), ), ( "hostname_modified", django_audit_fields.fields.hostname_modification_field. HostnameModificationField( blank=True, help_text="System field. (modified on every save)", max_length=50, ), ), ("device_created", models.CharField(blank=True, max_length=10)), ("device_modified", models.CharField(blank=True, max_length=10)), ( "id", django_audit_fields.fields.uuid_auto_field.UUIDAutoField( blank=True, editable=False, help_text="System auto field. UUID primary key.", primary_key=True, serialize=False, ), ), ( "report_datetime", models.DateTimeField( default=edc_utils.date.get_utcnow, help_text= "If reporting today, use today's date/time, otherwise use the date/time this information was reported.", validators=[ edc_protocol.validators. datetime_not_before_study_start, edc_model.models.validators.date. datetime_not_future, ], verbose_name="Report Date", ), ), ( "consent_model", models.CharField(editable=False, max_length=50, null=True), ), ( "consent_version", models.CharField(editable=False, max_length=10, null=True), ), ( "crf_status", models.CharField( choices=[ ("INCOMPLETE", "Incomplete (some data pending)"), ("COMPLETE", "Complete"), ], default="INCOMPLETE", help_text= "If some data is still pending, flag this CRF as incomplete", max_length=25, verbose_name="CRF status", ), ), ( "crf_status_comments", models.TextField( blank=True, help_text="for example, why some data is still pending", null=True, verbose_name= "Any comments related to status of this CRF", ), ), ( "stroke", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=25, verbose_name="Stroke", ), ), ( "stroke_date", models.DateField( blank=True, help_text= "If exact date not known, see SOP on how to estimate a date.", null=True, verbose_name="If yes, date", ), ), ( "heart_attack", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=25, verbose_name="Heart attack / heart failure", ), ), ( "heart_attack_date", models.DateField( blank=True, help_text= "If exact date not known, see SOP on how to estimate a date.", null=True, verbose_name="If yes, date", ), ), ( "renal_disease", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=25, verbose_name="Renal (kidney) disease", ), ), ( "renal_disease_date", models.DateField( blank=True, help_text= "If exact date not known, see SOP on how to estimate a date.", null=True, verbose_name="If yes, date", ), ), ( "vision", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=25, verbose_name="Vision problems (e.g. blurred vision)", ), ), ( "vision_date", models.DateField( blank=True, help_text= "If exact date not known, see SOP on how to estimate a date.", null=True, verbose_name="If yes, date", ), ), ( "numbness", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=25, verbose_name="Numbness / burning sensation", ), ), ( "numbness_date", models.DateField( blank=True, help_text= "If exact date not known, see SOP on how to estimate a date.", null=True, verbose_name="If yes, date", ), ), ( "foot_ulcers", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=25, verbose_name="Foot ulcers", ), ), ( "foot_ulcers_date", models.DateField( blank=True, help_text= "If exact date not known, see SOP on how to estimate a date.", null=True, verbose_name="If yes, date", ), ), ( "complications", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], default="No", max_length=25, verbose_name= "Are there any other major complications to report?", ), ), ( "complications_other", models.TextField(blank=True, help_text="Please include dates", null=True), ), ( "site", models.ForeignKey( editable=False, null=True, on_delete=django.db.models.deletion.PROTECT, related_name="+", to="sites.Site", ), ), ( "subject_visit", models.OneToOneField( on_delete=django.db.models.deletion.PROTECT, to="inte_subject.SubjectVisit", ), ), ], options={ "verbose_name": "Complications: Followup", "verbose_name_plural": "Complications: Followup", "ordering": ("-modified", "-created"), "get_latest_by": "modified", "abstract": False, "default_permissions": ( "add", "change", "delete", "view", "export", "import", ), }, managers=[ ("on_site", django.contrib.sites.managers.CurrentSiteManager()), ("objects", edc_visit_tracking.managers.CrfModelManager()), ], ), migrations.CreateModel( name="HistoricalComplicationsFollowup", fields=[ ( "revision", django_revision.revision_field.RevisionField( blank=True, editable=False, help_text= "System field. Git repository tag:branch:commit.", max_length=75, null=True, verbose_name="Revision", ), ), ( "created", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "modified", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "user_created", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user created", ), ), ( "user_modified", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user modified", ), ), ( "hostname_created", models.CharField( blank=True, default=_socket.gethostname, help_text="System field. (modified on create only)", max_length=60, ), ), ( "hostname_modified", django_audit_fields.fields.hostname_modification_field. HostnameModificationField( blank=True, help_text="System field. (modified on every save)", max_length=50, ), ), ("device_created", models.CharField(blank=True, max_length=10)), ("device_modified", models.CharField(blank=True, max_length=10)), ( "id", django_audit_fields.fields.uuid_auto_field.UUIDAutoField( blank=True, db_index=True, editable=False, help_text="System auto field. UUID primary key.", ), ), ( "report_datetime", models.DateTimeField( default=edc_utils.date.get_utcnow, help_text= "If reporting today, use today's date/time, otherwise use the date/time this information was reported.", validators=[ edc_protocol.validators. datetime_not_before_study_start, edc_model.models.validators.date. datetime_not_future, ], verbose_name="Report Date", ), ), ( "consent_model", models.CharField(editable=False, max_length=50, null=True), ), ( "consent_version", models.CharField(editable=False, max_length=10, null=True), ), ( "crf_status", models.CharField( choices=[ ("INCOMPLETE", "Incomplete (some data pending)"), ("COMPLETE", "Complete"), ], default="INCOMPLETE", help_text= "If some data is still pending, flag this CRF as incomplete", max_length=25, verbose_name="CRF status", ), ), ( "crf_status_comments", models.TextField( blank=True, help_text="for example, why some data is still pending", null=True, verbose_name= "Any comments related to status of this CRF", ), ), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ( "stroke", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=25, verbose_name="Stroke", ), ), ( "stroke_date", models.DateField( blank=True, help_text= "If exact date not known, see SOP on how to estimate a date.", null=True, verbose_name="If yes, date", ), ), ( "heart_attack", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=25, verbose_name="Heart attack / heart failure", ), ), ( "heart_attack_date", models.DateField( blank=True, help_text= "If exact date not known, see SOP on how to estimate a date.", null=True, verbose_name="If yes, date", ), ), ( "renal_disease", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=25, verbose_name="Renal (kidney) disease", ), ), ( "renal_disease_date", models.DateField( blank=True, help_text= "If exact date not known, see SOP on how to estimate a date.", null=True, verbose_name="If yes, date", ), ), ( "vision", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=25, verbose_name="Vision problems (e.g. blurred vision)", ), ), ( "vision_date", models.DateField( blank=True, help_text= "If exact date not known, see SOP on how to estimate a date.", null=True, verbose_name="If yes, date", ), ), ( "numbness", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=25, verbose_name="Numbness / burning sensation", ), ), ( "numbness_date", models.DateField( blank=True, help_text= "If exact date not known, see SOP on how to estimate a date.", null=True, verbose_name="If yes, date", ), ), ( "foot_ulcers", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=25, verbose_name="Foot ulcers", ), ), ( "foot_ulcers_date", models.DateField( blank=True, help_text= "If exact date not known, see SOP on how to estimate a date.", null=True, verbose_name="If yes, date", ), ), ( "complications", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], default="No", max_length=25, verbose_name= "Are there any other major complications to report?", ), ), ( "complications_other", models.TextField(blank=True, help_text="Please include dates", null=True), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "history_user", models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "site", models.ForeignKey( blank=True, db_constraint=False, editable=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="sites.Site", ), ), ( "subject_visit", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="inte_subject.SubjectVisit", ), ), ], options={ "verbose_name": "historical Complications: Followup", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.AddField( model_name="clinicalreview", name="complications", field=models.CharField( choices=[("Yes", "Yes"), ("No", "No")], default="No", help_text="If Yes, complete the `Complications` CRF", max_length=15, verbose_name= "Since last seen, has the patient had any complications", ), preserve_default=False, ), migrations.AddField( model_name="historicalclinicalreview", name="complications", field=models.CharField( choices=[("Yes", "Yes"), ("No", "No")], default="No", help_text="If Yes, complete the `Complications` CRF", max_length=15, verbose_name= "Since last seen, has the patient had any complications", ), preserve_default=False, ), migrations.AddIndex( model_name="complicationsfollowup", index=models.Index( fields=["subject_visit", "site", "id"], name="inte_subjec_subject_c92cd4_idx", ), ), ]
class Migration(migrations.Migration): dependencies = [ ("sites", "0002_alter_domain_unique"), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ("edc_randomization", "0001_initial"), ] operations = [ migrations.CreateModel( name="HistoricalRandomizationList", fields=[ ( "revision", django_revision.revision_field.RevisionField( blank=True, editable=False, help_text= "System field. Git repository tag:branch:commit.", max_length=75, null=True, verbose_name="Revision", ), ), ( "created", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "modified", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "user_created", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user created", ), ), ( "user_modified", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user modified", ), ), ( "hostname_created", models.CharField( blank=True, default=_socket.gethostname, help_text="System field. (modified on create only)", max_length=60, ), ), ( "hostname_modified", django_audit_fields.fields.hostname_modification_field. HostnameModificationField( blank=True, help_text="System field. (modified on every save)", max_length=50, ), ), ("device_created", models.CharField(blank=True, max_length=10)), ("device_modified", models.CharField(blank=True, max_length=10)), ( "id", django_audit_fields.fields.uuid_auto_field.UUIDAutoField( blank=True, db_index=True, editable=False, help_text="System auto field. UUID primary key.", ), ), ( "assignment", django_crypto_fields.fields.encrypted_char_field. EncryptedCharField( blank=True, choices=[("active", "Active: "), ("placebo", "Placebo: ")], help_text=" (Encryption: RSA local)", max_length=71, ), ), ( "subject_identifier", models.CharField( db_index=True, max_length=50, null=True, verbose_name="Subject Identifier", ), ), ("sid", models.IntegerField(db_index=True)), ("site_name", models.CharField(max_length=100)), ( "allocation", django_crypto_fields.fields.encrypted_char_field. EncryptedCharField( blank=True, help_text=" (Encryption: RSA local)", max_length=71, null=True, verbose_name="Original integer allocation", ), ), ("allocated", models.BooleanField(default=False)), ("allocated_datetime", models.DateTimeField(null=True)), ("allocated_user", models.CharField(max_length=50, null=True)), ("verified", models.BooleanField(default=False)), ("verified_datetime", models.DateTimeField(null=True)), ("verified_user", models.CharField(max_length=50, null=True)), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "allocated_site", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="sites.Site", ), ), ( "history_user", models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ], options={ "verbose_name": "historical randomization list", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ) ]
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ("auth", "0011_update_proxy_permissions"), ("workstation_configs", "0001_squashed_0008_auto_20201001_0758"), ] operations = [ migrations.CreateModel( name="Workstation", fields=[ ( "id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ("created", models.DateTimeField(auto_now_add=True)), ("modified", models.DateTimeField(auto_now=True)), ( "title", models.CharField(max_length=255, verbose_name="title"), ), ( "description", models.TextField(blank=True, null=True, verbose_name="description"), ), ( "slug", django_extensions.db.fields.AutoSlugField( blank=True, editable=False, populate_from="title", verbose_name="slug", ), ), ( "logo", models.ImageField( storage=grandchallenge.core.storage.PublicS3Storage(), upload_to=grandchallenge.core.storage.get_logo_path, ), ), ( "editors_group", models.OneToOneField( editable=False, on_delete=django.db.models.deletion.CASCADE, related_name="editors_of_workstation", to="auth.group", ), ), ( "users_group", models.OneToOneField( editable=False, on_delete=django.db.models.deletion.CASCADE, related_name="users_of_workstation", to="auth.group", ), ), ( "config", models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to="workstation_configs.workstationconfig", ), ), ( "public", models.BooleanField( default=False, help_text= "If True, all logged in users can use this workstation, otherwise, only the users group can use this workstation.", ), ), ], options={ "abstract": False, "ordering": ("created", "title") }, ), migrations.CreateModel( name="WorkstationImage", fields=[ ( "id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ("created", models.DateTimeField(auto_now_add=True)), ("modified", models.DateTimeField(auto_now=True)), ( "staged_image_uuid", models.UUIDField(blank=True, editable=False, null=True), ), ( "image", models.FileField( blank=True, help_text= ".tar.xz archive of the container image produced from the command 'docker save IMAGE | xz -c > IMAGE.tar.xz'. See https://docs.docker.com/engine/reference/commandline/save/", storage=grandchallenge.core.storage.PrivateS3Storage(), upload_to=grandchallenge.components.models. docker_image_path, validators=[ grandchallenge.core.validators.ExtensionValidator( allowed_extensions=( ".tar", ".tar.gz", ".tar.xz", )) ], ), ), ( "image_sha256", models.CharField(editable=False, max_length=71), ), ( "ready", models.BooleanField( default=False, editable=False, help_text="Is this image ready to be used?", ), ), ("status", models.TextField(editable=False)), ("requires_gpu", models.BooleanField(default=False)), ( "requires_gpu_memory_gb", models.PositiveIntegerField(default=4), ), ("requires_memory_gb", models.PositiveIntegerField(default=4)), ( "requires_cpu_cores", models.DecimalField(decimal_places=2, default=Decimal("1.0"), max_digits=4), ), ( "http_port", models.PositiveIntegerField( default=8080, validators=[ django.core.validators.MaxValueValidator(65535) ], ), ), ( "websocket_port", models.PositiveIntegerField( default=4114, validators=[ django.core.validators.MaxValueValidator(65535) ], ), ), ( "initial_path", models.CharField( default="cirrus", max_length=256, validators=[ django.core.validators.RegexValidator( message= "This path is invalid, it must not start with a /", regex="^(?:[^/][^\\s]*)\\Z", ) ], ), ), ( "creator", models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL, ), ), ( "workstation", models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to="workstations.workstation", ), ), ], options={ "abstract": False, "ordering": ("created", "creator") }, ), migrations.CreateModel( name="HistoricalSession", fields=[ ( "id", models.UUIDField(db_index=True, default=uuid.uuid4, editable=False), ), ("created", models.DateTimeField(blank=True, editable=False)), ("modified", models.DateTimeField(blank=True, editable=False)), ( "status", models.PositiveSmallIntegerField( choices=[ (0, "Queued"), (1, "Started"), (2, "Running"), (3, "Failed"), (4, "Stopped"), ], default=0, ), ), ( "maximum_duration", models.DurationField(default=datetime.timedelta( seconds=600)), ), ("user_finished", models.BooleanField(default=False)), ( "history_id", models.AutoField(primary_key=True, serialize=False), ), ("history_date", models.DateTimeField()), ( "history_change_reason", models.CharField(max_length=100, null=True), ), ( "history_type", models.CharField( choices=[ ("+", "Created"), ("~", "Changed"), ("-", "Deleted"), ], max_length=1, ), ), ( "creator", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "history_user", models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "workstation_image", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="workstations.workstationimage", ), ), ( "region", models.CharField( choices=[ ("af-south-1", "Africa (Cape Town)"), ("ap-east-1", "Asia Pacific (Hong Kong)"), ("ap-northeast-1", "Asia Pacific (Tokyo)"), ("ap-northeast-2", "Asia Pacific (Seoul)"), ("ap-northeast-3", "Asia Pacific (Osaka-Local)"), ("ap-south-1", "Asia Pacific (Mumbai)"), ("ap-southeast-1", "Asia Pacific (Singapore)"), ("ap-southeast-2", "Asia Pacific (Sydney)"), ("ca-central-1", "Canada (Central)"), ("eu-central-1", "Europe (Frankfurt)"), ("eu-north-1", "Europe (Stockholm)"), ("eu-south-1", "Europe (Milan)"), ("eu-west-1", "Europe (Ireland)"), ("eu-west-2", "Europe (London)"), ("eu-west-3", "Europe (Paris)"), ("me-south-1", "Middle East (Bahrain)"), ("sa-east-1", "South America (São Paulo)"), ("us-east-1", "US East (N. Virginia)"), ("us-east-2", "US East (Ohio)"), ("us-west-1", "US West (N. California)"), ("us-west-2", "US West (Oregon)"), ("eu-nl-1", "Netherlands (Nijmegen)"), ("eu-nl-2", "Netherlands (Amsterdam)"), ], default="eu-nl-1", help_text="Which region is this session available in?", max_length=14, ), ), ], options={ "verbose_name": "historical session", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name="Session", fields=[ ( "id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ("created", models.DateTimeField(auto_now_add=True)), ("modified", models.DateTimeField(auto_now=True)), ( "status", models.PositiveSmallIntegerField( choices=[ (0, "Queued"), (1, "Started"), (2, "Running"), (3, "Failed"), (4, "Stopped"), ], default=0, ), ), ( "maximum_duration", models.DurationField(default=datetime.timedelta( seconds=600)), ), ("user_finished", models.BooleanField(default=False)), ( "creator", models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL, ), ), ( "workstation_image", models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to="workstations.workstationimage", ), ), ("logs", models.TextField(blank=True, editable=False)), ( "region", models.CharField( choices=[ ("af-south-1", "Africa (Cape Town)"), ("ap-east-1", "Asia Pacific (Hong Kong)"), ("ap-northeast-1", "Asia Pacific (Tokyo)"), ("ap-northeast-2", "Asia Pacific (Seoul)"), ("ap-northeast-3", "Asia Pacific (Osaka-Local)"), ("ap-south-1", "Asia Pacific (Mumbai)"), ("ap-southeast-1", "Asia Pacific (Singapore)"), ("ap-southeast-2", "Asia Pacific (Sydney)"), ("ca-central-1", "Canada (Central)"), ("eu-central-1", "Europe (Frankfurt)"), ("eu-north-1", "Europe (Stockholm)"), ("eu-south-1", "Europe (Milan)"), ("eu-west-1", "Europe (Ireland)"), ("eu-west-2", "Europe (London)"), ("eu-west-3", "Europe (Paris)"), ("me-south-1", "Middle East (Bahrain)"), ("sa-east-1", "South America (São Paulo)"), ("us-east-1", "US East (N. Virginia)"), ("us-east-2", "US East (Ohio)"), ("us-west-1", "US West (N. California)"), ("us-west-2", "US West (Oregon)"), ("eu-nl-1", "Netherlands (Nijmegen)"), ("eu-nl-2", "Netherlands (Amsterdam)"), ], default="eu-nl-1", help_text="Which region is this session available in?", max_length=14, ), ), ("ping_times", models.JSONField(default=None, null=True)), ], options={ "abstract": False, "ordering": ("created", "creator") }, ), ]
class Migration(migrations.Migration): dependencies = [ ("edc_action_item", "0024_auto_20191024_1000"), ("sites", "0002_alter_domain_unique"), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ("meta_subject", "0013_auto_20200119_0013"), ] operations = [ migrations.CreateModel( name="HistoricalBloodResultsLipid", fields=[ ( "revision", django_revision.revision_field.RevisionField( blank=True, editable=False, help_text= "System field. Git repository tag:branch:commit.", max_length=75, null=True, verbose_name="Revision", ), ), ( "created", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "modified", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "user_created", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user created", ), ), ( "user_modified", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user modified", ), ), ( "hostname_created", models.CharField( blank=True, default=_socket.gethostname, help_text="System field. (modified on create only)", max_length=60, ), ), ( "hostname_modified", django_audit_fields.fields.hostname_modification_field. HostnameModificationField( blank=True, help_text="System field. (modified on every save)", max_length=50, ), ), ("device_created", models.CharField(blank=True, max_length=10)), ("device_modified", models.CharField(blank=True, max_length=10)), ( "id", django_audit_fields.fields.uuid_auto_field.UUIDAutoField( blank=True, db_index=True, editable=False, help_text="System auto field. UUID primary key.", ), ), ("tracking_identifier", models.CharField(db_index=True, max_length=30)), ("action_identifier", models.CharField(db_index=True, max_length=50)), ( "parent_action_identifier", models.CharField( help_text= "action identifier that links to parent reference model instance.", max_length=30, null=True, ), ), ( "related_action_identifier", models.CharField( help_text= "action identifier that links to related reference model instance.", max_length=30, null=True, ), ), ("action_item_reason", models.TextField(editable=False, null=True)), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ( "consent_model", models.CharField(editable=False, max_length=50, null=True), ), ( "consent_version", models.CharField(editable=False, max_length=10, null=True), ), ( "report_datetime", models.DateTimeField( default=edc_utils.date.get_utcnow, help_text= "If reporting today, use today's date/time, otherwise use the date/time this information was reported.", validators=[ edc_protocol.validators. datetime_not_before_study_start, edc_model.validators.date.datetime_not_future, ], verbose_name="Report Date", ), ), ( "results_abnormal", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=25, verbose_name="Are any of the above results abnormal?", ), ), ( "results_reportable", models.CharField( choices=[ ("Yes", "Yes"), ("No", "No"), ("N/A", "Not applicable"), ], help_text= "If YES, this value will open Adverse Event Form.<br/><br/>Note: On Day 1 only abnormal bloods should not be reported as adverseevents.", max_length=25, verbose_name= "If any results are abnormal, are results within grade III or above?", ), ), ("summary", models.TextField(blank=True, null=True)), ( "lipid_assay_datetime", models.DateTimeField( blank=True, null=True, validators=[ edc_model.validators.date.datetime_not_future ], verbose_name="Result Report Date and Time", ), ), ( "ldl", models.DecimalField( blank=True, decimal_places=2, max_digits=8, null=True, validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(999), ], verbose_name="LDL", ), ), ( "ldl_units", models.CharField( blank=True, choices=[("mmol/L", "mmol/L")], max_length=15, null=True, verbose_name="units", ), ), ( "ldl_abnormal", models.CharField( blank=True, choices=[("Yes", "Yes"), ("No", "No")], max_length=25, null=True, verbose_name="abnormal", ), ), ( "ldl_reportable", models.CharField( blank=True, choices=[ ("N/A", "Not applicable"), ("3", "Yes, grade 3"), ("4", "Yes, grade 4"), ("No", "Not reportable"), ("Already reported", "Already reported"), ("present_at_baseline", "Present at baseline"), ], max_length=25, null=True, verbose_name="reportable", ), ), ( "hdl", models.DecimalField( blank=True, decimal_places=2, max_digits=8, null=True, validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(999), ], verbose_name="HDL", ), ), ( "hdl_units", models.CharField( blank=True, choices=[("mmol/L", "mmol/L")], max_length=15, null=True, verbose_name="units", ), ), ( "hdl_abnormal", models.CharField( blank=True, choices=[("Yes", "Yes"), ("No", "No")], max_length=25, null=True, verbose_name="abnormal", ), ), ( "hdl_reportable", models.CharField( blank=True, choices=[ ("N/A", "Not applicable"), ("3", "Yes, grade 3"), ("4", "Yes, grade 4"), ("No", "Not reportable"), ("Already reported", "Already reported"), ("present_at_baseline", "Present at baseline"), ], max_length=25, null=True, verbose_name="reportable", ), ), ( "trig", models.DecimalField( blank=True, decimal_places=2, max_digits=8, null=True, validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(999), ], verbose_name="Triglycerides", ), ), ( "trig_units", models.CharField( blank=True, choices=[("mmol/L", "mmol/L")], max_length=15, null=True, verbose_name="units", ), ), ( "trig_abnormal", models.CharField( blank=True, choices=[("Yes", "Yes"), ("No", "No")], max_length=25, null=True, verbose_name="abnormal", ), ), ( "trig_reportable", models.CharField( blank=True, choices=[ ("N/A", "Not applicable"), ("3", "Yes, grade 3"), ("4", "Yes, grade 4"), ("No", "Not reportable"), ("Already reported", "Already reported"), ("present_at_baseline", "Present at baseline"), ], max_length=25, null=True, verbose_name="reportable", ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "action_item", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="edc_action_item.ActionItem", ), ), ( "history_user", models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "lipid_requisition", models.ForeignKey( blank=True, db_constraint=False, help_text= "Start typing the requisition identifier or select one from this visit", null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="meta_subject.SubjectRequisition", verbose_name="Requisition", ), ), ( "parent_action_item", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="edc_action_item.ActionItem", ), ), ( "related_action_item", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="edc_action_item.ActionItem", ), ), ( "site", models.ForeignKey( blank=True, db_constraint=False, editable=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="sites.Site", ), ), ( "subject_visit", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="meta_subject.SubjectVisit", ), ), ], options={ "verbose_name": "historical Blood Result: LIPID", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name="BloodResultsLipid", fields=[ ( "revision", django_revision.revision_field.RevisionField( blank=True, editable=False, help_text= "System field. Git repository tag:branch:commit.", max_length=75, null=True, verbose_name="Revision", ), ), ( "created", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "modified", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "user_created", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user created", ), ), ( "user_modified", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user modified", ), ), ( "hostname_created", models.CharField( blank=True, default=_socket.gethostname, help_text="System field. (modified on create only)", max_length=60, ), ), ( "hostname_modified", django_audit_fields.fields.hostname_modification_field. HostnameModificationField( blank=True, help_text="System field. (modified on every save)", max_length=50, ), ), ("device_created", models.CharField(blank=True, max_length=10)), ("device_modified", models.CharField(blank=True, max_length=10)), ( "id", django_audit_fields.fields.uuid_auto_field.UUIDAutoField( blank=True, editable=False, help_text="System auto field. UUID primary key.", primary_key=True, serialize=False, ), ), ("tracking_identifier", models.CharField(max_length=30, unique=True)), ("action_identifier", models.CharField(max_length=50, unique=True)), ( "parent_action_identifier", models.CharField( help_text= "action identifier that links to parent reference model instance.", max_length=30, null=True, ), ), ( "related_action_identifier", models.CharField( help_text= "action identifier that links to related reference model instance.", max_length=30, null=True, ), ), ("action_item_reason", models.TextField(editable=False, null=True)), ( "consent_model", models.CharField(editable=False, max_length=50, null=True), ), ( "consent_version", models.CharField(editable=False, max_length=10, null=True), ), ( "report_datetime", models.DateTimeField( default=edc_utils.date.get_utcnow, help_text= "If reporting today, use today's date/time, otherwise use the date/time this information was reported.", validators=[ edc_protocol.validators. datetime_not_before_study_start, edc_model.validators.date.datetime_not_future, ], verbose_name="Report Date", ), ), ( "results_abnormal", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=25, verbose_name="Are any of the above results abnormal?", ), ), ( "results_reportable", models.CharField( choices=[ ("Yes", "Yes"), ("No", "No"), ("N/A", "Not applicable"), ], help_text= "If YES, this value will open Adverse Event Form.<br/><br/>Note: On Day 1 only abnormal bloods should not be reported as adverseevents.", max_length=25, verbose_name= "If any results are abnormal, are results within grade III or above?", ), ), ("summary", models.TextField(blank=True, null=True)), ( "lipid_assay_datetime", models.DateTimeField( blank=True, null=True, validators=[ edc_model.validators.date.datetime_not_future ], verbose_name="Result Report Date and Time", ), ), ( "ldl", models.DecimalField( blank=True, decimal_places=2, max_digits=8, null=True, validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(999), ], verbose_name="LDL", ), ), ( "ldl_units", models.CharField( blank=True, choices=[("mmol/L", "mmol/L")], max_length=15, null=True, verbose_name="units", ), ), ( "ldl_abnormal", models.CharField( blank=True, choices=[("Yes", "Yes"), ("No", "No")], max_length=25, null=True, verbose_name="abnormal", ), ), ( "ldl_reportable", models.CharField( blank=True, choices=[ ("N/A", "Not applicable"), ("3", "Yes, grade 3"), ("4", "Yes, grade 4"), ("No", "Not reportable"), ("Already reported", "Already reported"), ("present_at_baseline", "Present at baseline"), ], max_length=25, null=True, verbose_name="reportable", ), ), ( "hdl", models.DecimalField( blank=True, decimal_places=2, max_digits=8, null=True, validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(999), ], verbose_name="HDL", ), ), ( "hdl_units", models.CharField( blank=True, choices=[("mmol/L", "mmol/L")], max_length=15, null=True, verbose_name="units", ), ), ( "hdl_abnormal", models.CharField( blank=True, choices=[("Yes", "Yes"), ("No", "No")], max_length=25, null=True, verbose_name="abnormal", ), ), ( "hdl_reportable", models.CharField( blank=True, choices=[ ("N/A", "Not applicable"), ("3", "Yes, grade 3"), ("4", "Yes, grade 4"), ("No", "Not reportable"), ("Already reported", "Already reported"), ("present_at_baseline", "Present at baseline"), ], max_length=25, null=True, verbose_name="reportable", ), ), ( "trig", models.DecimalField( blank=True, decimal_places=2, max_digits=8, null=True, validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(999), ], verbose_name="Triglycerides", ), ), ( "trig_units", models.CharField( blank=True, choices=[("mmol/L", "mmol/L")], max_length=15, null=True, verbose_name="units", ), ), ( "trig_abnormal", models.CharField( blank=True, choices=[("Yes", "Yes"), ("No", "No")], max_length=25, null=True, verbose_name="abnormal", ), ), ( "trig_reportable", models.CharField( blank=True, choices=[ ("N/A", "Not applicable"), ("3", "Yes, grade 3"), ("4", "Yes, grade 4"), ("No", "Not reportable"), ("Already reported", "Already reported"), ("present_at_baseline", "Present at baseline"), ], max_length=25, null=True, verbose_name="reportable", ), ), ( "action_item", models.ForeignKey( null=True, on_delete=django.db.models.deletion.PROTECT, to="edc_action_item.ActionItem", ), ), ( "lipid_requisition", models.ForeignKey( blank=True, help_text= "Start typing the requisition identifier or select one from this visit", null=True, on_delete=django.db.models.deletion.PROTECT, related_name="lipid", to="meta_subject.SubjectRequisition", verbose_name="Requisition", ), ), ( "parent_action_item", models.ForeignKey( null=True, on_delete=django.db.models.deletion.PROTECT, related_name="+", to="edc_action_item.ActionItem", ), ), ( "related_action_item", models.ForeignKey( null=True, on_delete=django.db.models.deletion.PROTECT, related_name="+", to="edc_action_item.ActionItem", ), ), ( "site", models.ForeignKey( editable=False, null=True, on_delete=django.db.models.deletion.PROTECT, related_name="+", to="sites.Site", ), ), ( "subject_visit", models.OneToOneField( on_delete=django.db.models.deletion.PROTECT, to="meta_subject.SubjectVisit", ), ), ], options={ "verbose_name": "Blood Result: LIPID", "verbose_name_plural": "Blood Results: LIPID", "abstract": False, }, managers=[ ("on_site", edc_visit_tracking.managers.CurrentSiteManager()), ("objects", edc_visit_tracking.managers.CrfModelManager()), ], ), migrations.AddIndex( model_name="bloodresultslipid", index=models.Index( fields=["subject_visit", "site", "id"], name="meta_subjec_subject_c41a0b_idx", ), ), ]
class Migration(migrations.Migration): dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ('adserver', '0054_add_payout_status_dates'), ] operations = [ migrations.CreateModel( name='HistoricalPublisherPayout', fields=[ ('created', django_extensions.db.fields.CreationDateTimeField( auto_now_add=True, verbose_name='created')), ('modified', django_extensions.db.fields.ModificationDateTimeField( auto_now=True, verbose_name='modified')), ('id', models.UUIDField(db_index=True, default=uuid.uuid4, editable=False)), ('amount', models.DecimalField(decimal_places=2, default=0, max_digits=8, verbose_name='Amount')), ('date', models.DateTimeField(verbose_name='Payout date')), ('method', models.CharField(blank=True, choices=[ ('stripe', 'Stripe (Bank transfer, debit card)'), ('paypal', 'PayPal'), ('opencollective', 'Open Collective'), ('other', 'Other') ], default=None, max_length=100, null=True)), ('note', models.TextField( blank=True, help_text='A publisher-visible note about the payout', null=True, verbose_name='Note')), ('attachment', models.TextField( blank=True, help_text= 'A publisher-visible attachment such as a receipt', max_length=255, null=True, verbose_name='Attachment')), ('start_date', models.DateField(help_text='First day of paid period', null=True, verbose_name='Start Date')), ('end_date', models.DateField(help_text='Last day of paid period', null=True, verbose_name='End Date')), ('status', models.CharField(choices=[('pending', 'Pending'), ('hold', 'On hold'), ('emailed', 'Email sent'), ('paid', 'Payment sent')], default='pending', help_text='Status of this payout', max_length=50)), ('history_id', models.AutoField(primary_key=True, serialize=False)), ('history_date', models.DateTimeField()), ('history_change_reason', models.CharField(max_length=100, null=True)), ('history_type', models.CharField(choices=[('+', 'Created'), ('~', 'Changed'), ('-', 'Deleted')], max_length=1)), ('history_user', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL)), ('publisher', models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='adserver.Publisher')), ], options={ 'verbose_name': 'historical publisher payout', 'ordering': ('-history_date', '-history_id'), 'get_latest_by': 'history_date', }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name='HistoricalPublisherGroup', fields=[ ('id', models.IntegerField(auto_created=True, blank=True, db_index=True, verbose_name='ID')), ('created', django_extensions.db.fields.CreationDateTimeField( auto_now_add=True, verbose_name='created')), ('modified', django_extensions.db.fields.ModificationDateTimeField( auto_now=True, verbose_name='modified')), ('name', models.CharField(help_text='Visible to advertisers', max_length=200, verbose_name='Name')), ('slug', models.SlugField(max_length=200, verbose_name='Publisher group slug')), ('history_id', models.AutoField(primary_key=True, serialize=False)), ('history_date', models.DateTimeField()), ('history_change_reason', models.CharField(max_length=100, null=True)), ('history_type', models.CharField(choices=[('+', 'Created'), ('~', 'Changed'), ('-', 'Deleted')], max_length=1)), ('history_user', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name': 'historical publisher group', 'ordering': ('-history_date', '-history_id'), 'get_latest_by': 'history_date', }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name='HistoricalPublisher', fields=[ ('id', models.IntegerField(auto_created=True, blank=True, db_index=True, verbose_name='ID')), ('created', django_extensions.db.fields.CreationDateTimeField( auto_now_add=True, verbose_name='created')), ('modified', django_extensions.db.fields.ModificationDateTimeField( auto_now=True, verbose_name='modified')), ('name', models.CharField(max_length=200, verbose_name='Name')), ('slug', models.SlugField(max_length=200, verbose_name='Publisher Slug')), ('revenue_share_percentage', models.FloatField( default=70.0, help_text= 'Percentage of advertising revenue shared with this publisher', validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(100) ])), ('default_keywords', models.CharField( blank=True, default='', help_text= 'A CSV of default keywords for this property. Used for targeting.', max_length=250, verbose_name='Default keywords')), ('unauthed_ad_decisions', models.BooleanField( default=True, help_text= 'Whether this publisher allows unauthenticated ad decision API requests (eg. JSONP)' )), ('allow_paid_campaigns', models.BooleanField(default=False, verbose_name='Allow paid campaigns')), ('allow_affiliate_campaigns', models.BooleanField( default=False, verbose_name='Allow affiliate campaigns')), ('allow_community_campaigns', models.BooleanField( default=True, help_text= 'These are unpaid campaigns that support non-profit projects in our community. Shown only when no paid ads are available', verbose_name='Allow community campaigns')), ('allow_house_campaigns', models.BooleanField( default=True, help_text= 'These are ads for EthicalAds itself. Shown only when no paid ads are available.', verbose_name='Allow house campaigns')), ('payout_method', models.CharField(blank=True, choices=[ ('stripe', 'Stripe (Bank transfer, debit card)'), ('paypal', 'PayPal'), ('opencollective', 'Open Collective'), ('other', 'Other') ], default=None, max_length=100, null=True)), ('stripe_connected_account_id', models.CharField(blank=True, default=None, max_length=200, null=True, verbose_name='Stripe connected account ID')), ('open_collective_name', models.CharField(blank=True, default=None, max_length=200, null=True, verbose_name='Open Collective name')), ('paypal_email', models.EmailField(blank=True, default=None, max_length=254, null=True, verbose_name='PayPal email address')), ('record_views', models.BooleanField( default=False, help_text= 'Record each ad view from this publisher to the database') ), ('record_placements', models.BooleanField( default=False, help_text='Record placement impressions for this publisher' )), ('render_pixel', models.BooleanField( default=False, help_text= 'Render ethical-pixel in ad templates. This is needed for users not using the ad client.' )), ('sampled_ctr', models.FloatField( default=0.0, help_text= 'A periodically calculated CTR from a sample of ads on this publisher.' )), ('history_id', models.AutoField(primary_key=True, serialize=False)), ('history_date', models.DateTimeField()), ('history_change_reason', models.CharField(max_length=100, null=True)), ('history_type', models.CharField(choices=[('+', 'Created'), ('~', 'Changed'), ('-', 'Deleted')], max_length=1)), ('history_user', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name': 'historical publisher', 'ordering': ('-history_date', '-history_id'), 'get_latest_by': 'history_date', }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name='HistoricalFlight', fields=[ ('id', models.IntegerField(auto_created=True, blank=True, db_index=True, verbose_name='ID')), ('created', django_extensions.db.fields.CreationDateTimeField( auto_now_add=True, verbose_name='created')), ('modified', django_extensions.db.fields.ModificationDateTimeField( auto_now=True, verbose_name='modified')), ('name', models.CharField(max_length=200, verbose_name='Name')), ('slug', models.SlugField(max_length=200, verbose_name='Flight Slug')), ('start_date', models.DateField( db_index=True, default=datetime.date.today, help_text='This ad will not be shown before this date', verbose_name='Start Date')), ('end_date', models.DateField( default=adserver.models.default_flight_end_date, help_text= 'The target end date for the ad (it may go after this date)', verbose_name='End Date')), ('live', models.BooleanField(default=False, verbose_name='Live')), ('priority_multiplier', models.IntegerField( default=1, help_text= "Multiplies chance of showing this flight's ads [1,1000000]", validators=[ django.core.validators.MinValueValidator(1), django.core.validators.MaxValueValidator(1000000) ], verbose_name='Priority Multiplier')), ('cpc', models.DecimalField(decimal_places=2, default=0, max_digits=5, verbose_name='Cost Per Click')), ('sold_clicks', models.PositiveIntegerField(default=0, verbose_name='Sold Clicks')), ('cpm', models.DecimalField(decimal_places=2, default=0, max_digits=5, verbose_name='Cost Per 1k Impressions')), ('sold_impressions', models.PositiveIntegerField(default=0, verbose_name='Sold Impressions')), ('targeting_parameters', jsonfield.fields.JSONField( blank=True, null=True, validators=[ adserver.validators.TargetingParametersValidator() ], verbose_name='Targeting parameters')), ('total_views', models.PositiveIntegerField( default=0, help_text='Views across all ads in this flight')), ('total_clicks', models.PositiveIntegerField( default=0, help_text='Clicks across all ads in this flight')), ('history_id', models.AutoField(primary_key=True, serialize=False)), ('history_date', models.DateTimeField()), ('history_change_reason', models.CharField(max_length=100, null=True)), ('history_type', models.CharField(choices=[('+', 'Created'), ('~', 'Changed'), ('-', 'Deleted')], max_length=1)), ('campaign', models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='adserver.Campaign')), ('history_user', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name': 'historical flight', 'ordering': ('-history_date', '-history_id'), 'get_latest_by': 'history_date', }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name='HistoricalCampaign', fields=[ ('id', models.IntegerField(auto_created=True, blank=True, db_index=True, verbose_name='ID')), ('created', django_extensions.db.fields.CreationDateTimeField( auto_now_add=True, verbose_name='created')), ('modified', django_extensions.db.fields.ModificationDateTimeField( auto_now=True, verbose_name='modified')), ('name', models.CharField(max_length=200, verbose_name='Name')), ('slug', models.SlugField(max_length=200, verbose_name='Campaign Slug')), ('campaign_type', models.CharField( choices=[('paid', 'Paid'), ('affiliate', 'Affiliate'), ('community', 'Community'), ('house', 'House')], default='paid', help_text= 'Most campaigns are paid but ad server admins can configure other lower priority campaign types.', max_length=20, verbose_name='Campaign Type')), ('history_id', models.AutoField(primary_key=True, serialize=False)), ('history_date', models.DateTimeField()), ('history_change_reason', models.CharField(max_length=100, null=True)), ('history_type', models.CharField(choices=[('+', 'Created'), ('~', 'Changed'), ('-', 'Deleted')], max_length=1)), ('advertiser', models.ForeignKey( blank=True, db_constraint=False, help_text='The advertiser for this campaign.', null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='adserver.Advertiser')), ('history_user', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name': 'historical campaign', 'ordering': ('-history_date', '-history_id'), 'get_latest_by': 'history_date', }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name='HistoricalAdvertiser', fields=[ ('id', models.IntegerField(auto_created=True, blank=True, db_index=True, verbose_name='ID')), ('created', django_extensions.db.fields.CreationDateTimeField( auto_now_add=True, verbose_name='created')), ('modified', django_extensions.db.fields.ModificationDateTimeField( auto_now=True, verbose_name='modified')), ('name', models.CharField(max_length=200, verbose_name='Name')), ('slug', models.SlugField(max_length=200, verbose_name='Advertiser Slug')), ('stripe_customer_id', models.CharField(blank=True, default=None, max_length=200, null=True, verbose_name='Stripe Customer ID')), ('history_id', models.AutoField(primary_key=True, serialize=False)), ('history_date', models.DateTimeField()), ('history_change_reason', models.CharField(max_length=100, null=True)), ('history_type', models.CharField(choices=[('+', 'Created'), ('~', 'Changed'), ('-', 'Deleted')], max_length=1)), ('history_user', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name': 'historical advertiser', 'ordering': ('-history_date', '-history_id'), 'get_latest_by': 'history_date', }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name='HistoricalAdvertisement', fields=[ ('id', models.IntegerField(auto_created=True, blank=True, db_index=True, verbose_name='ID')), ('created', django_extensions.db.fields.CreationDateTimeField( auto_now_add=True, verbose_name='created')), ('modified', django_extensions.db.fields.ModificationDateTimeField( auto_now=True, verbose_name='modified')), ('name', models.CharField(max_length=200, verbose_name='Name')), ('slug', models.SlugField(max_length=200, verbose_name='Slug')), ('text', models.TextField( blank=True, help_text= 'For most ad types, the text should be less than 100 characters.', verbose_name='Text')), ('headline', models.CharField( blank=True, help_text= 'An optional headline at the beginning of the ad usually displayed in bold', max_length=200, null=True)), ('content', models.TextField( blank=True, help_text= 'For most ad types, the combined length of the headline, body, and call to action should be less than 100 characters.', null=True)), ('cta', models.CharField( blank=True, help_text= 'An optional call to action displayed at the end of the ad usually in bold', max_length=200, null=True, verbose_name='Call to action')), ('link', models.URLField( help_text= "URL of your landing page. This may contain UTM parameters so you know the traffic came from us. The publisher will be added in the 'ea-publisher' query parameter.", max_length=255, verbose_name='Link URL')), ('image', models.TextField(blank=True, help_text='Sized according to the ad type', max_length=255, null=True, verbose_name='Image')), ('live', models.BooleanField(default=False, verbose_name='Live')), ('history_id', models.AutoField(primary_key=True, serialize=False)), ('history_date', models.DateTimeField()), ('history_change_reason', models.CharField(max_length=100, null=True)), ('history_type', models.CharField(choices=[('+', 'Created'), ('~', 'Changed'), ('-', 'Deleted')], max_length=1)), ('ad_type', models.ForeignKey( blank=True, db_constraint=False, default=None, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='adserver.AdType')), ('flight', models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='adserver.Flight')), ('history_user', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name': 'historical advertisement', 'ordering': ('-history_date', '-history_id'), 'get_latest_by': 'history_date', }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name='HistoricalAdType', fields=[ ('id', models.IntegerField(auto_created=True, blank=True, db_index=True, verbose_name='ID')), ('created', django_extensions.db.fields.CreationDateTimeField( auto_now_add=True, verbose_name='created')), ('modified', django_extensions.db.fields.ModificationDateTimeField( auto_now=True, verbose_name='modified')), ('name', models.CharField(max_length=200, verbose_name='Name')), ('slug', models.SlugField(max_length=200, verbose_name='Slug')), ('has_image', models.BooleanField(default=True, verbose_name='Has image?')), ('image_width', models.PositiveIntegerField(blank=True, null=True)), ('image_height', models.PositiveIntegerField(blank=True, null=True)), ('has_text', models.BooleanField(default=True, verbose_name='Has text?')), ('max_text_length', models.PositiveIntegerField( blank=True, help_text='Max length does not include HTML tags', null=True)), ('allowed_html_tags', models.CharField( blank=True, default='a b strong i em code', help_text='Space separated list of allowed HTML tag names', max_length=255, verbose_name='Allowed HTML tags')), ('default_enabled', models.BooleanField( default=False, help_text= 'Whether this ad type should default to checked when advertisers are creating ads' )), ('template', models.TextField( blank=True, help_text= 'Override the template for rendering this ad type', null=True, verbose_name='Ad template')), ('description', models.CharField( blank=True, default='', help_text= 'A short description of the ad type to guide advertisers.', max_length=255)), ('order', models.PositiveSmallIntegerField(default=0)), ('deprecated', models.BooleanField( default=False, help_text= 'Users cannot select deprecated ad types unless an ad is already that type.' )), ('history_id', models.AutoField(primary_key=True, serialize=False)), ('history_date', models.DateTimeField()), ('history_change_reason', models.CharField(max_length=100, null=True)), ('history_type', models.CharField(choices=[('+', 'Created'), ('~', 'Changed'), ('-', 'Deleted')], max_length=1)), ('history_user', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name': 'historical ad type', 'ordering': ('-history_date', '-history_id'), 'get_latest_by': 'history_date', }, bases=(simple_history.models.HistoricalChanges, models.Model), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name="Identifier", fields=[ ( "id", models.AutoField( auto_created=True, primary_key=True, serialize=False, verbose_name="ID", ), ), ("identifier", models.CharField(max_length=36)), ], ), migrations.CreateModel( name="IdentifierSchema", fields=[ ( "id", models.AutoField( auto_created=True, primary_key=True, serialize=False, verbose_name="ID", ), ), ( "schema_type", enumfields.fields.EnumField( enum=apartment.enums.IdentifierSchemaType, max_length=10, unique=True, ), ), ], ), migrations.CreateModel( name="Project", fields=[ ( "id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ("identifiers", models.ManyToManyField(to="apartment.Identifier")), ], ), migrations.AddField( model_name="identifier", name="schema", field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to="apartment.IdentifierSchema", ), ), migrations.CreateModel( name="HistoricalApartment", fields=[ ( "id", models.UUIDField(db_index=True, default=uuid.uuid4, editable=False), ), ( "is_available", models.BooleanField(default=True, verbose_name="is available"), ), ("history_id", models.AutoField(primary_key=True, serialize=False)), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "history_user", models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "project", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="apartment.Project", ), ), ], options={ "verbose_name": "historical apartment", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name="Apartment", fields=[ ( "id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ( "is_available", models.BooleanField(default=True, verbose_name="is available"), ), ("identifiers", models.ManyToManyField(to="apartment.Identifier")), ( "project", models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to="apartment.Project", ), ), ], ), migrations.AlterUniqueTogether( name="identifier", unique_together={("schema", "identifier")}, ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('users', '0001_initial'), ('posts', '0001_initial'), ] operations = [ migrations.CreateModel( name='Comment', fields=[ ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), ('text', models.TextField()), ('html', models.TextField(null=True)), ('url', models.URLField(null=True)), ('metadata', django.contrib.postgres.fields.jsonb.JSONField(null=True)), ('ipaddress', models.GenericIPAddressField()), ('useragent', models.CharField(max_length=512, null=True)), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('upvotes', models.IntegerField(db_index=True, default=0)), ('is_visible', models.BooleanField(default=True)), ('is_deleted', models.BooleanField(default=False)), ('is_pinned', models.BooleanField(default=False)), ('author', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='comments', to='users.User')), ('post', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='comments', to='posts.Post')), ('reply_to', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='replies', to='comments.Comment')), ], options={ 'db_table': 'comments', 'ordering': ['created_at'], }, ), migrations.CreateModel( name='HistoricalComment', fields=[ ('id', models.UUIDField(db_index=True, default=uuid.uuid4, editable=False)), ('text', models.TextField()), ('url', models.URLField(null=True)), ('metadata', django.contrib.postgres.fields.jsonb.JSONField(null=True)), ('is_visible', models.BooleanField(default=True)), ('is_deleted', models.BooleanField(default=False)), ('is_pinned', models.BooleanField(default=False)), ('history_id', models.AutoField(primary_key=True, serialize=False)), ('history_date', models.DateTimeField()), ('history_change_reason', models.CharField(max_length=100, null=True)), ('history_type', models.CharField(choices=[('+', 'Created'), ('~', 'Changed'), ('-', 'Deleted')], max_length=1)), ('author', models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='users.User')), ('history_user', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='users.User')), ('post', models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='posts.Post')), ('reply_to', models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='comments.Comment')), ], options={ 'verbose_name': 'historical comment', 'db_table': 'comments_history', 'ordering': ('-history_date', '-history_id'), 'get_latest_by': 'history_date', }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name='CommentVote', fields=[ ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), ('created_at', models.DateTimeField(auto_now_add=True)), ('comment', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='votes', to='comments.Comment')), ('post', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='comment_votes', to='posts.Post')), ('user', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='comment_votes', to='users.User')), ], options={ 'db_table': 'comment_votes', 'unique_together': {('user', 'comment')}, }, ), ]
class Migration(migrations.Migration): dependencies = [ ("metadata", "0013_barriertag"), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ("barriers", "0064_auto_20200623_1522"), ] operations = [ migrations.CreateModel( name="PublicBarrier", fields=[ ( "id", models.AutoField( auto_created=True, primary_key=True, serialize=False, verbose_name="ID", ), ), ( "created_on", models.DateTimeField(auto_now_add=True, db_index=True, null=True), ), ("modified_on", models.DateTimeField(auto_now=True, null=True)), ("archived", models.BooleanField(default=False)), ("archived_on", models.DateTimeField(blank=True, null=True)), ("archived_reason", models.TextField(blank=True, null=True)), ("unarchived_reason", models.TextField(blank=True, null=True)), ("unarchived_on", models.DateTimeField(blank=True, null=True)), ("title", models.CharField(max_length=255, null=True)), ("summary", models.TextField(null=True)), ( "status", models.PositiveIntegerField( choices=[ (0, "Unfinished"), (1, "Open: Pending action"), (2, "Open: In progress"), (5, "Dormant"), (6, "Archived"), (7, "Unknown"), (3, "Resolved: In part"), (4, "Resolved: In full"), ], default=0, ), ), ("country", models.UUIDField()), ( "sectors", django.contrib.postgres.fields.ArrayField( base_field=models.UUIDField(), blank=True, default=list, size=None, ), ), ( "archived_by", models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "barrier", models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to="barriers.BarrierInstance", ), ), ( "categories", models.ManyToManyField(related_name="public_barriers", to="metadata.Category"), ), ( "created_by", models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "modified_by", models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "unarchived_by", models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ], options={ "abstract": False, }, ), migrations.CreateModel( name="HistoricalPublicBarrier", fields=[ ( "id", models.IntegerField(auto_created=True, blank=True, db_index=True, verbose_name="ID"), ), ( "created_on", models.DateTimeField(blank=True, db_index=True, editable=False, null=True), ), ( "modified_on", models.DateTimeField(blank=True, editable=False, null=True), ), ("archived", models.BooleanField(default=False)), ("archived_on", models.DateTimeField(blank=True, null=True)), ("archived_reason", models.TextField(blank=True, null=True)), ("unarchived_reason", models.TextField(blank=True, null=True)), ("unarchived_on", models.DateTimeField(blank=True, null=True)), ("title", models.CharField(max_length=255, null=True)), ("summary", models.TextField(null=True)), ( "status", models.PositiveIntegerField( choices=[ (0, "Unfinished"), (1, "Open: Pending action"), (2, "Open: In progress"), (5, "Dormant"), (6, "Archived"), (7, "Unknown"), (3, "Resolved: In part"), (4, "Resolved: In full"), ], default=0, ), ), ("country", models.UUIDField()), ( "sectors", django.contrib.postgres.fields.ArrayField( base_field=models.UUIDField(), blank=True, default=list, size=None, ), ), ("history_id", models.AutoField(primary_key=True, serialize=False)), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "archived_by", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "barrier", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="barriers.BarrierInstance", ), ), ( "created_by", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "history_user", models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "modified_by", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "unarchived_by", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ], options={ "verbose_name": "historical public barrier", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), ]
class Migration(migrations.Migration): dependencies = [ ("sites", "0002_alter_domain_unique"), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ("meta_subject", "0011_auto_20200118_1854"), ] operations = [ migrations.CreateModel( name="HistoricalMalariaTest", fields=[ ( "revision", django_revision.revision_field.RevisionField( blank=True, editable=False, help_text= "System field. Git repository tag:branch:commit.", max_length=75, null=True, verbose_name="Revision", ), ), ( "created", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "modified", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "user_created", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user created", ), ), ( "user_modified", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user modified", ), ), ( "hostname_created", models.CharField( blank=True, default=_socket.gethostname, help_text="System field. (modified on create only)", max_length=60, ), ), ( "hostname_modified", django_audit_fields.fields.hostname_modification_field. HostnameModificationField( blank=True, help_text="System field. (modified on every save)", max_length=50, ), ), ("device_created", models.CharField(blank=True, max_length=10)), ("device_modified", models.CharField(blank=True, max_length=10)), ( "id", django_audit_fields.fields.uuid_auto_field.UUIDAutoField( blank=True, db_index=True, editable=False, help_text="System auto field. UUID primary key.", ), ), ( "consent_model", models.CharField(editable=False, max_length=50, null=True), ), ( "consent_version", models.CharField(editable=False, max_length=10, null=True), ), ( "report_datetime", models.DateTimeField( default=edc_utils.date.get_utcnow, help_text= "If reporting today, use today's date/time, otherwise use the date/time this information was reported.", validators=[ edc_protocol.validators. datetime_not_before_study_start, edc_model.validators.date.datetime_not_future, ], verbose_name="Report Date", ), ), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ( "performed", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Was the malaria rapid test performed?", ), ), ( "not_performed_reason", models.CharField( blank=True, max_length=150, null=True, verbose_name="If NO, provide reason", ), ), ( "diagnostic_type", models.CharField( choices=[ ("rapid_test", "Rapid test"), ("microscopy", "Microscopy"), ], max_length=15, verbose_name="Diagnostic performed by ...", ), ), ( "result", models.CharField( choices=[ ("present", "Present"), ("absent", "Absent"), ("N/A", "Not Applicable"), ], default="N/A", max_length=25, verbose_name="Result", ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "history_user", models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "site", models.ForeignKey( blank=True, db_constraint=False, editable=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="sites.Site", ), ), ( "subject_visit", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="meta_subject.SubjectVisit", ), ), ], options={ "verbose_name": "historical Malaria Test", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name="MalariaTest", fields=[ ( "revision", django_revision.revision_field.RevisionField( blank=True, editable=False, help_text= "System field. Git repository tag:branch:commit.", max_length=75, null=True, verbose_name="Revision", ), ), ( "created", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "modified", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "user_created", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user created", ), ), ( "user_modified", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user modified", ), ), ( "hostname_created", models.CharField( blank=True, default=_socket.gethostname, help_text="System field. (modified on create only)", max_length=60, ), ), ( "hostname_modified", django_audit_fields.fields.hostname_modification_field. HostnameModificationField( blank=True, help_text="System field. (modified on every save)", max_length=50, ), ), ("device_created", models.CharField(blank=True, max_length=10)), ("device_modified", models.CharField(blank=True, max_length=10)), ( "id", django_audit_fields.fields.uuid_auto_field.UUIDAutoField( blank=True, editable=False, help_text="System auto field. UUID primary key.", primary_key=True, serialize=False, ), ), ( "consent_model", models.CharField(editable=False, max_length=50, null=True), ), ( "consent_version", models.CharField(editable=False, max_length=10, null=True), ), ( "report_datetime", models.DateTimeField( default=edc_utils.date.get_utcnow, help_text= "If reporting today, use today's date/time, otherwise use the date/time this information was reported.", validators=[ edc_protocol.validators. datetime_not_before_study_start, edc_model.validators.date.datetime_not_future, ], verbose_name="Report Date", ), ), ( "performed", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Was the malaria rapid test performed?", ), ), ( "not_performed_reason", models.CharField( blank=True, max_length=150, null=True, verbose_name="If NO, provide reason", ), ), ( "diagnostic_type", models.CharField( choices=[ ("rapid_test", "Rapid test"), ("microscopy", "Microscopy"), ], max_length=15, verbose_name="Diagnostic performed by ...", ), ), ( "result", models.CharField( choices=[ ("present", "Present"), ("absent", "Absent"), ("N/A", "Not Applicable"), ], default="N/A", max_length=25, verbose_name="Result", ), ), ( "site", models.ForeignKey( editable=False, null=True, on_delete=django.db.models.deletion.PROTECT, related_name="+", to="sites.Site", ), ), ( "subject_visit", models.OneToOneField( on_delete=django.db.models.deletion.PROTECT, to="meta_subject.SubjectVisit", ), ), ], options={ "verbose_name": "Malaria Test", "abstract": False, }, managers=[ ("on_site", django.contrib.sites.managers.CurrentSiteManager()), ("objects", edc_visit_tracking.managers.CrfModelManager()), ], ), migrations.RemoveField( model_name="malariarapidtest", name="site", ), migrations.RemoveField( model_name="malariarapidtest", name="subject_visit", ), migrations.DeleteModel(name="HistoricalMalariaRapidTest", ), migrations.DeleteModel(name="MalariaRapidTest", ), migrations.AddIndex( model_name="malariatest", index=models.Index( fields=["subject_visit", "site", "id"], name="meta_subjec_subject_038dbe_idx", ), ), ]
class Migration(migrations.Migration): dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ("reader_studies", "0014_readerstudy_case_text"), ] operations = [ migrations.AddField( model_name="readerstudy", name="allow_answer_modification", field=models.BooleanField( default=False, help_text= "If true, readers are allowed to modify their answers for a case by navigating back to previous cases. 'allow_case_browsing' must be checked with this as well.", ), ), migrations.AddField( model_name="readerstudy", name="allow_case_navigation", field=models.BooleanField( default=False, help_text= "If true, readers are allowed to navigate back and forth between cases in this reader study.", ), ), migrations.CreateModel( name="HistoricalAnswer", fields=[ ( "id", models.UUIDField(db_index=True, default=uuid.uuid4, editable=False), ), ("answer", django.contrib.postgres.fields.jsonb.JSONField()), ( "history_id", models.AutoField(primary_key=True, serialize=False), ), ("history_date", models.DateTimeField()), ( "history_change_reason", models.CharField(max_length=100, null=True), ), ( "history_type", models.CharField( choices=[ ("+", "Created"), ("~", "Changed"), ("-", "Deleted"), ], max_length=1, ), ), ( "history_user", models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ], options={ "verbose_name": "historical answer", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), ]
class Migration(migrations.Migration): dependencies = [ ("sites", "0002_alter_domain_unique"), ("meta_lists", "0010_auto_20200617_1738"), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ("meta_subject", "0050_auto_20200614_1934"), ] operations = [ migrations.CreateModel( name="HistoricalSubjectVisitMissed", fields=[ ( "revision", django_revision.revision_field.RevisionField( blank=True, editable=False, help_text= "System field. Git repository tag:branch:commit.", max_length=75, null=True, verbose_name="Revision", ), ), ( "created", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "modified", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "user_created", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user created", ), ), ( "user_modified", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user modified", ), ), ( "hostname_created", models.CharField( blank=True, default=_socket.gethostname, help_text="System field. (modified on create only)", max_length=60, ), ), ( "hostname_modified", django_audit_fields.fields.hostname_modification_field. HostnameModificationField( blank=True, help_text="System field. (modified on every save)", max_length=50, ), ), ("device_created", models.CharField(blank=True, max_length=10)), ("device_modified", models.CharField(blank=True, max_length=10)), ( "id", django_audit_fields.fields.uuid_auto_field.UUIDAutoField( blank=True, db_index=True, editable=False, help_text="System auto field. UUID primary key.", ), ), ( "report_datetime", models.DateTimeField( default=edc_utils.date.get_utcnow, help_text= "If reporting today, use today's date/time, otherwise use the date/time this information was reported.", validators=[ edc_protocol.validators. datetime_not_before_study_start, edc_model.validators.date.datetime_not_future, ], verbose_name="Report Date", ), ), ( "survival_status", models.CharField( choices=[ ("alive", "Alive"), ("dead", "Deceased"), ("unknown", "Unknown"), ], max_length=25, verbose_name="Survival status", ), ), ( "contact_attempted", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], help_text="Not including pre-appointment reminders", max_length=25, verbose_name= "Were any attempts made to contact the participant since the expected appointment date?", ), ), ( "contact_attempts_count", models.IntegerField( blank=True, help_text="Not including pre-appointment reminders", null=True, validators=[ django.core.validators.MinValueValidator(1) ], verbose_name= "Number of attempts made to contact participantsince the expected appointment date", ), ), ( "contact_attempts_explained", models.TextField( blank=True, null=True, verbose_name= "If contact not made and less than 3 attempts, please explain", ), ), ( "contact_last_date", models.DateField( blank=True, default=edc_utils.date.get_utcnow, null=True, validators=[ edc_model.validators.date.date_not_future, edc_protocol.validators. date_not_before_study_start, ], verbose_name="Date of last telephone contact/attempt", ), ), ( "contact_made", models.CharField( choices=[ ("Yes", "Yes"), ("No", "No"), ("N/A", "Not applicable"), ], default="N/A", max_length=25, verbose_name= "Was contact finally made with the participant?", ), ), ( "missed_reasons_other", edc_model.models.fields.other_charfield.OtherCharField( blank=True, max_length=35, null=True, verbose_name="If other, please specify ...", ), ), ( "comment", models.TextField( blank=True, null=True, verbose_name="Please provide further details, if any", ), ), ( "consent_model", models.CharField(editable=False, max_length=50, null=True), ), ( "consent_version", models.CharField(editable=False, max_length=10, null=True), ), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "history_user", models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "site", models.ForeignKey( blank=True, db_constraint=False, editable=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="sites.Site", ), ), ( "subject_visit", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="meta_subject.SubjectVisit", ), ), ], options={ "verbose_name": "historical Missed Visit Report", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name="SubjectVisitMissed", fields=[ ( "revision", django_revision.revision_field.RevisionField( blank=True, editable=False, help_text= "System field. Git repository tag:branch:commit.", max_length=75, null=True, verbose_name="Revision", ), ), ( "created", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "modified", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "user_created", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user created", ), ), ( "user_modified", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user modified", ), ), ( "hostname_created", models.CharField( blank=True, default=_socket.gethostname, help_text="System field. (modified on create only)", max_length=60, ), ), ( "hostname_modified", django_audit_fields.fields.hostname_modification_field. HostnameModificationField( blank=True, help_text="System field. (modified on every save)", max_length=50, ), ), ("device_created", models.CharField(blank=True, max_length=10)), ("device_modified", models.CharField(blank=True, max_length=10)), ( "id", django_audit_fields.fields.uuid_auto_field.UUIDAutoField( blank=True, editable=False, help_text="System auto field. UUID primary key.", primary_key=True, serialize=False, ), ), ( "report_datetime", models.DateTimeField( default=edc_utils.date.get_utcnow, help_text= "If reporting today, use today's date/time, otherwise use the date/time this information was reported.", validators=[ edc_protocol.validators. datetime_not_before_study_start, edc_model.validators.date.datetime_not_future, ], verbose_name="Report Date", ), ), ( "survival_status", models.CharField( choices=[ ("alive", "Alive"), ("dead", "Deceased"), ("unknown", "Unknown"), ], max_length=25, verbose_name="Survival status", ), ), ( "contact_attempted", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], help_text="Not including pre-appointment reminders", max_length=25, verbose_name= "Were any attempts made to contact the participant since the expected appointment date?", ), ), ( "contact_attempts_count", models.IntegerField( blank=True, help_text="Not including pre-appointment reminders", null=True, validators=[ django.core.validators.MinValueValidator(1) ], verbose_name= "Number of attempts made to contact participantsince the expected appointment date", ), ), ( "contact_attempts_explained", models.TextField( blank=True, null=True, verbose_name= "If contact not made and less than 3 attempts, please explain", ), ), ( "contact_last_date", models.DateField( blank=True, default=edc_utils.date.get_utcnow, null=True, validators=[ edc_model.validators.date.date_not_future, edc_protocol.validators. date_not_before_study_start, ], verbose_name="Date of last telephone contact/attempt", ), ), ( "contact_made", models.CharField( choices=[ ("Yes", "Yes"), ("No", "No"), ("N/A", "Not applicable"), ], default="N/A", max_length=25, verbose_name= "Was contact finally made with the participant?", ), ), ( "missed_reasons_other", edc_model.models.fields.other_charfield.OtherCharField( blank=True, max_length=35, null=True, verbose_name="If other, please specify ...", ), ), ( "comment", models.TextField( blank=True, null=True, verbose_name="Please provide further details, if any", ), ), ( "consent_model", models.CharField(editable=False, max_length=50, null=True), ), ( "consent_version", models.CharField(editable=False, max_length=10, null=True), ), ( "missed_reasons", models.ManyToManyField( blank=True, related_name="_subjectvisitmissed_missed_reasons_+", to="meta_lists.SubjectVisitMissedReasons", ), ), ( "site", models.ForeignKey( editable=False, null=True, on_delete=django.db.models.deletion.PROTECT, related_name="+", to="sites.Site", ), ), ( "subject_visit", models.OneToOneField( on_delete=django.db.models.deletion.PROTECT, to="meta_subject.SubjectVisit", ), ), ], options={ "verbose_name": "Missed Visit Report", "verbose_name_plural": "Missed Visit Report", "ordering": ("-modified", "-created"), "get_latest_by": "modified", "abstract": False, "default_permissions": ( "add", "change", "delete", "view", "export", "import", ), }, managers=[ ("on_site", django.contrib.sites.managers.CurrentSiteManager()), ("objects", edc_visit_tracking.managers.CrfModelManager()), ], ), migrations.RemoveField( model_name="missedvisit", name="missed_reasons", ), migrations.RemoveField( model_name="missedvisit", name="site", ), migrations.RemoveField( model_name="missedvisit", name="subject_visit", ), migrations.DeleteModel(name="HistoricalMissedVisit", ), migrations.DeleteModel(name="MissedVisit", ), migrations.AddIndex( model_name="subjectvisitmissed", index=models.Index( fields=["subject_visit", "site", "id"], name="meta_subjec_subject_89b092_idx", ), ), ]
class Migration(migrations.Migration): dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ('enterprise', '0099_auto_20200702_1537'), ] operations = [ migrations.CreateModel( name='LicensedEnterpriseCourseEnrollment', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created', model_utils.fields.AutoCreatedField( default=django.utils.timezone.now, editable=False, verbose_name='created')), ('modified', model_utils.fields.AutoLastModifiedField( default=django.utils.timezone.now, editable=False, verbose_name='modified')), ('license_uuid', models.UUIDField(editable=False)), ('enterprise_course_enrollment', models.OneToOneField( help_text= 'The course enrollment the associated license is for.', on_delete=django.db.models.deletion.CASCADE, related_name='licensed_with', to='enterprise.EnterpriseCourseEnrollment')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='HistoricalLicensedEnterpriseCourseEnrollment', fields=[ ('id', models.IntegerField(auto_created=True, blank=True, db_index=True, verbose_name='ID')), ('created', model_utils.fields.AutoCreatedField( default=django.utils.timezone.now, editable=False, verbose_name='created')), ('modified', model_utils.fields.AutoLastModifiedField( default=django.utils.timezone.now, editable=False, verbose_name='modified')), ('license_uuid', models.UUIDField(editable=False)), ('history_id', models.AutoField(primary_key=True, serialize=False)), ('history_date', models.DateTimeField()), ('history_change_reason', models.CharField(max_length=100, null=True)), ('history_type', models.CharField(choices=[('+', 'Created'), ('~', 'Changed'), ('-', 'Deleted')], max_length=1)), ('enterprise_course_enrollment', models.ForeignKey( blank=True, db_constraint=False, help_text= 'The course enrollment the associated license is for.', null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='enterprise.EnterpriseCourseEnrollment')), ('history_user', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name': 'historical licensed enterprise course enrollment', 'ordering': ('-history_date', '-history_id'), 'get_latest_by': 'history_date', }, bases=(simple_history.models.HistoricalChanges, models.Model), ), ]
class Migration(migrations.Migration): dependencies = [("caluma_form", "0024_auto_20190919_1244")] operations = [ migrations.CreateModel( name="HistoricalDynamicOption", fields=[ ("created_at", models.DateTimeField(blank=True, editable=False)), ("modified_at", models.DateTimeField(blank=True, editable=False)), ( "created_by_user", models.CharField(blank=True, max_length=150, null=True), ), ( "created_by_group", models.CharField( blank=True, db_index=True, max_length=150, null=True ), ), ("history_user_id", models.CharField(max_length=150, null=True)), ( "id", models.UUIDField(db_index=True, default=uuid.uuid4, editable=False), ), ("value", models.CharField(blank=True, max_length=255, null=True)), ("label", localized_fields.fields.field.LocalizedField(required=[])), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "document", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_form.Document", ), ), ( "question", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_form.Question", ), ), ], options={ "verbose_name": "historical dynamic option", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name="DynamicOption", fields=[ ("created_at", models.DateTimeField(auto_now_add=True)), ("modified_at", models.DateTimeField(auto_now=True)), ( "created_by_user", models.CharField(blank=True, max_length=150, null=True), ), ( "created_by_group", models.CharField( blank=True, db_index=True, max_length=150, null=True ), ), ( "id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ("value", models.CharField(blank=True, max_length=255, null=True)), ("label", localized_fields.fields.field.LocalizedField(required=[])), ( "document", models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to="caluma_form.Document", ), ), ( "question", models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to="caluma_form.Question", ), ), ], options={"abstract": False}, ), ]
class Migration(migrations.Migration): dependencies = [ ("sites", "0002_alter_domain_unique"), ("inte_lists", "0006_auto_20200812_0317"), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ("inte_subject", "0035_auto_20200821_0009"), ] operations = [ migrations.CreateModel( name="ClinicalReview", fields=[ ( "revision", django_revision.revision_field.RevisionField( blank=True, editable=False, help_text="System field. Git repository tag:branch:commit.", max_length=75, null=True, verbose_name="Revision", ), ), ( "created", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin.utcnow, ), ), ( "modified", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin.utcnow, ), ), ( "user_created", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user created", ), ), ( "user_modified", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user modified", ), ), ( "hostname_created", models.CharField( blank=True, default=_socket.gethostname, help_text="System field. (modified on create only)", max_length=60, ), ), ( "hostname_modified", django_audit_fields.fields.hostname_modification_field.HostnameModificationField( blank=True, help_text="System field. (modified on every save)", max_length=50, ), ), ("device_created", models.CharField(blank=True, max_length=10)), ("device_modified", models.CharField(blank=True, max_length=10)), ( "id", django_audit_fields.fields.uuid_auto_field.UUIDAutoField( blank=True, editable=False, help_text="System auto field. UUID primary key.", primary_key=True, serialize=False, ), ), ( "report_datetime", models.DateTimeField( default=edc_utils.date.get_utcnow, help_text="If reporting today, use today's date/time, otherwise use the date/time this information was reported.", validators=[ edc_protocol.validators.datetime_not_before_study_start, edc_model.models.validators.date.datetime_not_future, ], verbose_name="Report Date", ), ), ( "consent_model", models.CharField(editable=False, max_length=50, null=True), ), ( "consent_version", models.CharField(editable=False, max_length=10, null=True), ), ( "crf_status", models.CharField( choices=[ ("INCOMPLETE", "Incomplete (some data pending)"), ("COMPLETE", "Complete"), ], default="INCOMPLETE", help_text="If some data is still pending, flag this CRF as incomplete", max_length=25, verbose_name="CRF status", ), ), ( "crf_status_comments", models.TextField( blank=True, help_text="for example, why some data is still pending", null=True, verbose_name="Any comments related to status of this CRF", ), ), ( "hiv_tested", models.CharField( choices=[ ("Yes", "Yes"), ("No", "No"), ("N/A", "Not applicable"), ], default="N/A", help_text="Select `not applicable` if previously diagnosed. `Since last seen` includes today.", max_length=15, verbose_name="Since last seen, was the patient tested for HIV infection?", ), ), ( "hiv_test_date", models.DateField( blank=True, null=True, verbose_name="Date test requested" ), ), ( "hiv_reason_other", edc_model.models.fields.other_charfield.OtherCharField( blank=True, max_length=35, null=True, verbose_name="If other, please specify ...", ), ), ( "hiv_dx", models.CharField( choices=[ ("Yes", "Yes"), ("No", "No"), ("N/A", "Not applicable"), ], default="N/A", max_length=15, verbose_name="As of today, was the patient <u>newly</u> diagnosed with HIV infection?", ), ), ( "hypertension_tested", models.CharField( choices=[ ("Yes", "Yes"), ("No", "No"), ("N/A", "Not applicable"), ], default="N/A", help_text="Select `not applicable` if previously diagnosed. `Since last seen` includes today.", max_length=15, verbose_name="Since last seen, was the patient tested for hypertension?", ), ), ( "hypertension_test_date", models.DateField( blank=True, null=True, verbose_name="Date test requested" ), ), ( "hypertension_reason_other", edc_model.models.fields.other_charfield.OtherCharField( blank=True, max_length=35, null=True, verbose_name="If other, please specify ...", ), ), ( "hypertension_dx", models.CharField( choices=[ ("Yes", "Yes"), ("No", "No"), ("N/A", "Not applicable"), ], default="N/A", max_length=15, verbose_name="As of today, was the patient <u>newly</u> diagnosed with hypertension?", ), ), ( "diabetes_tested", models.CharField( choices=[ ("Yes", "Yes"), ("No", "No"), ("N/A", "Not applicable"), ], default="N/A", help_text="Select `not applicable` if previously diagnosed. `Since last seen` includes today.", max_length=15, verbose_name="Since last seen, was the patient tested for diabetes?", ), ), ( "diabetes_test_date", models.DateField( blank=True, null=True, verbose_name="Date test requested" ), ), ( "diabetes_reason_other", edc_model.models.fields.other_charfield.OtherCharField( blank=True, max_length=35, null=True, verbose_name="If other, please specify ...", ), ), ( "diabetes_dx", models.CharField( choices=[ ("Yes", "Yes"), ("No", "No"), ("N/A", "Not applicable"), ], default="N/A", max_length=15, verbose_name="As of today, was the patient <u>newly</u> diagnosed with diabetes?", ), ), ( "test_date", models.DateField( blank=True, editable=False, help_text="question_retired", null=True, verbose_name="Date test requested", ), ), ( "reason_other", edc_model.models.fields.other_charfield.OtherCharField( blank=True, max_length=35, null=True, verbose_name="If other, please specify ...", ), ), ( "diabetes_reason", models.ManyToManyField( blank=True, related_name="diabetes_tested_reason", to="inte_lists.ReasonsForTesting", verbose_name="Why was the patient tested for diabetes?", ), ), ( "hiv_reason", models.ManyToManyField( blank=True, related_name="hiv_tested_reason", to="inte_lists.ReasonsForTesting", verbose_name="Why was the patient tested for HIV infection?", ), ), ( "hypertension_reason", models.ManyToManyField( blank=True, related_name="hypertension_tested_reason", to="inte_lists.ReasonsForTesting", verbose_name="Why was the patient tested for hypertension?", ), ), ( "reason", models.ManyToManyField( blank=True, editable=False, help_text="question_retired", to="inte_lists.ReasonsForTesting", verbose_name="Why was the patient tested?", ), ), ( "site", models.ForeignKey( editable=False, null=True, on_delete=django.db.models.deletion.PROTECT, related_name="+", to="sites.Site", ), ), ( "subject_visit", models.OneToOneField( on_delete=django.db.models.deletion.PROTECT, to="inte_subject.SubjectVisit", ), ), ], options={ "verbose_name": "Clinical Review", "verbose_name_plural": "Clinical Reviews", "ordering": ("-modified", "-created"), "get_latest_by": "modified", "abstract": False, "default_permissions": ( "add", "change", "delete", "view", "export", "import", ), }, managers=[ ("on_site", django.contrib.sites.managers.CurrentSiteManager()), ("objects", edc_visit_tracking.managers.CrfModelManager()), ], ), migrations.CreateModel( name="HistoricalClinicalReview", fields=[ ( "revision", django_revision.revision_field.RevisionField( blank=True, editable=False, help_text="System field. Git repository tag:branch:commit.", max_length=75, null=True, verbose_name="Revision", ), ), ( "created", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin.utcnow, ), ), ( "modified", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin.utcnow, ), ), ( "user_created", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user created", ), ), ( "user_modified", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user modified", ), ), ( "hostname_created", models.CharField( blank=True, default=_socket.gethostname, help_text="System field. (modified on create only)", max_length=60, ), ), ( "hostname_modified", django_audit_fields.fields.hostname_modification_field.HostnameModificationField( blank=True, help_text="System field. (modified on every save)", max_length=50, ), ), ("device_created", models.CharField(blank=True, max_length=10)), ("device_modified", models.CharField(blank=True, max_length=10)), ( "id", django_audit_fields.fields.uuid_auto_field.UUIDAutoField( blank=True, db_index=True, editable=False, help_text="System auto field. UUID primary key.", ), ), ( "report_datetime", models.DateTimeField( default=edc_utils.date.get_utcnow, help_text="If reporting today, use today's date/time, otherwise use the date/time this information was reported.", validators=[ edc_protocol.validators.datetime_not_before_study_start, edc_model.models.validators.date.datetime_not_future, ], verbose_name="Report Date", ), ), ( "consent_model", models.CharField(editable=False, max_length=50, null=True), ), ( "consent_version", models.CharField(editable=False, max_length=10, null=True), ), ( "crf_status", models.CharField( choices=[ ("INCOMPLETE", "Incomplete (some data pending)"), ("COMPLETE", "Complete"), ], default="INCOMPLETE", help_text="If some data is still pending, flag this CRF as incomplete", max_length=25, verbose_name="CRF status", ), ), ( "crf_status_comments", models.TextField( blank=True, help_text="for example, why some data is still pending", null=True, verbose_name="Any comments related to status of this CRF", ), ), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ( "hiv_tested", models.CharField( choices=[ ("Yes", "Yes"), ("No", "No"), ("N/A", "Not applicable"), ], default="N/A", help_text="Select `not applicable` if previously diagnosed. `Since last seen` includes today.", max_length=15, verbose_name="Since last seen, was the patient tested for HIV infection?", ), ), ( "hiv_test_date", models.DateField( blank=True, null=True, verbose_name="Date test requested" ), ), ( "hiv_reason_other", edc_model.models.fields.other_charfield.OtherCharField( blank=True, max_length=35, null=True, verbose_name="If other, please specify ...", ), ), ( "hiv_dx", models.CharField( choices=[ ("Yes", "Yes"), ("No", "No"), ("N/A", "Not applicable"), ], default="N/A", max_length=15, verbose_name="As of today, was the patient <u>newly</u> diagnosed with HIV infection?", ), ), ( "hypertension_tested", models.CharField( choices=[ ("Yes", "Yes"), ("No", "No"), ("N/A", "Not applicable"), ], default="N/A", help_text="Select `not applicable` if previously diagnosed. `Since last seen` includes today.", max_length=15, verbose_name="Since last seen, was the patient tested for hypertension?", ), ), ( "hypertension_test_date", models.DateField( blank=True, null=True, verbose_name="Date test requested" ), ), ( "hypertension_reason_other", edc_model.models.fields.other_charfield.OtherCharField( blank=True, max_length=35, null=True, verbose_name="If other, please specify ...", ), ), ( "hypertension_dx", models.CharField( choices=[ ("Yes", "Yes"), ("No", "No"), ("N/A", "Not applicable"), ], default="N/A", max_length=15, verbose_name="As of today, was the patient <u>newly</u> diagnosed with hypertension?", ), ), ( "diabetes_tested", models.CharField( choices=[ ("Yes", "Yes"), ("No", "No"), ("N/A", "Not applicable"), ], default="N/A", help_text="Select `not applicable` if previously diagnosed. `Since last seen` includes today.", max_length=15, verbose_name="Since last seen, was the patient tested for diabetes?", ), ), ( "diabetes_test_date", models.DateField( blank=True, null=True, verbose_name="Date test requested" ), ), ( "diabetes_reason_other", edc_model.models.fields.other_charfield.OtherCharField( blank=True, max_length=35, null=True, verbose_name="If other, please specify ...", ), ), ( "diabetes_dx", models.CharField( choices=[ ("Yes", "Yes"), ("No", "No"), ("N/A", "Not applicable"), ], default="N/A", max_length=15, verbose_name="As of today, was the patient <u>newly</u> diagnosed with diabetes?", ), ), ( "test_date", models.DateField( blank=True, editable=False, help_text="question_retired", null=True, verbose_name="Date test requested", ), ), ( "reason_other", edc_model.models.fields.other_charfield.OtherCharField( blank=True, max_length=35, null=True, verbose_name="If other, please specify ...", ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "history_user", models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "site", models.ForeignKey( blank=True, db_constraint=False, editable=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="sites.Site", ), ), ( "subject_visit", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="inte_subject.SubjectVisit", ), ), ], options={ "verbose_name": "historical Clinical Review", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name="HistoricalMedications", fields=[ ( "revision", django_revision.revision_field.RevisionField( blank=True, editable=False, help_text="System field. Git repository tag:branch:commit.", max_length=75, null=True, verbose_name="Revision", ), ), ( "created", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin.utcnow, ), ), ( "modified", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin.utcnow, ), ), ( "user_created", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user created", ), ), ( "user_modified", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user modified", ), ), ( "hostname_created", models.CharField( blank=True, default=_socket.gethostname, help_text="System field. (modified on create only)", max_length=60, ), ), ( "hostname_modified", django_audit_fields.fields.hostname_modification_field.HostnameModificationField( blank=True, help_text="System field. (modified on every save)", max_length=50, ), ), ("device_created", models.CharField(blank=True, max_length=10)), ("device_modified", models.CharField(blank=True, max_length=10)), ( "id", django_audit_fields.fields.uuid_auto_field.UUIDAutoField( blank=True, db_index=True, editable=False, help_text="System auto field. UUID primary key.", ), ), ( "report_datetime", models.DateTimeField( default=edc_utils.date.get_utcnow, help_text="If reporting today, use today's date/time, otherwise use the date/time this information was reported.", validators=[ edc_protocol.validators.datetime_not_before_study_start, edc_model.models.validators.date.datetime_not_future, ], verbose_name="Report Date", ), ), ( "consent_model", models.CharField(editable=False, max_length=50, null=True), ), ( "consent_version", models.CharField(editable=False, max_length=10, null=True), ), ( "crf_status", models.CharField( choices=[ ("INCOMPLETE", "Incomplete (some data pending)"), ("COMPLETE", "Complete"), ], default="INCOMPLETE", help_text="If some data is still pending, flag this CRF as incomplete", max_length=25, verbose_name="CRF status", ), ), ( "crf_status_comments", models.TextField( blank=True, help_text="for example, why some data is still pending", null=True, verbose_name="Any comments related to status of this CRF", ), ), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ( "refill_hiv", models.CharField( choices=[ ("Yes", "Yes"), ("No", "No"), ("N/A", "Not applicable"), ], default="N/A", help_text="Select `not applicable` if subject has not been prescribed medication for HIV infection.", max_length=25, verbose_name="Is the patient filling / refilling HIV medications?", ), ), ( "refill_diabetes", models.CharField( choices=[ ("Yes", "Yes"), ("No", "No"), ("N/A", "Not applicable"), ], default="N/A", help_text="Select `not applicable` if subject has not been prescribed medication for Diabetes.", max_length=25, verbose_name="Is the patient filling / refilling Diabetes medications?", ), ), ( "refill_hypertension", models.CharField( choices=[ ("Yes", "Yes"), ("No", "No"), ("N/A", "Not applicable"), ], default="N/A", help_text="Select `not applicable` if subject has not been prescribed medication for Hypertension.", max_length=25, verbose_name="Is the patient filling / refilling Hypertension medications?", ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "history_user", models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "site", models.ForeignKey( blank=True, db_constraint=False, editable=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="sites.Site", ), ), ( "subject_visit", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="inte_subject.SubjectVisit", ), ), ], options={ "verbose_name": "historical Medications", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name="Medications", fields=[ ( "revision", django_revision.revision_field.RevisionField( blank=True, editable=False, help_text="System field. Git repository tag:branch:commit.", max_length=75, null=True, verbose_name="Revision", ), ), ( "created", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin.utcnow, ), ), ( "modified", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin.utcnow, ), ), ( "user_created", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user created", ), ), ( "user_modified", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user modified", ), ), ( "hostname_created", models.CharField( blank=True, default=_socket.gethostname, help_text="System field. (modified on create only)", max_length=60, ), ), ( "hostname_modified", django_audit_fields.fields.hostname_modification_field.HostnameModificationField( blank=True, help_text="System field. (modified on every save)", max_length=50, ), ), ("device_created", models.CharField(blank=True, max_length=10)), ("device_modified", models.CharField(blank=True, max_length=10)), ( "id", django_audit_fields.fields.uuid_auto_field.UUIDAutoField( blank=True, editable=False, help_text="System auto field. UUID primary key.", primary_key=True, serialize=False, ), ), ( "report_datetime", models.DateTimeField( default=edc_utils.date.get_utcnow, help_text="If reporting today, use today's date/time, otherwise use the date/time this information was reported.", validators=[ edc_protocol.validators.datetime_not_before_study_start, edc_model.models.validators.date.datetime_not_future, ], verbose_name="Report Date", ), ), ( "consent_model", models.CharField(editable=False, max_length=50, null=True), ), ( "consent_version", models.CharField(editable=False, max_length=10, null=True), ), ( "crf_status", models.CharField( choices=[ ("INCOMPLETE", "Incomplete (some data pending)"), ("COMPLETE", "Complete"), ], default="INCOMPLETE", help_text="If some data is still pending, flag this CRF as incomplete", max_length=25, verbose_name="CRF status", ), ), ( "crf_status_comments", models.TextField( blank=True, help_text="for example, why some data is still pending", null=True, verbose_name="Any comments related to status of this CRF", ), ), ( "refill_hiv", models.CharField( choices=[ ("Yes", "Yes"), ("No", "No"), ("N/A", "Not applicable"), ], default="N/A", help_text="Select `not applicable` if subject has not been prescribed medication for HIV infection.", max_length=25, verbose_name="Is the patient filling / refilling HIV medications?", ), ), ( "refill_diabetes", models.CharField( choices=[ ("Yes", "Yes"), ("No", "No"), ("N/A", "Not applicable"), ], default="N/A", help_text="Select `not applicable` if subject has not been prescribed medication for Diabetes.", max_length=25, verbose_name="Is the patient filling / refilling Diabetes medications?", ), ), ( "refill_hypertension", models.CharField( choices=[ ("Yes", "Yes"), ("No", "No"), ("N/A", "Not applicable"), ], default="N/A", help_text="Select `not applicable` if subject has not been prescribed medication for Hypertension.", max_length=25, verbose_name="Is the patient filling / refilling Hypertension medications?", ), ), ( "site", models.ForeignKey( editable=False, null=True, on_delete=django.db.models.deletion.PROTECT, related_name="+", to="sites.Site", ), ), ( "subject_visit", models.OneToOneField( on_delete=django.db.models.deletion.PROTECT, to="inte_subject.SubjectVisit", ), ), ], options={ "verbose_name": "Medications", "verbose_name_plural": "Medications", "ordering": ("-modified", "-created"), "get_latest_by": "modified", "abstract": False, "default_permissions": ( "add", "change", "delete", "view", "export", "import", ), }, managers=[ ("on_site", django.contrib.sites.managers.CurrentSiteManager()), ("objects", edc_visit_tracking.managers.CrfModelManager()), ], ), migrations.RenameField( model_name="clinicalreviewbaseline", old_name="diabetic", new_name="diabetes", ), migrations.RenameField( model_name="clinicalreviewbaseline", old_name="diabetic_tested", new_name="diabetes_tested", ), migrations.RenameField( model_name="clinicalreviewbaseline", old_name="diabetic_tested_ago", new_name="diabetes_tested_ago", ), migrations.RenameField( model_name="clinicalreviewbaseline", old_name="diabetic_tested_date", new_name="diabetes_tested_date", ), migrations.RenameField( model_name="clinicalreviewbaseline", old_name="hypertensive", new_name="hypertension", ), migrations.RenameField( model_name="clinicalreviewbaseline", old_name="hypertensive_tested", new_name="hypertension_tested", ), migrations.RenameField( model_name="clinicalreviewbaseline", old_name="hypertensive_tested_ago", new_name="hypertension_tested_ago", ), migrations.RenameField( model_name="clinicalreviewbaseline", old_name="hypertensive_tested_date", new_name="hypertension_tested_date", ), migrations.RenameField( model_name="healtheconomics", old_name="diabetic_expenditure_month", new_name="diabetes_expenditure_month", ), migrations.RenameField( model_name="healtheconomics", old_name="diabetic_payee", new_name="diabetes_payee", ), migrations.RenameField( model_name="healtheconomics", old_name="hypertensive_expenditure_month", new_name="hypertension_expenditure_month", ), migrations.RenameField( model_name="healtheconomics", old_name="hypertensive_payee", new_name="hypertension_payee", ), migrations.RenameField( model_name="historicalclinicalreviewbaseline", old_name="diabetic", new_name="diabetes", ), migrations.RenameField( model_name="historicalclinicalreviewbaseline", old_name="diabetic_tested", new_name="diabetes_tested", ), migrations.RenameField( model_name="historicalclinicalreviewbaseline", old_name="diabetic_tested_ago", new_name="diabetes_tested_ago", ), migrations.RenameField( model_name="historicalclinicalreviewbaseline", old_name="diabetic_tested_date", new_name="diabetes_tested_date", ), migrations.RenameField( model_name="historicalclinicalreviewbaseline", old_name="hypertensive", new_name="hypertension", ), migrations.RenameField( model_name="historicalclinicalreviewbaseline", old_name="hypertensive_tested", new_name="hypertension_tested", ), migrations.RenameField( model_name="historicalclinicalreviewbaseline", old_name="hypertensive_tested_ago", new_name="hypertension_tested_ago", ), migrations.RenameField( model_name="historicalclinicalreviewbaseline", old_name="hypertensive_tested_date", new_name="hypertension_tested_date", ), migrations.RenameField( model_name="historicalhealtheconomics", old_name="diabetic_expenditure_month", new_name="diabetes_expenditure_month", ), migrations.RenameField( model_name="historicalhealtheconomics", old_name="diabetic_payee", new_name="diabetes_payee", ), migrations.RenameField( model_name="historicalhealtheconomics", old_name="hypertensive_expenditure_month", new_name="hypertension_expenditure_month", ), migrations.RenameField( model_name="historicalhealtheconomics", old_name="hypertensive_payee", new_name="hypertension_payee", ), migrations.RenameField( model_name="clinicalreviewbaseline", old_name="diabetic_tested_estimated_datetime", new_name="diabetes_tested_estimated_datetime", ), migrations.RenameField( model_name="clinicalreviewbaseline", old_name="hypertensive_tested_estimated_datetime", new_name="hypertension_tested_estimated_datetime", ), migrations.RenameField( model_name="historicalclinicalreviewbaseline", old_name="diabetic_tested_estimated_datetime", new_name="diabetes_tested_estimated_datetime", ), migrations.RenameField( model_name="historicalclinicalreviewbaseline", old_name="hypertensive_tested_estimated_datetime", new_name="hypertension_tested_estimated_datetime", ), migrations.AddIndex( model_name="medications", index=models.Index( fields=["subject_visit", "site", "id"], name="inte_subjec_subject_8345ac_idx", ), ), migrations.AddIndex( model_name="clinicalreview", index=models.Index( fields=["subject_visit", "site", "id"], name="inte_subjec_subject_059fb3_idx", ), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ("barriers", "0020_auto_20181025_1545"), ("documents", "0001_initial"), ] operations = [ migrations.CreateModel( name="Document", fields=[ ( "created_on", models.DateTimeField(auto_now_add=True, db_index=True, null=True), ), ("modified_on", models.DateTimeField(auto_now=True, null=True)), ( "id", models.UUIDField( default=uuid.uuid4, primary_key=True, serialize=False ), ), ("original_filename", models.CharField(max_length=255)), ("size", models.IntegerField(null=True)), ("mime_type", models.CharField(max_length=255, null=True)), ( "created_by", models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "document", models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, to="documents.Document", ), ), ( "modified_by", models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ], options={"abstract": False}, ), migrations.CreateModel( name="HistoricalDocument", fields=[ ( "created_on", models.DateTimeField( blank=True, db_index=True, editable=False, null=True ), ), ( "modified_on", models.DateTimeField(blank=True, editable=False, null=True), ), ("id", models.UUIDField(db_index=True, default=uuid.uuid4)), ("original_filename", models.CharField(max_length=255)), ("size", models.IntegerField(null=True)), ("mime_type", models.CharField(max_length=255, null=True)), ("history_id", models.AutoField(primary_key=True, serialize=False)), ("history_change_reason", models.CharField(max_length=100, null=True)), ("history_date", models.DateTimeField()), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "created_by", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "document", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="documents.Document", ), ), ( "history_user", models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "modified_by", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ], options={ "verbose_name": "historical document", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name="HistoricalInteraction", fields=[ ( "id", models.IntegerField( auto_created=True, blank=True, db_index=True, verbose_name="ID" ), ), ( "created_on", models.DateTimeField( blank=True, db_index=True, editable=False, null=True ), ), ( "modified_on", models.DateTimeField(blank=True, editable=False, null=True), ), ( "kind", models.CharField(choices=[("COMMENT", "Comment")], max_length=25), ), ("text", models.TextField(null=True)), ("pinned", models.BooleanField(default=False)), ("is_active", models.BooleanField(default=True)), ("history_id", models.AutoField(primary_key=True, serialize=False)), ("history_change_reason", models.CharField(max_length=100, null=True)), ("history_date", models.DateTimeField()), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "barrier", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="barriers.BarrierInstance", ), ), ( "created_by", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "history_user", models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "modified_by", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ], options={ "verbose_name": "historical interaction", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name="Interaction", fields=[ ( "id", models.AutoField( auto_created=True, primary_key=True, serialize=False, verbose_name="ID", ), ), ( "created_on", models.DateTimeField(auto_now_add=True, db_index=True, null=True), ), ("modified_on", models.DateTimeField(auto_now=True, null=True)), ( "kind", models.CharField(choices=[("COMMENT", "Comment")], max_length=25), ), ("text", models.TextField(null=True)), ("pinned", models.BooleanField(default=False)), ("is_active", models.BooleanField(default=True)), ( "barrier", models.ForeignKey( on_delete=django.db.models.deletion.PROTECT, related_name="interactions_documents", to="barriers.BarrierInstance", ), ), ( "created_by", models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "documents", models.ManyToManyField( help_text="Interaction documents", related_name="documents", to="interactions.Document", ), ), ( "modified_by", models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ], options={"abstract": False}, ), ]
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ("interactions", "0007_merge_20200326_1110"), ] operations = [ migrations.CreateModel( name="WTOCommittee", fields=[ ( "id", models.UUIDField(default=uuid.uuid4, primary_key=True, serialize=False), ), ("name", models.CharField(max_length=255)), ], options={ "ordering": ("name", ), }, ), migrations.CreateModel( name="WTOCommitteeGroup", fields=[ ( "id", models.UUIDField(default=uuid.uuid4, primary_key=True, serialize=False), ), ("name", models.CharField(max_length=255)), ], options={ "ordering": ("name", ), }, ), migrations.CreateModel( name="WTOProfile", fields=[ ( "id", models.UUIDField(default=uuid.uuid4, primary_key=True, serialize=False), ), ("wto_has_been_notified", models.BooleanField()), ("wto_should_be_notified", models.NullBooleanField()), ( "committee_notification_link", models.CharField(blank=True, max_length=255), ), ( "member_states", django.contrib.postgres.fields.ArrayField( base_field=models.UUIDField(), blank=True, default=list, null=True, size=None, ), ), ("raised_date", models.DateField(null=True)), ("case_number", models.CharField(blank=True, max_length=255)), ( "committee_notification_document", models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="committee_notification_wto_profiles", to="interactions.Document", ), ), ( "committee_notified", models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="committee_notified_wto_profiles", to="wto.WTOCommittee", ), ), ( "committee_raised_in", models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="committee_raised_in_wto_profiles", to="wto.WTOCommittee", ), ), ( "meeting_minutes", models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="meeting_minutes_wto_profiles", to="interactions.Document", ), ), ], ), migrations.AddField( model_name="wtocommittee", name="wto_committee_group", field=models.ForeignKey( on_delete=django.db.models.deletion.PROTECT, related_name="committees", to="wto.WTOCommitteeGroup", ), ), migrations.CreateModel( name="HistoricalWTOProfile", fields=[ ("id", models.UUIDField(db_index=True, default=uuid.uuid4)), ("wto_has_been_notified", models.BooleanField()), ("wto_should_be_notified", models.NullBooleanField()), ( "committee_notification_link", models.CharField(blank=True, max_length=255), ), ( "member_states", django.contrib.postgres.fields.ArrayField( base_field=models.UUIDField(), blank=True, default=list, null=True, size=None, ), ), ("raised_date", models.DateField(null=True)), ("case_number", models.CharField(blank=True, max_length=255)), ("history_id", models.AutoField(primary_key=True, serialize=False)), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "committee_notification_document", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="interactions.Document", ), ), ( "committee_notified", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="wto.WTOCommittee", ), ), ( "committee_raised_in", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="wto.WTOCommittee", ), ), ( "history_user", models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "meeting_minutes", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="interactions.Document", ), ), ], options={ "verbose_name": "historical wto profile", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), ]
class Migration(migrations.Migration): dependencies = [ ("sites", "0002_alter_domain_unique"), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ("inte_subject", "0020_auto_20200729_2240"), ] operations = [ migrations.CreateModel( name="HistoricalHealthEconomics", fields=[ ( "revision", django_revision.revision_field.RevisionField( blank=True, editable=False, help_text="System field. Git repository tag:branch:commit.", max_length=75, null=True, verbose_name="Revision", ), ), ( "created", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin.utcnow, ), ), ( "modified", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin.utcnow, ), ), ( "user_created", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user created", ), ), ( "user_modified", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user modified", ), ), ( "hostname_created", models.CharField( blank=True, default=_socket.gethostname, help_text="System field. (modified on create only)", max_length=60, ), ), ( "hostname_modified", django_audit_fields.fields.hostname_modification_field.HostnameModificationField( blank=True, help_text="System field. (modified on every save)", max_length=50, ), ), ("device_created", models.CharField(blank=True, max_length=10)), ("device_modified", models.CharField(blank=True, max_length=10)), ( "id", django_audit_fields.fields.uuid_auto_field.UUIDAutoField( blank=True, db_index=True, editable=False, help_text="System auto field. UUID primary key.", ), ), ( "report_datetime", models.DateTimeField( default=edc_utils.date.get_utcnow, help_text="If reporting today, use today's date/time, otherwise use the date/time this information was reported.", validators=[ edc_protocol.validators.datetime_not_before_study_start, edc_model.models.validators.date.datetime_not_future, ], verbose_name="Report Date", ), ), ( "consent_model", models.CharField(editable=False, max_length=50, null=True), ), ( "consent_version", models.CharField(editable=False, max_length=10, null=True), ), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ( "occupation", models.CharField( max_length=50, verbose_name="What is your occupation/profession?", ), ), ( "education_in_years", models.IntegerField( validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(30), ], verbose_name="How many years of education did you compete?", ), ), ( "education_certificate", models.CharField( max_length=50, verbose_name="What is your highest education certificate?", ), ), ( "primary_school", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Did you go to primary/elementary school?", ), ), ( "primary_school_in_years", models.IntegerField( validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(10), ], verbose_name="If YES, for how many years", ), ), ( "secondary_school", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Did you go to secondary school?", ), ), ( "secondary_school_in_years", models.IntegerField( blank=True, null=True, validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(10), ], verbose_name="If YES, for how many years", ), ), ( "higher_education", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Did you go to higher education?", ), ), ( "higher_education_in_years", models.IntegerField( blank=True, null=True, validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(10), ], verbose_name="If YES, for how many years", ), ), ( "welfare", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Do you receive any welfare or social service support", ), ), ( "income_per_month", models.IntegerField( help_text="in Shilling", verbose_name="How much do you earn (take home) per month?", ), ), ( "household_income_per_month", models.IntegerField( help_text="in Shilling", verbose_name="What is the total income in your household per month?", ), ), ( "is_highest_earner", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Are you the person who earns the highest income in your household?", ), ), ( "highest_earner", models.CharField( blank=True, max_length=50, null=True, verbose_name="If NO, what is the profession of the person who earns the highest income?", ), ), ( "food_per_month", models.IntegerField( help_text="in Shilling", verbose_name="How much do you/your family spend on food in a month?", ), ), ( "accomodation_per_month", models.IntegerField( help_text="in Shilling", verbose_name="How much do you/your family spend on rent and utilities in a month?", ), ), ( "large_expenditure_year", models.IntegerField( help_text="e.g. furniture, electrical items, cars (in Shilling)", verbose_name="How much have you spent on large items in the last year", ), ), ( "buy_meds_month", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Over the last month, did you get any drugs or have a drug refill?", ), ), ( "diabetic_expenditure_month", models.IntegerField( blank=True, editable=False, help_text="in Shilling", null=True, verbose_name="If YES, how much did you spend on Diabetic drugs", ), ), ( "diabetic_payee", models.CharField( choices=[ ("own_cash", "Own cash"), ("insurance", "Insurance"), ("relative", "Relative of others paying"), ("free", "Free drugs from the pharmacy"), ("N/A", "Not applicable"), ], editable=False, max_length=15, verbose_name="If YES, how did you pay or who paid for these drugs", ), ), ( "hypertensive_expenditure_month", models.IntegerField( blank=True, help_text="in Shilling", null=True, verbose_name="If YES, how much did you spend on Hypertensive drugs", ), ), ( "hypertensive_payee", models.CharField( choices=[ ("own_cash", "Own cash"), ("insurance", "Insurance"), ("relative", "Relative of others paying"), ("free", "Free drugs from the pharmacy"), ("N/A", "Not applicable"), ], max_length=15, verbose_name="If YES, how did you pay or who paid for these drugs", ), ), ( "arv_expenditure_month", models.IntegerField( blank=True, help_text="in Shilling", null=True, verbose_name="If YES, how much did you spend on Antiretroviral drugs", ), ), ( "arv_payee", models.CharField( choices=[ ("own_cash", "Own cash"), ("insurance", "Insurance"), ("relative", "Relative of others paying"), ("free", "Free drugs from the pharmacy"), ("N/A", "Not applicable"), ], max_length=15, verbose_name="If YES, how did you pay or who paid for these drugs", ), ), ( "meds_other_expenditure_month", models.IntegerField( blank=True, help_text="in Shilling", null=True, verbose_name="If YES, how much did you spend on 'other' drugs", ), ), ( "meds_other_payee", models.CharField( choices=[ ("own_cash", "Own cash"), ("insurance", "Insurance"), ("relative", "Relative of others paying"), ("free", "Free drugs from the pharmacy"), ("N/A", "Not applicable"), ], max_length=15, verbose_name="If YES, how did you pay or who paid for these drugs", ), ), ( "expenditure_other_month", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Over the last month, did you spend money on other activities (not drugs) relating to your health?", ), ), ( "expenditure_other_detail", models.TextField( blank=True, null=True, verbose_name="If YES, what was the activity", ), ), ( "expenditure_other", models.IntegerField( blank=True, help_text="in Shilling", null=True, verbose_name="If YES, how much was spent on other activities (not drugs) relating to your health?", ), ), ( "expenditure_other_payee", models.CharField( choices=[ ("own_cash", "Own cash"), ("insurance", "Insurance"), ("relative", "Relative of others paying"), ("free", "Free drugs from the pharmacy"), ("N/A", "Not applicable"), ], max_length=15, verbose_name="If YES, how did you pay or who paid for these activities?", ), ), ( "healthcare_expenditure_month", models.IntegerField( verbose_name="How much in total has been spent on your healthcare in the last month?" ), ), ( "routine_activities", models.CharField( choices=[ ("working", "Working"), ("studying", "Studying"), ("caring_for_children", "Caring for children"), ("OTHER", "Other, please specify"), ], max_length=25, verbose_name="What would you be doing if you had not come to the hospital?", ), ), ( "routine_activities_other", models.CharField( blank=True, max_length=50, null=True, verbose_name="If OTHER, please specify", ), ), ( "off_work_days", models.DecimalField( decimal_places=1, help_text="in days. (1,2,3 etc. If half-day 0.5)", max_digits=4, verbose_name="How much time did you take off work?", ), ), ( "travel_time", models.CharField( help_text="in hours and minutes (format HH:MM)", max_length=5, verbose_name="How long did it take you to reach here?", ), ), ( "hospital_time", models.CharField( help_text="in hours and minutes (format HH:MM)", max_length=5, verbose_name="How much time did you spend at the hospital?", ), ), ( "lost_income", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Did you lose earnings as a result? ", ), ), ( "lost_income_amount", models.IntegerField( blank=True, null=True, verbose_name="If Yes, how much did you lose?", ), ), ( "childcare", models.CharField( choices=[ ("Yes", "Yes"), ("No", "No"), ("N/A", "Not applicable"), ], max_length=15, verbose_name="Did you ask anyone else, such as your family member, friend to look after your child/children in order to come here?", ), ), ( "childcare_source", models.CharField( choices=[ ("N/A", "Not applicable"), ("working", "Working"), ("studying", "Studying"), ("caring_for_children", "Caring for children"), ("house_maintenance", "House maintenance"), ("nothing", "Nothing"), ("OTHER", "Other, specify"), ], default="N/A", max_length=25, verbose_name="If Yes, what would they have been doing if they had not stayed to look after your child or children?", ), ), ( "childcare_source_timeoff", models.DecimalField( blank=True, decimal_places=1, help_text="in days. (1,2,3 etc. If half-day 0.5)", max_digits=4, null=True, verbose_name="How much time did a family member, friend take off work to look after your child or children?", ), ), ( "transport_old", models.CharField( choices=[ ("bus", "Bus"), ("train", "Train"), ("ambulance", "Ambulance"), ("private_taxi", "Private taxi"), ("own_bicycle", "Own bicycle"), ("hired_motorbike", "Hired motorbike"), ("own_car", "Own car"), ("own_motorbike", "Own motorbike"), ("hired_bicycle", "Hired bicycle"), ("foot", "Foot"), ("OTHER", "Other, specify"), ], max_length=25, verbose_name="Which form of transport did you take to get to the hospital today?", ), ), ( "transport_cost", models.IntegerField( help_text="in Shilling", verbose_name="How much did you spend on transport in total?", ), ), ( "transport_barter", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Did you sell anything to pay for your visit today?", ), ), ( "transport_borrow", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Did you take any loans to pay for your visit?", ), ), ( "health_insurance", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Do you have private healthcare insurance?", ), ), ( "health_insurance_pay", models.IntegerField( blank=True, help_text="in Shilling", null=True, verbose_name="If Yes, how much do you pay towards your contributions to healthcare insurance every month?", ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "history_user", models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "site", models.ForeignKey( blank=True, db_constraint=False, editable=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="sites.Site", ), ), ( "subject_visit", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="inte_subject.SubjectVisit", ), ), ], options={ "verbose_name": "historical Health Economics", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name="HealthEconomics", fields=[ ( "revision", django_revision.revision_field.RevisionField( blank=True, editable=False, help_text="System field. Git repository tag:branch:commit.", max_length=75, null=True, verbose_name="Revision", ), ), ( "created", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin.utcnow, ), ), ( "modified", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin.utcnow, ), ), ( "user_created", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user created", ), ), ( "user_modified", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user modified", ), ), ( "hostname_created", models.CharField( blank=True, default=_socket.gethostname, help_text="System field. (modified on create only)", max_length=60, ), ), ( "hostname_modified", django_audit_fields.fields.hostname_modification_field.HostnameModificationField( blank=True, help_text="System field. (modified on every save)", max_length=50, ), ), ("device_created", models.CharField(blank=True, max_length=10)), ("device_modified", models.CharField(blank=True, max_length=10)), ( "id", django_audit_fields.fields.uuid_auto_field.UUIDAutoField( blank=True, editable=False, help_text="System auto field. UUID primary key.", primary_key=True, serialize=False, ), ), ( "report_datetime", models.DateTimeField( default=edc_utils.date.get_utcnow, help_text="If reporting today, use today's date/time, otherwise use the date/time this information was reported.", validators=[ edc_protocol.validators.datetime_not_before_study_start, edc_model.models.validators.date.datetime_not_future, ], verbose_name="Report Date", ), ), ( "consent_model", models.CharField(editable=False, max_length=50, null=True), ), ( "consent_version", models.CharField(editable=False, max_length=10, null=True), ), ( "occupation", models.CharField( max_length=50, verbose_name="What is your occupation/profession?", ), ), ( "education_in_years", models.IntegerField( validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(30), ], verbose_name="How many years of education did you compete?", ), ), ( "education_certificate", models.CharField( max_length=50, verbose_name="What is your highest education certificate?", ), ), ( "primary_school", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Did you go to primary/elementary school?", ), ), ( "primary_school_in_years", models.IntegerField( validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(10), ], verbose_name="If YES, for how many years", ), ), ( "secondary_school", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Did you go to secondary school?", ), ), ( "secondary_school_in_years", models.IntegerField( blank=True, null=True, validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(10), ], verbose_name="If YES, for how many years", ), ), ( "higher_education", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Did you go to higher education?", ), ), ( "higher_education_in_years", models.IntegerField( blank=True, null=True, validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(10), ], verbose_name="If YES, for how many years", ), ), ( "welfare", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Do you receive any welfare or social service support", ), ), ( "income_per_month", models.IntegerField( help_text="in Shilling", verbose_name="How much do you earn (take home) per month?", ), ), ( "household_income_per_month", models.IntegerField( help_text="in Shilling", verbose_name="What is the total income in your household per month?", ), ), ( "is_highest_earner", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Are you the person who earns the highest income in your household?", ), ), ( "highest_earner", models.CharField( blank=True, max_length=50, null=True, verbose_name="If NO, what is the profession of the person who earns the highest income?", ), ), ( "food_per_month", models.IntegerField( help_text="in Shilling", verbose_name="How much do you/your family spend on food in a month?", ), ), ( "accomodation_per_month", models.IntegerField( help_text="in Shilling", verbose_name="How much do you/your family spend on rent and utilities in a month?", ), ), ( "large_expenditure_year", models.IntegerField( help_text="e.g. furniture, electrical items, cars (in Shilling)", verbose_name="How much have you spent on large items in the last year", ), ), ( "buy_meds_month", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Over the last month, did you get any drugs or have a drug refill?", ), ), ( "diabetic_expenditure_month", models.IntegerField( blank=True, editable=False, help_text="in Shilling", null=True, verbose_name="If YES, how much did you spend on Diabetic drugs", ), ), ( "diabetic_payee", models.CharField( choices=[ ("own_cash", "Own cash"), ("insurance", "Insurance"), ("relative", "Relative of others paying"), ("free", "Free drugs from the pharmacy"), ("N/A", "Not applicable"), ], editable=False, max_length=15, verbose_name="If YES, how did you pay or who paid for these drugs", ), ), ( "hypertensive_expenditure_month", models.IntegerField( blank=True, help_text="in Shilling", null=True, verbose_name="If YES, how much did you spend on Hypertensive drugs", ), ), ( "hypertensive_payee", models.CharField( choices=[ ("own_cash", "Own cash"), ("insurance", "Insurance"), ("relative", "Relative of others paying"), ("free", "Free drugs from the pharmacy"), ("N/A", "Not applicable"), ], max_length=15, verbose_name="If YES, how did you pay or who paid for these drugs", ), ), ( "arv_expenditure_month", models.IntegerField( blank=True, help_text="in Shilling", null=True, verbose_name="If YES, how much did you spend on Antiretroviral drugs", ), ), ( "arv_payee", models.CharField( choices=[ ("own_cash", "Own cash"), ("insurance", "Insurance"), ("relative", "Relative of others paying"), ("free", "Free drugs from the pharmacy"), ("N/A", "Not applicable"), ], max_length=15, verbose_name="If YES, how did you pay or who paid for these drugs", ), ), ( "meds_other_expenditure_month", models.IntegerField( blank=True, help_text="in Shilling", null=True, verbose_name="If YES, how much did you spend on 'other' drugs", ), ), ( "meds_other_payee", models.CharField( choices=[ ("own_cash", "Own cash"), ("insurance", "Insurance"), ("relative", "Relative of others paying"), ("free", "Free drugs from the pharmacy"), ("N/A", "Not applicable"), ], max_length=15, verbose_name="If YES, how did you pay or who paid for these drugs", ), ), ( "expenditure_other_month", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Over the last month, did you spend money on other activities (not drugs) relating to your health?", ), ), ( "expenditure_other_detail", models.TextField( blank=True, null=True, verbose_name="If YES, what was the activity", ), ), ( "expenditure_other", models.IntegerField( blank=True, help_text="in Shilling", null=True, verbose_name="If YES, how much was spent on other activities (not drugs) relating to your health?", ), ), ( "expenditure_other_payee", models.CharField( choices=[ ("own_cash", "Own cash"), ("insurance", "Insurance"), ("relative", "Relative of others paying"), ("free", "Free drugs from the pharmacy"), ("N/A", "Not applicable"), ], max_length=15, verbose_name="If YES, how did you pay or who paid for these activities?", ), ), ( "healthcare_expenditure_month", models.IntegerField( verbose_name="How much in total has been spent on your healthcare in the last month?" ), ), ( "routine_activities", models.CharField( choices=[ ("working", "Working"), ("studying", "Studying"), ("caring_for_children", "Caring for children"), ("OTHER", "Other, please specify"), ], max_length=25, verbose_name="What would you be doing if you had not come to the hospital?", ), ), ( "routine_activities_other", models.CharField( blank=True, max_length=50, null=True, verbose_name="If OTHER, please specify", ), ), ( "off_work_days", models.DecimalField( decimal_places=1, help_text="in days. (1,2,3 etc. If half-day 0.5)", max_digits=4, verbose_name="How much time did you take off work?", ), ), ( "travel_time", models.CharField( help_text="in hours and minutes (format HH:MM)", max_length=5, verbose_name="How long did it take you to reach here?", ), ), ( "hospital_time", models.CharField( help_text="in hours and minutes (format HH:MM)", max_length=5, verbose_name="How much time did you spend at the hospital?", ), ), ( "lost_income", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Did you lose earnings as a result? ", ), ), ( "lost_income_amount", models.IntegerField( blank=True, null=True, verbose_name="If Yes, how much did you lose?", ), ), ( "childcare", models.CharField( choices=[ ("Yes", "Yes"), ("No", "No"), ("N/A", "Not applicable"), ], max_length=15, verbose_name="Did you ask anyone else, such as your family member, friend to look after your child/children in order to come here?", ), ), ( "childcare_source", models.CharField( choices=[ ("N/A", "Not applicable"), ("working", "Working"), ("studying", "Studying"), ("caring_for_children", "Caring for children"), ("house_maintenance", "House maintenance"), ("nothing", "Nothing"), ("OTHER", "Other, specify"), ], default="N/A", max_length=25, verbose_name="If Yes, what would they have been doing if they had not stayed to look after your child or children?", ), ), ( "childcare_source_timeoff", models.DecimalField( blank=True, decimal_places=1, help_text="in days. (1,2,3 etc. If half-day 0.5)", max_digits=4, null=True, verbose_name="How much time did a family member, friend take off work to look after your child or children?", ), ), ( "transport_old", models.CharField( choices=[ ("bus", "Bus"), ("train", "Train"), ("ambulance", "Ambulance"), ("private_taxi", "Private taxi"), ("own_bicycle", "Own bicycle"), ("hired_motorbike", "Hired motorbike"), ("own_car", "Own car"), ("own_motorbike", "Own motorbike"), ("hired_bicycle", "Hired bicycle"), ("foot", "Foot"), ("OTHER", "Other, specify"), ], max_length=25, verbose_name="Which form of transport did you take to get to the hospital today?", ), ), ( "transport_cost", models.IntegerField( help_text="in Shilling", verbose_name="How much did you spend on transport in total?", ), ), ( "transport_barter", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Did you sell anything to pay for your visit today?", ), ), ( "transport_borrow", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Did you take any loans to pay for your visit?", ), ), ( "health_insurance", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Do you have private healthcare insurance?", ), ), ( "health_insurance_pay", models.IntegerField( blank=True, help_text="in Shilling", null=True, verbose_name="If Yes, how much do you pay towards your contributions to healthcare insurance every month?", ), ), ( "site", models.ForeignKey( editable=False, null=True, on_delete=django.db.models.deletion.PROTECT, related_name="+", to="sites.Site", ), ), ( "subject_visit", models.OneToOneField( on_delete=django.db.models.deletion.PROTECT, to="inte_subject.SubjectVisit", ), ), ], options={ "verbose_name": "Health Economics", "verbose_name_plural": "Health Economics", "ordering": ("-modified", "-created"), "get_latest_by": "modified", "abstract": False, "default_permissions": ( "add", "change", "delete", "view", "export", "import", ), }, managers=[ ("on_site", django.contrib.sites.managers.CurrentSiteManager()), ("objects", edc_visit_tracking.managers.CrfModelManager()), ], ), migrations.AddIndex( model_name="healtheconomics", index=models.Index( fields=["subject_visit", "site", "id"], name="inte_subjec_subject_db3803_idx", ), ), ]
class Migration(migrations.Migration): dependencies = [ ("sites", "0002_alter_domain_unique"), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ("mocca_subject", "0004_remove_reasonforvisit_health_services"), ] operations = [ migrations.CreateModel( name="PatientHealth", fields=[ ( "revision", django_revision.revision_field.RevisionField( blank=True, editable=False, help_text= "System field. Git repository tag:branch:commit.", max_length=75, null=True, verbose_name="Revision", ), ), ( "created", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "modified", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "user_created", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user created", ), ), ( "user_modified", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user modified", ), ), ( "hostname_created", models.CharField( blank=True, default=_socket.gethostname, help_text="System field. (modified on create only)", max_length=60, ), ), ( "hostname_modified", django_audit_fields.fields.hostname_modification_field. HostnameModificationField( blank=True, help_text="System field. (modified on every save)", max_length=50, ), ), ("device_created", models.CharField(blank=True, max_length=10)), ("device_modified", models.CharField(blank=True, max_length=10)), ( "id", django_audit_fields.fields.uuid_auto_field.UUIDAutoField( blank=True, editable=False, help_text="System auto field. UUID primary key.", primary_key=True, serialize=False, ), ), ( "report_datetime", models.DateTimeField( default=edc_utils.date.get_utcnow, help_text= "If reporting today, use today's date/time, otherwise use the date/time this information was reported.", validators=[ edc_protocol.validators. datetime_not_before_study_start, edc_model.models.validators.date. datetime_not_future, ], verbose_name="Report Date", ), ), ( "consent_model", models.CharField(editable=False, max_length=50, null=True), ), ( "consent_version", models.CharField(editable=False, max_length=10, null=True), ), ( "crf_status", models.CharField( choices=[ ("INCOMPLETE", "Incomplete (some data pending)"), ("COMPLETE", "Complete"), ], default="INCOMPLETE", help_text= "If some data is still pending, flag this CRF as incomplete", max_length=25, verbose_name="CRF status", ), ), ( "crf_status_comments", models.TextField( blank=True, help_text="for example, why some data is still pending", null=True, verbose_name= "Any comments related to status of this CRF", ), ), ( "ph9interst", models.CharField( choices=[ ("not_at_all", "Not at all"), ("several_days", "Several days"), ("more_than_half", "More than half the days"), ("nearly_everyday", "Nearly everyday"), ], max_length=15, verbose_name= "Little interest or pleasure in doing things", ), ), ( "ph9feel", models.CharField( choices=[ ("not_at_all", "Not at all"), ("several_days", "Several days"), ("more_than_half", "More than half the days"), ("nearly_everyday", "Nearly everyday"), ], max_length=15, verbose_name="Feeling down, depressed or hopeless", ), ), ( "ph9troubl", models.CharField( choices=[ ("not_at_all", "Not at all"), ("several_days", "Several days"), ("more_than_half", "More than half the days"), ("nearly_everyday", "Nearly everyday"), ], max_length=15, verbose_name= "Trouble falling/staying asleep, sleeping too much", ), ), ( "ph9tired", models.CharField( choices=[ ("not_at_all", "Not at all"), ("several_days", "Several days"), ("more_than_half", "More than half the days"), ("nearly_everyday", "Nearly everyday"), ], max_length=15, verbose_name="Feeling tired or having little energy", ), ), ( "ph9appetit", models.CharField( choices=[ ("not_at_all", "Not at all"), ("several_days", "Several days"), ("more_than_half", "More than half the days"), ("nearly_everyday", "Nearly everyday"), ], max_length=15, verbose_name="Poor appetite or over eating", ), ), ( "ph9badabt", models.CharField( choices=[ ("not_at_all", "Not at all"), ("several_days", "Several days"), ("more_than_half", "More than half the days"), ("nearly_everyday", "Nearly everyday"), ], max_length=15, verbose_name= "Feeling bad about yourself or that you are a failure or have let yourself or your family down", ), ), ( "ph9concen", models.CharField( choices=[ ("not_at_all", "Not at all"), ("several_days", "Several days"), ("more_than_half", "More than half the days"), ("nearly_everyday", "Nearly everyday"), ], max_length=15, verbose_name= "Trouble concentrating on things such as reading the newspapers or watching television", ), ), ( "ph9moving", models.CharField( choices=[ ("not_at_all", "Not at all"), ("several_days", "Several days"), ("more_than_half", "More than half the days"), ("nearly_everyday", "Nearly everyday"), ], max_length=15, verbose_name= "Moving or speaking so slowly that other people could have noticed or the opposite: being so fidgety or restless that you have been moving around a lot more than usual", ), ), ( "phpthough", models.CharField( choices=[ ("not_at_all", "Not at all"), ("several_days", "Several days"), ("more_than_half", "More than half the days"), ("nearly_everyday", "Nearly everyday"), ], max_length=15, verbose_name= "Thoughts that you would be better off dead or of hurting yourself in some way", ), ), ( "ph9functio", models.CharField( choices=[ ("not_at_all", "Not at all"), ("several_days", "Several days"), ("more_than_half", "More than half the days"), ("nearly_everyday", "Nearly everyday"), ], max_length=15, verbose_name= "If you checked off any problems on this questionnaire so far, how difficult have these problems made it for you to do your work, take care of things at home or get along with other people?", ), ), ( "site", models.ForeignKey( editable=False, null=True, on_delete=django.db.models.deletion.PROTECT, related_name="+", to="sites.Site", ), ), ( "subject_visit", models.OneToOneField( on_delete=django.db.models.deletion.PROTECT, to="mocca_subject.SubjectVisit", ), ), ], options={ "verbose_name": "Patient Health Questionnaire-9 (PHQ9-)", "verbose_name_plural": "Patient Health Questionnaires-9 (PHQ9-)", "ordering": ("-modified", "-created"), "get_latest_by": "modified", "abstract": False, "default_permissions": ( "add", "change", "delete", "view", "export", "import", ), }, managers=[ ("on_site", django.contrib.sites.managers.CurrentSiteManager()), ("objects", edc_visit_tracking.managers.CrfModelManager()), ], ), migrations.CreateModel( name="HistoricalPatientHealth", fields=[ ( "revision", django_revision.revision_field.RevisionField( blank=True, editable=False, help_text= "System field. Git repository tag:branch:commit.", max_length=75, null=True, verbose_name="Revision", ), ), ( "created", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "modified", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "user_created", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user created", ), ), ( "user_modified", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user modified", ), ), ( "hostname_created", models.CharField( blank=True, default=_socket.gethostname, help_text="System field. (modified on create only)", max_length=60, ), ), ( "hostname_modified", django_audit_fields.fields.hostname_modification_field. HostnameModificationField( blank=True, help_text="System field. (modified on every save)", max_length=50, ), ), ("device_created", models.CharField(blank=True, max_length=10)), ("device_modified", models.CharField(blank=True, max_length=10)), ( "id", django_audit_fields.fields.uuid_auto_field.UUIDAutoField( blank=True, db_index=True, editable=False, help_text="System auto field. UUID primary key.", ), ), ( "report_datetime", models.DateTimeField( default=edc_utils.date.get_utcnow, help_text= "If reporting today, use today's date/time, otherwise use the date/time this information was reported.", validators=[ edc_protocol.validators. datetime_not_before_study_start, edc_model.models.validators.date. datetime_not_future, ], verbose_name="Report Date", ), ), ( "consent_model", models.CharField(editable=False, max_length=50, null=True), ), ( "consent_version", models.CharField(editable=False, max_length=10, null=True), ), ( "crf_status", models.CharField( choices=[ ("INCOMPLETE", "Incomplete (some data pending)"), ("COMPLETE", "Complete"), ], default="INCOMPLETE", help_text= "If some data is still pending, flag this CRF as incomplete", max_length=25, verbose_name="CRF status", ), ), ( "crf_status_comments", models.TextField( blank=True, help_text="for example, why some data is still pending", null=True, verbose_name= "Any comments related to status of this CRF", ), ), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ( "ph9interst", models.CharField( choices=[ ("not_at_all", "Not at all"), ("several_days", "Several days"), ("more_than_half", "More than half the days"), ("nearly_everyday", "Nearly everyday"), ], max_length=15, verbose_name= "Little interest or pleasure in doing things", ), ), ( "ph9feel", models.CharField( choices=[ ("not_at_all", "Not at all"), ("several_days", "Several days"), ("more_than_half", "More than half the days"), ("nearly_everyday", "Nearly everyday"), ], max_length=15, verbose_name="Feeling down, depressed or hopeless", ), ), ( "ph9troubl", models.CharField( choices=[ ("not_at_all", "Not at all"), ("several_days", "Several days"), ("more_than_half", "More than half the days"), ("nearly_everyday", "Nearly everyday"), ], max_length=15, verbose_name= "Trouble falling/staying asleep, sleeping too much", ), ), ( "ph9tired", models.CharField( choices=[ ("not_at_all", "Not at all"), ("several_days", "Several days"), ("more_than_half", "More than half the days"), ("nearly_everyday", "Nearly everyday"), ], max_length=15, verbose_name="Feeling tired or having little energy", ), ), ( "ph9appetit", models.CharField( choices=[ ("not_at_all", "Not at all"), ("several_days", "Several days"), ("more_than_half", "More than half the days"), ("nearly_everyday", "Nearly everyday"), ], max_length=15, verbose_name="Poor appetite or over eating", ), ), ( "ph9badabt", models.CharField( choices=[ ("not_at_all", "Not at all"), ("several_days", "Several days"), ("more_than_half", "More than half the days"), ("nearly_everyday", "Nearly everyday"), ], max_length=15, verbose_name= "Feeling bad about yourself or that you are a failure or have let yourself or your family down", ), ), ( "ph9concen", models.CharField( choices=[ ("not_at_all", "Not at all"), ("several_days", "Several days"), ("more_than_half", "More than half the days"), ("nearly_everyday", "Nearly everyday"), ], max_length=15, verbose_name= "Trouble concentrating on things such as reading the newspapers or watching television", ), ), ( "ph9moving", models.CharField( choices=[ ("not_at_all", "Not at all"), ("several_days", "Several days"), ("more_than_half", "More than half the days"), ("nearly_everyday", "Nearly everyday"), ], max_length=15, verbose_name= "Moving or speaking so slowly that other people could have noticed or the opposite: being so fidgety or restless that you have been moving around a lot more than usual", ), ), ( "phpthough", models.CharField( choices=[ ("not_at_all", "Not at all"), ("several_days", "Several days"), ("more_than_half", "More than half the days"), ("nearly_everyday", "Nearly everyday"), ], max_length=15, verbose_name= "Thoughts that you would be better off dead or of hurting yourself in some way", ), ), ( "ph9functio", models.CharField( choices=[ ("not_at_all", "Not at all"), ("several_days", "Several days"), ("more_than_half", "More than half the days"), ("nearly_everyday", "Nearly everyday"), ], max_length=15, verbose_name= "If you checked off any problems on this questionnaire so far, how difficult have these problems made it for you to do your work, take care of things at home or get along with other people?", ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "history_user", models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "site", models.ForeignKey( blank=True, db_constraint=False, editable=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="sites.Site", ), ), ( "subject_visit", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="mocca_subject.SubjectVisit", ), ), ], options={ "verbose_name": "historical Patient Health Questionnaire-9 (PHQ9-)", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.AddIndex( model_name="patienthealth", index=models.Index( fields=["subject_visit", "site", "id"], name="mocca_subje_subject_e0c51a_idx", ), ), ]
class Migration(migrations.Migration): dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ("sites", "0002_alter_domain_unique"), ("meta_subject", "0001_initial"), ] operations = [ migrations.RemoveField(model_name="historicalpatienthistory", name="abdominal_tenderness"), migrations.RemoveField(model_name="historicalpatienthistory", name="dia_blood_pressure"), migrations.RemoveField(model_name="historicalpatienthistory", name="has_abdominal_tenderness"), migrations.RemoveField(model_name="historicalpatienthistory", name="has_enlarged_liver"), migrations.RemoveField(model_name="historicalpatienthistory", name="heart_rate"), migrations.RemoveField(model_name="historicalpatienthistory", name="irregular_heartbeat"), migrations.RemoveField(model_name="historicalpatienthistory", name="is_heartbeat_regular"), migrations.RemoveField(model_name="historicalpatienthistory", name="jaundice"), migrations.RemoveField(model_name="historicalpatienthistory", name="peripheral_oedema"), migrations.RemoveField(model_name="historicalpatienthistory", name="respiratory_rate"), migrations.RemoveField(model_name="historicalpatienthistory", name="sys_blood_pressure"), migrations.RemoveField(model_name="historicalpatienthistory", name="temperature"), migrations.RemoveField(model_name="historicalpatienthistory", name="waist_circumference"), migrations.RemoveField(model_name="historicalpatienthistory", name="weight"), migrations.RemoveField(model_name="patienthistory", name="abdominal_tenderness"), migrations.RemoveField(model_name="patienthistory", name="dia_blood_pressure"), migrations.RemoveField(model_name="patienthistory", name="has_abdominal_tenderness"), migrations.RemoveField(model_name="patienthistory", name="has_enlarged_liver"), migrations.RemoveField(model_name="patienthistory", name="heart_rate"), migrations.RemoveField(model_name="patienthistory", name="irregular_heartbeat"), migrations.RemoveField(model_name="patienthistory", name="is_heartbeat_regular"), migrations.RemoveField(model_name="patienthistory", name="jaundice"), migrations.RemoveField(model_name="patienthistory", name="peripheral_oedema"), migrations.RemoveField(model_name="patienthistory", name="respiratory_rate"), migrations.RemoveField(model_name="patienthistory", name="sys_blood_pressure"), migrations.RemoveField(model_name="patienthistory", name="temperature"), migrations.RemoveField(model_name="patienthistory", name="waist_circumference"), migrations.RemoveField(model_name="patienthistory", name="weight"), migrations.AddField( model_name="followupvitals", name="oxygen_saturation", field=models.IntegerField( editable=False, help_text="%", null=True, validators=[ django.core.validators.MinValueValidator(1), django.core.validators.MaxValueValidator(999), ], verbose_name="Oxygen saturation:", ), ), migrations.AddField( model_name="historicalfollowupvitals", name="oxygen_saturation", field=models.IntegerField( editable=False, help_text="%", null=True, validators=[ django.core.validators.MinValueValidator(1), django.core.validators.MaxValueValidator(999), ], verbose_name="Oxygen saturation:", ), ), migrations.AlterField( model_name="followupvitals", name="respiratory_rate", field=models.IntegerField( editable=False, help_text="breaths/min", null=True, validators=[ django.core.validators.MinValueValidator(6), django.core.validators.MaxValueValidator(50), ], verbose_name="Respiratory rate:", ), ), migrations.AlterField( model_name="historicalfollowupvitals", name="respiratory_rate", field=models.IntegerField( editable=False, help_text="breaths/min", null=True, validators=[ django.core.validators.MinValueValidator(6), django.core.validators.MaxValueValidator(50), ], verbose_name="Respiratory rate:", ), ), migrations.CreateModel( name="PhysicalExam", fields=[ ( "revision", django_revision.revision_field.RevisionField( blank=True, editable=False, help_text= "System field. Git repository tag:branch:commit.", max_length=75, null=True, verbose_name="Revision", ), ), ( "created", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "modified", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "user_created", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user created", ), ), ( "user_modified", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user modified", ), ), ( "hostname_created", models.CharField( blank=True, default=_socket.gethostname, help_text="System field. (modified on create only)", max_length=60, ), ), ( "hostname_modified", django_audit_fields.fields.hostname_modification_field. HostnameModificationField( blank=True, help_text="System field. (modified on every save)", max_length=50, ), ), ("device_created", models.CharField(blank=True, max_length=10)), ("device_modified", models.CharField(blank=True, max_length=10)), ( "id", django_audit_fields.fields.uuid_auto_field.UUIDAutoField( blank=True, editable=False, help_text="System auto field. UUID primary key.", primary_key=True, serialize=False, ), ), ( "consent_model", models.CharField(editable=False, max_length=50, null=True), ), ( "consent_version", models.CharField(editable=False, max_length=10, null=True), ), ( "report_datetime", models.DateTimeField( default=edc_utils.date.get_utcnow, help_text= "If reporting today, use today's date/time, otherwise use the date/time this information was reported.", validators=[ edc_protocol.validators. datetime_not_before_study_start, edc_model.validators.date.datetime_not_future, ], verbose_name="Report Date", ), ), ( "weight", models.DecimalField( decimal_places=1, help_text="kg", max_digits=4, validators=[ django.core.validators.MinValueValidator(20), django.core.validators.MaxValueValidator(150), ], verbose_name="Weight:", ), ), ( "sys_blood_pressure", models.IntegerField( help_text="in mm. format SYS, e.g. 120", validators=[ django.core.validators.MinValueValidator(50), django.core.validators.MaxValueValidator(220), ], verbose_name="Blood pressure: systolic", ), ), ( "dia_blood_pressure", models.IntegerField( help_text="in Hg. format DIA, e.g. 80", validators=[ django.core.validators.MinValueValidator(20), django.core.validators.MaxValueValidator(150), ], verbose_name="Blood pressure: diastolic", ), ), ( "heart_rate", models.IntegerField( help_text="BPM", validators=[ django.core.validators.MinValueValidator(30), django.core.validators.MaxValueValidator(200), ], verbose_name="Heart rate:", ), ), ( "respiratory_rate", models.IntegerField( editable=False, help_text="breaths/min", null=True, validators=[ django.core.validators.MinValueValidator(6), django.core.validators.MaxValueValidator(50), ], verbose_name="Respiratory rate:", ), ), ( "oxygen_saturation", models.IntegerField( editable=False, help_text="%", null=True, validators=[ django.core.validators.MinValueValidator(1), django.core.validators.MaxValueValidator(999), ], verbose_name="Oxygen saturation:", ), ), ( "temperature", models.DecimalField( decimal_places=1, help_text="in degrees Celcius", max_digits=3, validators=[ django.core.validators.MinValueValidator(30), django.core.validators.MaxValueValidator(45), ], verbose_name="Temperature:", ), ), ( "is_heartbeat_regular", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Is the heart beat regular?", ), ), ( "irregular_heartbeat", models.TextField( blank=True, null=True, verbose_name= "If the heartbeat is NOT regular, please describe", ), ), ( "waist_circumference", models.DecimalField( decimal_places=1, help_text="in centimeters", max_digits=5, validators=[ django.core.validators.MinValueValidator(50.0), django.core.validators.MaxValueValidator(175.0), ], verbose_name="Waist circumference", ), ), ( "jaundice", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Jaundice", ), ), ( "peripheral_oedema", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Presence of peripheral oedema", ), ), ( "has_abdominal_tenderness", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Abdominal tenderness on palpation", ), ), ( "abdominal_tenderness", models.TextField( blank=True, null=True, verbose_name= "If YES, abdominal tenderness, please describe", ), ), ( "has_enlarged_liver", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Enlarged liver on palpation", ), ), ( "site", models.ForeignKey( editable=False, null=True, on_delete=django.db.models.deletion.PROTECT, to="sites.Site", ), ), ( "subject_visit", models.OneToOneField( on_delete=django.db.models.deletion.PROTECT, to="meta_subject.SubjectVisit", ), ), ], options={ "verbose_name": "Patient History", "verbose_name_plural": "Patient History", "abstract": False, }, managers=[ ("on_site", django.contrib.sites.managers.CurrentSiteManager()), ("objects", edc_visit_tracking.managers.CrfModelManager()), ], ), migrations.CreateModel( name="HistoricalPhysicalExam", fields=[ ( "revision", django_revision.revision_field.RevisionField( blank=True, editable=False, help_text= "System field. Git repository tag:branch:commit.", max_length=75, null=True, verbose_name="Revision", ), ), ( "created", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "modified", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "user_created", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user created", ), ), ( "user_modified", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user modified", ), ), ( "hostname_created", models.CharField( blank=True, default=_socket.gethostname, help_text="System field. (modified on create only)", max_length=60, ), ), ( "hostname_modified", django_audit_fields.fields.hostname_modification_field. HostnameModificationField( blank=True, help_text="System field. (modified on every save)", max_length=50, ), ), ("device_created", models.CharField(blank=True, max_length=10)), ("device_modified", models.CharField(blank=True, max_length=10)), ( "id", django_audit_fields.fields.uuid_auto_field.UUIDAutoField( blank=True, db_index=True, editable=False, help_text="System auto field. UUID primary key.", ), ), ( "consent_model", models.CharField(editable=False, max_length=50, null=True), ), ( "consent_version", models.CharField(editable=False, max_length=10, null=True), ), ( "report_datetime", models.DateTimeField( default=edc_utils.date.get_utcnow, help_text= "If reporting today, use today's date/time, otherwise use the date/time this information was reported.", validators=[ edc_protocol.validators. datetime_not_before_study_start, edc_model.validators.date.datetime_not_future, ], verbose_name="Report Date", ), ), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ( "weight", models.DecimalField( decimal_places=1, help_text="kg", max_digits=4, validators=[ django.core.validators.MinValueValidator(20), django.core.validators.MaxValueValidator(150), ], verbose_name="Weight:", ), ), ( "sys_blood_pressure", models.IntegerField( help_text="in mm. format SYS, e.g. 120", validators=[ django.core.validators.MinValueValidator(50), django.core.validators.MaxValueValidator(220), ], verbose_name="Blood pressure: systolic", ), ), ( "dia_blood_pressure", models.IntegerField( help_text="in Hg. format DIA, e.g. 80", validators=[ django.core.validators.MinValueValidator(20), django.core.validators.MaxValueValidator(150), ], verbose_name="Blood pressure: diastolic", ), ), ( "heart_rate", models.IntegerField( help_text="BPM", validators=[ django.core.validators.MinValueValidator(30), django.core.validators.MaxValueValidator(200), ], verbose_name="Heart rate:", ), ), ( "respiratory_rate", models.IntegerField( editable=False, help_text="breaths/min", null=True, validators=[ django.core.validators.MinValueValidator(6), django.core.validators.MaxValueValidator(50), ], verbose_name="Respiratory rate:", ), ), ( "oxygen_saturation", models.IntegerField( editable=False, help_text="%", null=True, validators=[ django.core.validators.MinValueValidator(1), django.core.validators.MaxValueValidator(999), ], verbose_name="Oxygen saturation:", ), ), ( "temperature", models.DecimalField( decimal_places=1, help_text="in degrees Celcius", max_digits=3, validators=[ django.core.validators.MinValueValidator(30), django.core.validators.MaxValueValidator(45), ], verbose_name="Temperature:", ), ), ( "is_heartbeat_regular", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Is the heart beat regular?", ), ), ( "irregular_heartbeat", models.TextField( blank=True, null=True, verbose_name= "If the heartbeat is NOT regular, please describe", ), ), ( "waist_circumference", models.DecimalField( decimal_places=1, help_text="in centimeters", max_digits=5, validators=[ django.core.validators.MinValueValidator(50.0), django.core.validators.MaxValueValidator(175.0), ], verbose_name="Waist circumference", ), ), ( "jaundice", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Jaundice", ), ), ( "peripheral_oedema", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Presence of peripheral oedema", ), ), ( "has_abdominal_tenderness", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Abdominal tenderness on palpation", ), ), ( "abdominal_tenderness", models.TextField( blank=True, null=True, verbose_name= "If YES, abdominal tenderness, please describe", ), ), ( "has_enlarged_liver", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Enlarged liver on palpation", ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "history_user", models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "site", models.ForeignKey( blank=True, db_constraint=False, editable=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="sites.Site", ), ), ( "subject_visit", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="meta_subject.SubjectVisit", ), ), ], options={ "verbose_name": "historical Patient History", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.AddIndex( model_name="physicalexam", index=models.Index( fields=["subject_visit", "site", "id"], name="meta_subjec_subject_7da1da_idx", ), ), ]
class Migration(migrations.Migration): dependencies = [ ('catalogue', '0039_historicalproduct_historicalproductattributevalue'), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ('voucher', '0006_auto_20181205_1017'), ('sites', '0002_alter_domain_unique'), ('partner', '0014_historicalstockrecord'), ('offer', '0023_offerassignmentemailattempt'), ] operations = [ migrations.CreateModel( name='HistoricalBenefit', fields=[ ('id', models.IntegerField(auto_created=True, blank=True, db_index=True, verbose_name='ID')), ('type', models.CharField( blank=True, choices= [(b'Percentage', "Discount is a percentage off of the product's value"), (b'Absolute', "Discount is a fixed amount off of the product's value" ), (b'Multibuy', 'Discount is to give the cheapest product for free'), (b'Fixed price', 'Get the products that meet the condition for a fixed price' ), (b'Shipping absolute', 'Discount is a fixed amount of the shipping cost'), (b'Shipping fixed price', 'Get shipping for a fixed price'), (b'Shipping percentage', 'Discount is a percentage off of the shipping cost')], max_length=128, verbose_name='Type')), ('value', oscar.models.fields.PositiveDecimalField( blank=True, decimal_places=2, max_digits=12, null=True, verbose_name='Value')), ('max_affected_items', models.PositiveIntegerField( blank=True, help_text= 'Set this to prevent the discount consuming all items within the range that are in the basket.', null=True, verbose_name='Max Affected Items')), ('proxy_class', oscar.models.fields.NullCharField( default=None, max_length=255, verbose_name='Custom class')), ('history_id', models.AutoField(primary_key=True, serialize=False)), ('history_date', models.DateTimeField()), ('history_change_reason', models.CharField(max_length=100, null=True)), ('history_type', models.CharField(choices=[('+', 'Created'), ('~', 'Changed'), ('-', 'Deleted')], max_length=1)), ('history_user', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL)), ('range', models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='offer.Range', verbose_name='Range')), ], options={ 'ordering': ('-history_date', '-history_id'), 'get_latest_by': 'history_date', 'verbose_name': 'historical Benefit', }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name='HistoricalCondition', fields=[ ('id', models.IntegerField(auto_created=True, blank=True, db_index=True, verbose_name='ID')), ('type', models.CharField( blank=True, choices= [(b'Count', 'Depends on number of items in basket that are in condition range' ), (b'Value', 'Depends on value of items in basket that are in condition range' ), (b'Coverage', 'Needs to contain a set number of DISTINCT items from the condition range' )], max_length=128, verbose_name='Type')), ('value', oscar.models.fields.PositiveDecimalField( blank=True, decimal_places=2, max_digits=12, null=True, verbose_name='Value')), ('proxy_class', oscar.models.fields.NullCharField( default=None, max_length=255, verbose_name='Custom class')), ('enterprise_customer_uuid', models.UUIDField(blank=True, null=True, verbose_name='EnterpriseCustomer UUID')), ('enterprise_customer_name', models.CharField(blank=True, max_length=255, null=True, verbose_name='EnterpriseCustomer Name')), ('enterprise_customer_catalog_uuid', models.UUIDField( blank=True, null=True, verbose_name='EnterpriseCustomerCatalog UUID')), ('program_uuid', models.UUIDField(blank=True, null=True, verbose_name='Program UUID')), ('journal_bundle_uuid', models.UUIDField(blank=True, null=True, verbose_name='JournalBundle UUID')), ('history_id', models.AutoField(primary_key=True, serialize=False)), ('history_date', models.DateTimeField()), ('history_change_reason', models.CharField(max_length=100, null=True)), ('history_type', models.CharField(choices=[('+', 'Created'), ('~', 'Changed'), ('-', 'Deleted')], max_length=1)), ('history_user', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL)), ('range', models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='offer.Range', verbose_name='Range')), ], options={ 'ordering': ('-history_date', '-history_id'), 'get_latest_by': 'history_date', 'verbose_name': 'historical Condition', }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name='HistoricalConditionalOffer', fields=[ ('id', models.IntegerField(auto_created=True, blank=True, db_index=True, verbose_name='ID')), ('name', models.CharField( db_index=True, help_text="This is displayed within the customer's basket", max_length=128, verbose_name='Name')), ('description', models.TextField( blank=True, help_text='This is displayed on the offer browsing page', verbose_name='Description')), ('offer_type', models.CharField(choices=[ (b'Site', 'Site offer - available to all users'), (b'Voucher', 'Voucher offer - only available after entering the appropriate voucher code' ), (b'User', 'User offer - available to certain types of user'), (b'Session', 'Session offer - temporary offer, available for a user for the duration of their session' ) ], default=b'Site', max_length=128, verbose_name='Type')), ('status', models.CharField(default=b'Open', max_length=64, verbose_name='Status')), ('priority', models.IntegerField( default=0, help_text='The highest priority offers are applied first', verbose_name='Priority')), ('start_datetime', models.DateTimeField( blank=True, help_text= 'Offers are active from the start date. Leave this empty if the offer has no start date.', null=True, verbose_name='Start date')), ('end_datetime', models.DateTimeField( blank=True, help_text= 'Offers are active until the end date. Leave this empty if the offer has no expiry date.', null=True, verbose_name='End date')), ('max_global_applications', models.PositiveIntegerField( blank=True, help_text= 'The number of times this offer can be used before it is unavailable', null=True, verbose_name='Max global applications')), ('max_user_applications', models.PositiveIntegerField( blank=True, help_text= 'The number of times a single user can use this offer', null=True, verbose_name='Max user applications')), ('max_basket_applications', models.PositiveIntegerField( blank=True, help_text= 'The number of times this offer can be applied to a basket (and order)', null=True, verbose_name='Max basket applications')), ('max_discount', models.DecimalField( blank=True, decimal_places=2, help_text= 'When an offer has given more discount to orders than this threshold, then the offer becomes unavailable', max_digits=12, null=True, verbose_name='Max discount')), ('total_discount', models.DecimalField(decimal_places=2, default=Decimal('0.00'), max_digits=12, verbose_name='Total Discount')), ('num_applications', models.PositiveIntegerField( default=0, verbose_name='Number of applications')), ('num_orders', models.PositiveIntegerField(default=0, verbose_name='Number of Orders')), ('redirect_url', oscar.models.fields.ExtendedURLField( blank=True, verbose_name='URL redirect (optional)')), ('date_created', models.DateTimeField(blank=True, editable=False, verbose_name='Date Created')), ('email_domains', models.CharField(blank=True, max_length=255, null=True)), ('history_id', models.AutoField(primary_key=True, serialize=False)), ('history_date', models.DateTimeField()), ('history_change_reason', models.CharField(max_length=100, null=True)), ('history_type', models.CharField(choices=[('+', 'Created'), ('~', 'Changed'), ('-', 'Deleted')], max_length=1)), ('benefit', models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='offer.Benefit', verbose_name='Benefit')), ('condition', models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='offer.Condition', verbose_name='Condition')), ('history_user', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL)), ('partner', models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='partner.Partner')), ('site', models.ForeignKey( blank=True, db_constraint=False, default=None, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='sites.Site', verbose_name='Site')), ], options={ 'ordering': ('-history_date', '-history_id'), 'get_latest_by': 'history_date', 'verbose_name': 'historical Conditional offer', }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name='HistoricalOfferAssignment', fields=[ ('id', models.IntegerField(auto_created=True, blank=True, db_index=True, verbose_name='ID')), ('created', django_extensions.db.fields.CreationDateTimeField( auto_now_add=True, verbose_name='created')), ('modified', django_extensions.db.fields.ModificationDateTimeField( auto_now=True, verbose_name='modified')), ('code', models.CharField(max_length=128)), ('user_email', models.EmailField(max_length=254)), ('status', models.CharField(choices=[ (b'EMAIL_PENDING', 'Email to user pending.'), (b'ASSIGNED', 'Code successfully assigned to user.'), (b'REDEEMED', 'Code has been redeemed by user.'), (b'EMAIL_BOUNCED', 'Email to user bounced.'), (b'REVOKED', 'Code has been revoked for this user.') ], default=b'EMAIL_PENDING', max_length=255)), ('history_id', models.AutoField(primary_key=True, serialize=False)), ('history_date', models.DateTimeField()), ('history_change_reason', models.CharField(max_length=100, null=True)), ('history_type', models.CharField(choices=[('+', 'Created'), ('~', 'Changed'), ('-', 'Deleted')], max_length=1)), ('history_user', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL)), ('offer', models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='offer.ConditionalOffer')), ('voucher_application', models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='voucher.VoucherApplication')), ], options={ 'ordering': ('-history_date', '-history_id'), 'get_latest_by': 'history_date', 'verbose_name': 'historical offer assignment', }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name='HistoricalRange', fields=[ ('id', models.IntegerField(auto_created=True, blank=True, db_index=True, verbose_name='ID')), ('name', models.CharField(db_index=True, max_length=128, verbose_name='Name')), ('description', models.TextField(blank=True)), ('is_public', models.BooleanField( default=False, help_text='Public ranges have a customer-facing page', verbose_name='Is public?')), ('includes_all_products', models.BooleanField(default=False, verbose_name='Includes all products?')), ('proxy_class', oscar.models.fields.NullCharField( db_index=True, default=None, max_length=255, verbose_name='Custom class')), ('date_created', models.DateTimeField(blank=True, editable=False, verbose_name='Date Created')), ('catalog_query', models.TextField(blank=True, null=True)), ('course_catalog', models.PositiveIntegerField( blank=True, help_text='Course Catalog ID from the Discovery Service.', null=True)), ('enterprise_customer', models.UUIDField( blank=True, help_text= 'UUID for an EnterpriseCustomer from the Enterprise Service.', null=True)), ('enterprise_customer_catalog', models.UUIDField( blank=True, help_text= 'UUID for an EnterpriseCustomerCatalog from the Enterprise Service.', null=True)), ('course_seat_types', models.CharField(blank=True, max_length=255, null=True, validators=[ ecommerce.extensions.offer.models. validate_credit_seat_type ])), ('history_id', models.AutoField(primary_key=True, serialize=False)), ('history_date', models.DateTimeField()), ('history_change_reason', models.CharField(max_length=100, null=True)), ('history_type', models.CharField(choices=[('+', 'Created'), ('~', 'Changed'), ('-', 'Deleted')], max_length=1)), ('catalog', models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='catalogue.Catalog')), ('history_user', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL)), ], options={ 'ordering': ('-history_date', '-history_id'), 'get_latest_by': 'history_date', 'verbose_name': 'historical Range', }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name='HistoricalRangeProduct', fields=[ ('id', models.IntegerField(auto_created=True, blank=True, db_index=True, verbose_name='ID')), ('display_order', models.IntegerField(default=0)), ('history_id', models.AutoField(primary_key=True, serialize=False)), ('history_date', models.DateTimeField()), ('history_change_reason', models.CharField(max_length=100, null=True)), ('history_type', models.CharField(choices=[('+', 'Created'), ('~', 'Changed'), ('-', 'Deleted')], max_length=1)), ('history_user', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL)), ('product', models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='catalogue.Product')), ('range', models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='offer.Range')), ], options={ 'ordering': ('-history_date', '-history_id'), 'get_latest_by': 'history_date', 'verbose_name': 'historical range product', }, bases=(simple_history.models.HistoricalChanges, models.Model), ), ]
class Migration(migrations.Migration): dependencies = [ ( "caluma_form", "0020_historicalanswer_historicalanswerdocument_historicaldocument_historicalfile_historicalform_historica", ), ("caluma_workflow", "0011_auto_20190220_1303"), ] operations = [ migrations.CreateModel( name="HistoricalCase", fields=[ ("created_at", models.DateTimeField(blank=True, editable=False)), ("modified_at", models.DateTimeField(blank=True, editable=False)), ( "created_by_user", models.CharField(blank=True, max_length=150, null=True), ), ( "created_by_group", models.CharField(blank=True, db_index=True, max_length=150, null=True), ), ("history_user_id", models.CharField(max_length=150, null=True)), ( "id", models.UUIDField(db_index=True, default=uuid.uuid4, editable=False), ), ( "closed_at", models.DateTimeField( blank=True, help_text= "Time when case has either been canceled or completed", null=True, ), ), ( "closed_by_user", models.CharField(blank=True, max_length=150, null=True), ), ( "closed_by_group", models.CharField(blank=True, max_length=150, null=True), ), ( "status", models.CharField( choices=[ ( "running", "Case is running and work items need to be completed.", ), ("completed", "Case is done."), ("canceled", "Case is cancelled."), ], db_index=True, max_length=50, ), ), ("meta", models.JSONField(default=dict)), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "document", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_form.Document", ), ), ( "workflow", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_workflow.Workflow", ), ), ], options={ "verbose_name": "historical case", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name="HistoricalFlow", fields=[ ("created_at", models.DateTimeField(blank=True, editable=False)), ("modified_at", models.DateTimeField(blank=True, editable=False)), ( "created_by_user", models.CharField(blank=True, max_length=150, null=True), ), ( "created_by_group", models.CharField(blank=True, db_index=True, max_length=150, null=True), ), ("history_user_id", models.CharField(max_length=150, null=True)), ( "id", models.UUIDField(db_index=True, default=uuid.uuid4, editable=False), ), ("next", models.TextField()), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ], options={ "verbose_name": "historical flow", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name="HistoricalTask", fields=[ ("created_at", models.DateTimeField(blank=True, editable=False)), ("modified_at", models.DateTimeField(blank=True, editable=False)), ( "created_by_user", models.CharField(blank=True, max_length=150, null=True), ), ( "created_by_group", models.CharField(blank=True, db_index=True, max_length=150, null=True), ), ("history_user_id", models.CharField(max_length=150, null=True)), ("slug", models.SlugField()), ("name", localized_fields.fields.field.LocalizedField(required=[])), ( "description", localized_fields.fields.field.LocalizedField(blank=True, null=True, required=[]), ), ( "type", models.CharField( choices=[ ("simple", "Task which can simply be marked as completed."), ( "complete_workflow_form", "Task to complete a defined workflow form.", ), ( "complete_task_form", "Task to complete a defined task form.", ), ], max_length=50, ), ), ("meta", models.JSONField(default=dict)), ( "address_groups", models.TextField( blank=True, help_text= "Group jexl returning what group(s) derived work items will be addressed to.", null=True, ), ), ("is_archived", models.BooleanField(default=False)), ( "lead_time", models.PositiveIntegerField( blank=True, help_text= "Time in seconds task may take to be processed.", null=True, ), ), ( "is_multiple_instance", models.BooleanField( default=False, help_text= "Allows creating multiple work items for this task using the `CreateWorkItem` mutation. If true, one work item will be created for each entry in `address_groups`.", ), ), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "form", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_form.Form", ), ), ], options={ "verbose_name": "historical task", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name="HistoricalTaskFlow", fields=[ ("created_at", models.DateTimeField(blank=True, editable=False)), ("modified_at", models.DateTimeField(blank=True, editable=False)), ( "created_by_user", models.CharField(blank=True, max_length=150, null=True), ), ( "created_by_group", models.CharField(blank=True, db_index=True, max_length=150, null=True), ), ("history_user_id", models.CharField(max_length=150, null=True)), ( "id", models.UUIDField(db_index=True, default=uuid.uuid4, editable=False), ), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "flow", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_workflow.Flow", ), ), ( "task", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_workflow.Task", ), ), ( "workflow", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_workflow.Workflow", ), ), ], options={ "verbose_name": "historical task flow", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name="HistoricalWorkflow", fields=[ ("created_at", models.DateTimeField(blank=True, editable=False)), ("modified_at", models.DateTimeField(blank=True, editable=False)), ( "created_by_user", models.CharField(blank=True, max_length=150, null=True), ), ( "created_by_group", models.CharField(blank=True, db_index=True, max_length=150, null=True), ), ("history_user_id", models.CharField(max_length=150, null=True)), ("slug", models.SlugField()), ("name", localized_fields.fields.field.LocalizedField(required=[])), ( "description", localized_fields.fields.field.LocalizedField(blank=True, null=True, required=[]), ), ("meta", models.JSONField(default=dict)), ("is_published", models.BooleanField(default=False)), ("is_archived", models.BooleanField(default=False)), ( "allow_all_forms", models.BooleanField( default=False, help_text="Allow workflow to be started with any form", ), ), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ], options={ "verbose_name": "historical workflow", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name="HistoricalWorkItem", fields=[ ("created_at", models.DateTimeField(blank=True, editable=False)), ("modified_at", models.DateTimeField(blank=True, editable=False)), ( "created_by_user", models.CharField(blank=True, max_length=150, null=True), ), ( "created_by_group", models.CharField(blank=True, db_index=True, max_length=150, null=True), ), ("history_user_id", models.CharField(max_length=150, null=True)), ( "id", models.UUIDField(db_index=True, default=uuid.uuid4, editable=False), ), ( "closed_at", models.DateTimeField( blank=True, help_text= "Time when work item has either been canceled or completed", null=True, ), ), ( "closed_by_user", models.CharField(blank=True, max_length=150, null=True), ), ( "closed_by_group", models.CharField(blank=True, max_length=150, null=True), ), ("deadline", models.DateTimeField(blank=True, null=True)), ( "status", models.CharField( choices=[ ("ready", "Task is ready to be processed."), ("completed", "Task is done."), ("canceled", "Task is cancelled."), ], db_index=True, max_length=50, ), ), ("meta", models.JSONField(default=dict)), ( "addressed_groups", django.contrib.postgres.fields.ArrayField( base_field=models.CharField(max_length=150), default=list, help_text= "Offer work item to be processed by a group of users, such are not committed to process it though.", size=None, ), ), ( "assigned_users", django.contrib.postgres.fields.ArrayField( base_field=models.CharField(max_length=150), default=list, help_text= "Users responsible to undertake given work item.", size=None, ), ), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "case", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_workflow.Case", ), ), ( "child_case", models.ForeignKey( blank=True, db_constraint=False, help_text="Defines case of a sub-workflow", null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_workflow.Case", ), ), ( "document", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_form.Document", ), ), ( "task", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_workflow.Task", ), ), ], options={ "verbose_name": "historical work item", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), ]
class Migration(migrations.Migration): dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ('catalog', '0002_enterprisecatalog_historicalenterprisecatalog'), ] operations = [ migrations.CreateModel( name='CatalogContentKey', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created', model_utils.fields.AutoCreatedField( default=django.utils.timezone.now, editable=False, verbose_name='created')), ('modified', model_utils.fields.AutoLastModifiedField( default=django.utils.timezone.now, editable=False, verbose_name='modified')), ('content_key', models.CharField( help_text= 'The key that represents a piece of content, such as a course run.', max_length=255)), ('catalog_query', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='catalog_content_keys', to='catalog.CatalogQuery')), ], options={ 'verbose_name': 'Catalog Content Key', 'verbose_name_plural': 'Catalog Content Keys', }, ), migrations.CreateModel( name='HistoricalCatalogContentKey', fields=[ ('id', models.IntegerField(auto_created=True, blank=True, db_index=True, verbose_name='ID')), ('created', model_utils.fields.AutoCreatedField( default=django.utils.timezone.now, editable=False, verbose_name='created')), ('modified', model_utils.fields.AutoLastModifiedField( default=django.utils.timezone.now, editable=False, verbose_name='modified')), ('content_key', models.CharField( help_text= 'The key that represents a piece of content, such as a course run.', max_length=255)), ('history_id', models.AutoField(primary_key=True, serialize=False)), ('history_date', models.DateTimeField()), ('history_change_reason', models.CharField(max_length=100, null=True)), ('history_type', models.CharField(choices=[('+', 'Created'), ('~', 'Changed'), ('-', 'Deleted')], max_length=1)), ('catalog_query', models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='catalog.CatalogQuery')), ('history_user', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name': 'historical Catalog Content Key', 'ordering': ('-history_date', '-history_id'), 'get_latest_by': 'history_date', }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.AlterField( model_name='enterprisecatalog', name='catalog_query', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name='enterprise_catalogs', to='catalog.CatalogQuery'), ), migrations.AlterField( model_name='historicalenterprisecatalog', name='enterprise_uuid', field=models.UUIDField(), ), migrations.AlterUniqueTogether( name='catalogcontentkey', unique_together={('catalog_query', 'content_key')}, ), ]
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='ExternalId', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created', model_utils.fields.AutoCreatedField(default=django.utils.timezone.now, editable=False, verbose_name='created')), ('modified', model_utils.fields.AutoLastModifiedField(default=django.utils.timezone.now, editable=False, verbose_name='modified')), ('external_user_id', models.UUIDField(default=uuid.uuid4, editable=False, unique=True)), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='ExternalIdType', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created', model_utils.fields.AutoCreatedField(default=django.utils.timezone.now, editable=False, verbose_name='created')), ('modified', model_utils.fields.AutoLastModifiedField(default=django.utils.timezone.now, editable=False, verbose_name='modified')), ('name', models.CharField(db_index=True, max_length=32, unique=True)), ('description', models.TextField()), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='HistoricalExternalId', fields=[ ('id', models.IntegerField(auto_created=True, blank=True, db_index=True, verbose_name='ID')), ('created', model_utils.fields.AutoCreatedField(default=django.utils.timezone.now, editable=False, verbose_name='created')), ('modified', model_utils.fields.AutoLastModifiedField(default=django.utils.timezone.now, editable=False, verbose_name='modified')), ('external_user_id', models.UUIDField(db_index=True, default=uuid.uuid4, editable=False)), ('history_id', models.AutoField(primary_key=True, serialize=False)), ('history_date', models.DateTimeField()), ('history_change_reason', models.CharField(max_length=100, null=True)), ('history_type', models.CharField(choices=[('+', 'Created'), ('~', 'Changed'), ('-', 'Deleted')], max_length=1)), ('external_id_type', models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='external_user_ids.ExternalIdType')), ('history_user', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL)), ('user', models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to=settings.AUTH_USER_MODEL)), ], options={ 'ordering': ('-history_date', '-history_id'), 'get_latest_by': 'history_date', 'verbose_name': 'historical external id', }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name='HistoricalExternalIdType', fields=[ ('id', models.IntegerField(auto_created=True, blank=True, db_index=True, verbose_name='ID')), ('created', model_utils.fields.AutoCreatedField(default=django.utils.timezone.now, editable=False, verbose_name='created')), ('modified', model_utils.fields.AutoLastModifiedField(default=django.utils.timezone.now, editable=False, verbose_name='modified')), ('name', models.CharField(db_index=True, max_length=32)), ('description', models.TextField()), ('history_id', models.AutoField(primary_key=True, serialize=False)), ('history_date', models.DateTimeField()), ('history_change_reason', models.CharField(max_length=100, null=True)), ('history_type', models.CharField(choices=[('+', 'Created'), ('~', 'Changed'), ('-', 'Deleted')], max_length=1)), ('history_user', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL)), ], options={ 'ordering': ('-history_date', '-history_id'), 'get_latest_by': 'history_date', 'verbose_name': 'historical external id type', }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.AddField( model_name='externalid', name='external_id_type', field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='external_user_ids.ExternalIdType'), ), migrations.AddField( model_name='externalid', name='user', field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL), ), ]
class Migration(migrations.Migration): dependencies = [ ("sites", "0002_alter_domain_unique"), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ("meta_subject", "0037_auto_20200517_0207"), ] operations = [ migrations.AlterField( model_name="historicalmissedvisit", name="contact_attempts_count", field=models.IntegerField( blank=True, help_text="Not including pre-appointment reminders", null=True, validators=[django.core.validators.MinValueValidator(1)], verbose_name= "Number of attempts made to contact participant since the expected appointment date", ), ), migrations.AlterField( model_name="historicalmissedvisit", name="contact_attempts_explained", field=models.TextField( blank=True, null=True, verbose_name= "If contact not made and less than 3 attempts, please explain", ), ), migrations.AlterField( model_name="missedvisit", name="contact_attempts_count", field=models.IntegerField( blank=True, help_text="Not including pre-appointment reminders", null=True, validators=[django.core.validators.MinValueValidator(1)], verbose_name= "Number of attempts made to contact participant since the expected appointment date", ), ), migrations.AlterField( model_name="missedvisit", name="contact_attempts_explained", field=models.TextField( blank=True, null=True, verbose_name= "If contact not made and less than 3 attempts, please explain", ), ), migrations.CreateModel( name="HistoricalGlucose", fields=[ ( "revision", django_revision.revision_field.RevisionField( blank=True, editable=False, help_text= "System field. Git repository tag:branch:commit.", max_length=75, null=True, verbose_name="Revision", ), ), ( "created", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "modified", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "user_created", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user created", ), ), ( "user_modified", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user modified", ), ), ( "hostname_created", models.CharField( blank=True, default=_socket.gethostname, help_text="System field. (modified on create only)", max_length=60, ), ), ( "hostname_modified", django_audit_fields.fields.hostname_modification_field. HostnameModificationField( blank=True, help_text="System field. (modified on every save)", max_length=50, ), ), ("device_created", models.CharField(blank=True, max_length=10)), ("device_modified", models.CharField(blank=True, max_length=10)), ( "id", django_audit_fields.fields.uuid_auto_field.UUIDAutoField( blank=True, db_index=True, editable=False, help_text="System auto field. UUID primary key.", ), ), ( "report_datetime", models.DateTimeField( default=edc_utils.date.get_utcnow, help_text= "If reporting today, use today's date/time, otherwise use the date/time this information was reported.", validators=[ edc_protocol.validators. datetime_not_before_study_start, edc_model.validators.date.datetime_not_future, ], verbose_name="Report Date", ), ), ( "consent_model", models.CharField(editable=False, max_length=50, null=True), ), ( "consent_version", models.CharField(editable=False, max_length=10, null=True), ), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ( "fasted", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, null=True, verbose_name="Has the participant fasted?", ), ), ( "fasted_duration_str", models.CharField( blank=True, help_text= "Duration of fast. Format is `HHhMMm`. For example 1h23m, 12h7m, etc", max_length=8, null=True, validators=[ django.core.validators.RegexValidator( "^([0-9]{1,3}h([0-5]?[0-9]m)?)$", message= "Invalid format. Expected something like 1h20m, 11h5m, etc", ) ], verbose_name= "How long have they fasted in hours and/or minutes?", ), ), ( "fasted_duration_minutes", models.IntegerField(help_text="system calculated value", null=True), ), ( "fasting_glucose", models.DecimalField( blank=True, decimal_places=2, max_digits=8, null=True, verbose_name="Fasting glucose <u>level</u>", ), ), ( "fasting_glucose_quantifier", models.CharField( choices=[ ("=", "="), (">", ">"), (">=", ">="), ("<", "<"), ("<=", "<="), ], default="=", max_length=10, ), ), ( "fasting_glucose_units", models.CharField( blank=True, choices=[("mg/dL", "mg/dL"), ("mmol/L", "mmol/L")], max_length=15, null=True, verbose_name="Units (fasting glucose)", ), ), ( "fasting_glucose_datetime", models.DateTimeField( blank=True, null=True, verbose_name= "<u>Time</u> fasting glucose <u>level</u> measured", ), ), ( "ogtt_base_datetime", models.DateTimeField( blank=True, help_text="(glucose solution given)", null=True, verbose_name= "<u>Time</u> oral glucose solution was given", ), ), ( "ogtt_two_hr", models.DecimalField( blank=True, decimal_places=2, max_digits=8, null=True, verbose_name= "Blood glucose <u>level</u> 2-hours after oral glucose solution given", ), ), ( "ogtt_two_hr_quantifier", models.CharField( choices=[ ("=", "="), (">", ">"), (">=", ">="), ("<", "<"), ("<=", "<="), ], default="=", max_length=10, ), ), ( "ogtt_two_hr_units", models.CharField( blank=True, choices=[("mg/dL", "mg/dL"), ("mmol/L", "mmol/L")], max_length=15, null=True, verbose_name="Units (Blood glucose 2hrs after...)", ), ), ( "ogtt_two_hr_datetime", models.DateTimeField( blank=True, help_text="(2 hours after glucose solution given)", null=True, verbose_name= "<u>Time</u> blood glucose measured 2-hours after oral glucose solution given", ), ), ( "ifg_performed", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Was the IFG test performed?", ), ), ( "ifg_not_performed_reason", models.CharField( blank=True, max_length=150, null=True, verbose_name="If NO, provide reason", ), ), ( "ogtt_performed", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Was the OGTT test performed?", ), ), ( "ogtt_not_performed_reason", models.CharField( blank=True, max_length=150, null=True, verbose_name="If NO, provide reason", ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "history_user", models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "site", models.ForeignKey( blank=True, db_constraint=False, editable=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="sites.Site", ), ), ( "subject_visit", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="meta_subject.SubjectVisit", ), ), ], options={ "verbose_name": "historical Glucose (IFG, OGTT)", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name="Glucose", fields=[ ( "revision", django_revision.revision_field.RevisionField( blank=True, editable=False, help_text= "System field. Git repository tag:branch:commit.", max_length=75, null=True, verbose_name="Revision", ), ), ( "created", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "modified", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "user_created", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user created", ), ), ( "user_modified", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user modified", ), ), ( "hostname_created", models.CharField( blank=True, default=_socket.gethostname, help_text="System field. (modified on create only)", max_length=60, ), ), ( "hostname_modified", django_audit_fields.fields.hostname_modification_field. HostnameModificationField( blank=True, help_text="System field. (modified on every save)", max_length=50, ), ), ("device_created", models.CharField(blank=True, max_length=10)), ("device_modified", models.CharField(blank=True, max_length=10)), ( "id", django_audit_fields.fields.uuid_auto_field.UUIDAutoField( blank=True, editable=False, help_text="System auto field. UUID primary key.", primary_key=True, serialize=False, ), ), ( "report_datetime", models.DateTimeField( default=edc_utils.date.get_utcnow, help_text= "If reporting today, use today's date/time, otherwise use the date/time this information was reported.", validators=[ edc_protocol.validators. datetime_not_before_study_start, edc_model.validators.date.datetime_not_future, ], verbose_name="Report Date", ), ), ( "consent_model", models.CharField(editable=False, max_length=50, null=True), ), ( "consent_version", models.CharField(editable=False, max_length=10, null=True), ), ( "fasted", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, null=True, verbose_name="Has the participant fasted?", ), ), ( "fasted_duration_str", models.CharField( blank=True, help_text= "Duration of fast. Format is `HHhMMm`. For example 1h23m, 12h7m, etc", max_length=8, null=True, validators=[ django.core.validators.RegexValidator( "^([0-9]{1,3}h([0-5]?[0-9]m)?)$", message= "Invalid format. Expected something like 1h20m, 11h5m, etc", ) ], verbose_name= "How long have they fasted in hours and/or minutes?", ), ), ( "fasted_duration_minutes", models.IntegerField(help_text="system calculated value", null=True), ), ( "fasting_glucose", models.DecimalField( blank=True, decimal_places=2, max_digits=8, null=True, verbose_name="Fasting glucose <u>level</u>", ), ), ( "fasting_glucose_quantifier", models.CharField( choices=[ ("=", "="), (">", ">"), (">=", ">="), ("<", "<"), ("<=", "<="), ], default="=", max_length=10, ), ), ( "fasting_glucose_units", models.CharField( blank=True, choices=[("mg/dL", "mg/dL"), ("mmol/L", "mmol/L")], max_length=15, null=True, verbose_name="Units (fasting glucose)", ), ), ( "fasting_glucose_datetime", models.DateTimeField( blank=True, null=True, verbose_name= "<u>Time</u> fasting glucose <u>level</u> measured", ), ), ( "ogtt_base_datetime", models.DateTimeField( blank=True, help_text="(glucose solution given)", null=True, verbose_name= "<u>Time</u> oral glucose solution was given", ), ), ( "ogtt_two_hr", models.DecimalField( blank=True, decimal_places=2, max_digits=8, null=True, verbose_name= "Blood glucose <u>level</u> 2-hours after oral glucose solution given", ), ), ( "ogtt_two_hr_quantifier", models.CharField( choices=[ ("=", "="), (">", ">"), (">=", ">="), ("<", "<"), ("<=", "<="), ], default="=", max_length=10, ), ), ( "ogtt_two_hr_units", models.CharField( blank=True, choices=[("mg/dL", "mg/dL"), ("mmol/L", "mmol/L")], max_length=15, null=True, verbose_name="Units (Blood glucose 2hrs after...)", ), ), ( "ogtt_two_hr_datetime", models.DateTimeField( blank=True, help_text="(2 hours after glucose solution given)", null=True, verbose_name= "<u>Time</u> blood glucose measured 2-hours after oral glucose solution given", ), ), ( "ifg_performed", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Was the IFG test performed?", ), ), ( "ifg_not_performed_reason", models.CharField( blank=True, max_length=150, null=True, verbose_name="If NO, provide reason", ), ), ( "ogtt_performed", models.CharField( choices=[("Yes", "Yes"), ("No", "No")], max_length=15, verbose_name="Was the OGTT test performed?", ), ), ( "ogtt_not_performed_reason", models.CharField( blank=True, max_length=150, null=True, verbose_name="If NO, provide reason", ), ), ( "site", models.ForeignKey( editable=False, null=True, on_delete=django.db.models.deletion.PROTECT, related_name="+", to="sites.Site", ), ), ( "subject_visit", models.OneToOneField( on_delete=django.db.models.deletion.PROTECT, to="meta_subject.SubjectVisit", ), ), ], options={ "verbose_name": "Glucose (IFG, OGTT)", "verbose_name_plural": "Glucose (IFG, OGTT)", "abstract": False, "default_permissions": ( "add", "change", "delete", "view", "export", "import", ), }, managers=[ ("on_site", django.contrib.sites.managers.CurrentSiteManager()), ("objects", edc_visit_tracking.managers.CrfModelManager()), ], ), migrations.AddIndex( model_name="glucose", index=models.Index( fields=["subject_visit", "site", "id"], name="meta_subjec_subject_35e440_idx", ), ), ]
class Migration(migrations.Migration): dependencies = [("caluma_form", "0019_remove_answer_value_document")] operations = [ migrations.CreateModel( name="HistoricalAnswer", fields=[ ("created_at", models.DateTimeField(blank=True, editable=False)), ("modified_at", models.DateTimeField(blank=True, editable=False)), ( "created_by_user", models.CharField(blank=True, max_length=150, null=True), ), ( "created_by_group", models.CharField( blank=True, db_index=True, max_length=150, null=True ), ), ("history_user_id", models.CharField(max_length=150, null=True)), ( "id", models.UUIDField(db_index=True, default=uuid.uuid4, editable=False), ), ( "value", django.contrib.postgres.fields.jsonb.JSONField( blank=True, null=True ), ), ("meta", django.contrib.postgres.fields.jsonb.JSONField(default=dict)), ("date", models.DateField(blank=True, null=True)), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "document", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_form.Document", ), ), ( "file", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_form.File", ), ), ( "question", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_form.Question", ), ), ], options={ "verbose_name": "historical answer", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name="HistoricalAnswerDocument", fields=[ ("created_at", models.DateTimeField(blank=True, editable=False)), ("modified_at", models.DateTimeField(blank=True, editable=False)), ( "created_by_user", models.CharField(blank=True, max_length=150, null=True), ), ( "created_by_group", models.CharField( blank=True, db_index=True, max_length=150, null=True ), ), ("history_user_id", models.CharField(max_length=150, null=True)), ( "id", models.UUIDField(db_index=True, default=uuid.uuid4, editable=False), ), ( "sort", models.PositiveIntegerField( db_index=True, default=0, editable=False ), ), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "answer", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_form.Answer", ), ), ( "document", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_form.Document", ), ), ], options={ "verbose_name": "historical answer document", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name="HistoricalDocument", fields=[ ("created_at", models.DateTimeField(blank=True, editable=False)), ("modified_at", models.DateTimeField(blank=True, editable=False)), ( "created_by_user", models.CharField(blank=True, max_length=150, null=True), ), ( "created_by_group", models.CharField( blank=True, db_index=True, max_length=150, null=True ), ), ("history_user_id", models.CharField(max_length=150, null=True)), ( "id", models.UUIDField(db_index=True, default=uuid.uuid4, editable=False), ), ( "family", models.UUIDField( db_index=True, help_text="Family id which document belongs too." ), ), ("meta", django.contrib.postgres.fields.jsonb.JSONField(default=dict)), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "form", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_form.Form", ), ), ], options={ "verbose_name": "historical document", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name="HistoricalFile", fields=[ ("created_at", models.DateTimeField(blank=True, editable=False)), ("modified_at", models.DateTimeField(blank=True, editable=False)), ( "created_by_user", models.CharField(blank=True, max_length=150, null=True), ), ( "created_by_group", models.CharField( blank=True, db_index=True, max_length=150, null=True ), ), ("history_user_id", models.CharField(max_length=150, null=True)), ( "id", models.UUIDField(db_index=True, default=uuid.uuid4, editable=False), ), ("name", models.CharField(max_length=255)), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ], options={ "verbose_name": "historical file", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name="HistoricalForm", fields=[ ("created_at", models.DateTimeField(blank=True, editable=False)), ("modified_at", models.DateTimeField(blank=True, editable=False)), ( "created_by_user", models.CharField(blank=True, max_length=150, null=True), ), ( "created_by_group", models.CharField( blank=True, db_index=True, max_length=150, null=True ), ), ("history_user_id", models.CharField(max_length=150, null=True)), ("slug", models.SlugField()), ("name", localized_fields.fields.field.LocalizedField(required=[])), ( "description", localized_fields.fields.field.LocalizedField( blank=True, null=True, required=[] ), ), ("meta", django.contrib.postgres.fields.jsonb.JSONField(default=dict)), ("is_published", models.BooleanField(default=False)), ("is_archived", models.BooleanField(default=False)), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "source", models.ForeignKey( blank=True, db_constraint=False, help_text="Reference this form has been copied from", null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_form.Form", ), ), ], options={ "verbose_name": "historical form", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name="HistoricalFormQuestion", fields=[ ("created_at", models.DateTimeField(blank=True, editable=False)), ("modified_at", models.DateTimeField(blank=True, editable=False)), ( "created_by_user", models.CharField(blank=True, max_length=150, null=True), ), ( "created_by_group", models.CharField( blank=True, db_index=True, max_length=150, null=True ), ), ("history_user_id", models.CharField(max_length=150, null=True)), ( "id", models.UUIDField(db_index=True, default=uuid.uuid4, editable=False), ), ( "sort", models.PositiveIntegerField( db_index=True, default=0, editable=False ), ), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "form", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_form.Form", ), ), ( "question", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_form.Question", ), ), ], options={ "verbose_name": "historical form question", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name="HistoricalOption", fields=[ ("created_at", models.DateTimeField(blank=True, editable=False)), ("modified_at", models.DateTimeField(blank=True, editable=False)), ( "created_by_user", models.CharField(blank=True, max_length=150, null=True), ), ( "created_by_group", models.CharField( blank=True, db_index=True, max_length=150, null=True ), ), ("history_user_id", models.CharField(max_length=150, null=True)), ("slug", models.SlugField()), ("label", localized_fields.fields.field.LocalizedField(required=[])), ("meta", django.contrib.postgres.fields.jsonb.JSONField(default=dict)), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "source", models.ForeignKey( blank=True, db_constraint=False, help_text="Reference this option has been copied from", null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_form.Option", ), ), ], options={ "verbose_name": "historical option", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name="HistoricalQuestion", fields=[ ("created_at", models.DateTimeField(blank=True, editable=False)), ("modified_at", models.DateTimeField(blank=True, editable=False)), ( "created_by_user", models.CharField(blank=True, max_length=150, null=True), ), ( "created_by_group", models.CharField( blank=True, db_index=True, max_length=150, null=True ), ), ("history_user_id", models.CharField(max_length=150, null=True)), ("slug", models.SlugField()), ("label", localized_fields.fields.field.LocalizedField(required=[])), ( "type", models.CharField( choices=[ ("multiple_choice", "multiple_choice"), ("integer", "integer"), ("float", "float"), ("date", "date"), ("choice", "choice"), ("textarea", "textarea"), ("text", "text"), ("table", "table"), ("form", "form"), ("file", "file"), ("dynamic_choice", "dynamic_choice"), ("dynamic_multiple_choice", "dynamic_multiple_choice"), ("static", "static"), ], max_length=23, ), ), ("is_required", models.TextField(default="false")), ("is_hidden", models.TextField(default="false")), ("is_archived", models.BooleanField(default=False)), ( "placeholder", localized_fields.fields.field.LocalizedField( blank=True, null=True, required=[] ), ), ( "info_text", localized_fields.fields.field.LocalizedField( blank=True, null=True, required=[] ), ), ( "static_content", localized_fields.fields.text_field.LocalizedTextField( blank=True, null=True, required=[] ), ), ( "configuration", django.contrib.postgres.fields.jsonb.JSONField(default=dict), ), ("meta", django.contrib.postgres.fields.jsonb.JSONField(default=dict)), ( "data_source", models.CharField(blank=True, max_length=255, null=True), ), ( "format_validators", django.contrib.postgres.fields.ArrayField( base_field=models.CharField(max_length=255), blank=True, default=list, size=None, ), ), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "row_form", models.ForeignKey( blank=True, db_constraint=False, help_text="Form that represents rows of a TableQuestion", null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_form.Form", ), ), ( "source", models.ForeignKey( blank=True, db_constraint=False, help_text="Reference this question has been copied from", null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_form.Question", ), ), ( "sub_form", models.ForeignKey( blank=True, db_constraint=False, help_text="Form referenced in a FormQuestion", null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_form.Form", ), ), ], options={ "verbose_name": "historical question", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), migrations.CreateModel( name="HistoricalQuestionOption", fields=[ ("created_at", models.DateTimeField(blank=True, editable=False)), ("modified_at", models.DateTimeField(blank=True, editable=False)), ( "created_by_user", models.CharField(blank=True, max_length=150, null=True), ), ( "created_by_group", models.CharField( blank=True, db_index=True, max_length=150, null=True ), ), ("history_user_id", models.CharField(max_length=150, null=True)), ("id", models.CharField(db_index=True, max_length=255)), ( "sort", models.PositiveIntegerField( db_index=True, default=0, editable=False ), ), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "option", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_form.Option", ), ), ( "question", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name="+", to="caluma_form.Question", ), ), ], options={ "verbose_name": "historical question option", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), ]
class Migration(migrations.Migration): dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ("edc_visit_schedule", "0002_auto_20190305_0123"), ] operations = [ migrations.CreateModel( name="VisitSchedule", fields=[ ( "revision", django_revision.revision_field.RevisionField( blank=True, editable=False, help_text= "System field. Git repository tag:branch:commit.", max_length=75, null=True, verbose_name="Revision", ), ), ( "created", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "modified", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "user_created", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user created", ), ), ( "user_modified", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user modified", ), ), ( "hostname_created", models.CharField( blank=True, default=_socket.gethostname, help_text="System field. (modified on create only)", max_length=60, ), ), ( "hostname_modified", django_audit_fields.fields.hostname_modification_field. HostnameModificationField( blank=True, help_text="System field. (modified on every save)", max_length=50, ), ), ("device_created", models.CharField(blank=True, max_length=10)), ("device_modified", models.CharField(blank=True, max_length=10)), ( "id", django_audit_fields.fields.uuid_auto_field.UUIDAutoField( blank=True, editable=False, help_text="System auto field. UUID primary key.", primary_key=True, serialize=False, ), ), ("visit_schedule_name", models.CharField(max_length=150)), ("schedule_name", models.CharField(max_length=150)), ("visit_code", models.CharField(max_length=150)), ("visit_name", models.CharField(max_length=150)), ("visit_title", models.CharField(max_length=150)), ("timepoint", models.IntegerField()), ("active", models.BooleanField(default=False)), ], options={ "ordering": ("visit_schedule_name", "schedule_name", "visit_code") }, ), migrations.CreateModel( name="HistoricalVisitSchedule", fields=[ ( "revision", django_revision.revision_field.RevisionField( blank=True, editable=False, help_text= "System field. Git repository tag:branch:commit.", max_length=75, null=True, verbose_name="Revision", ), ), ( "created", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "modified", models.DateTimeField( blank=True, default=django_audit_fields.models.audit_model_mixin. utcnow, ), ), ( "user_created", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user created", ), ), ( "user_modified", django_audit_fields.fields.userfield.UserField( blank=True, help_text="Updated by admin.save_model", max_length=50, verbose_name="user modified", ), ), ( "hostname_created", models.CharField( blank=True, default=_socket.gethostname, help_text="System field. (modified on create only)", max_length=60, ), ), ( "hostname_modified", django_audit_fields.fields.hostname_modification_field. HostnameModificationField( blank=True, help_text="System field. (modified on every save)", max_length=50, ), ), ("device_created", models.CharField(blank=True, max_length=10)), ("device_modified", models.CharField(blank=True, max_length=10)), ( "id", django_audit_fields.fields.uuid_auto_field.UUIDAutoField( blank=True, db_index=True, editable=False, help_text="System auto field. UUID primary key.", ), ), ("visit_schedule_name", models.CharField(max_length=150)), ("schedule_name", models.CharField(max_length=150)), ("visit_code", models.CharField(max_length=150)), ("visit_name", models.CharField(max_length=150)), ("visit_title", models.CharField(max_length=150)), ("timepoint", models.IntegerField()), ("active", models.BooleanField(default=False)), ( "history_id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, ), ), ("history_date", models.DateTimeField()), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "history_user", models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ], options={ "verbose_name": "historical visit schedule", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, bases=(simple_history.models.HistoricalChanges, models.Model), ), ]