endoreg-db 0.5.2__py3-none-any.whl → 0.6.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of endoreg-db might be problematic. Click here for more details.
- endoreg_db/admin.py +90 -1
- endoreg_db/urls.py +173 -0
- endoreg_db/views.py +0 -3
- endoreg_db-0.6.0.dist-info/METADATA +151 -0
- endoreg_db-0.6.0.dist-info/RECORD +11 -0
- {endoreg_db-0.5.2.dist-info → endoreg_db-0.6.0.dist-info}/WHEEL +2 -1
- endoreg_db-0.6.0.dist-info/top_level.txt +1 -0
- endoreg_db/data/__init__.py +0 -72
- endoreg_db/data/active_model/data.yaml +0 -3
- endoreg_db/data/agl_service/data.yaml +0 -19
- endoreg_db/data/case_template/rule/00_patient_lab_sample_add_default_value.yaml +0 -167
- endoreg_db/data/case_template/rule/01_patient-set-age.yaml +0 -8
- endoreg_db/data/case_template/rule/01_patient-set-gender.yaml +0 -9
- endoreg_db/data/case_template/rule/11_create_patient_lab_sample.yaml +0 -23
- endoreg_db/data/case_template/rule/12_create-patient_medication-anticoagulation.yaml +0 -19
- endoreg_db/data/case_template/rule/13_create-patient_medication_schedule-anticoagulation.yaml +0 -19
- endoreg_db/data/case_template/rule/19_create_patient.yaml +0 -17
- endoreg_db/data/case_template/rule_type/base_types.yaml +0 -35
- endoreg_db/data/case_template/rule_value/.init +0 -0
- endoreg_db/data/case_template/rule_value_type/base_types.yaml +0 -59
- endoreg_db/data/case_template/template/base.yaml +0 -8
- endoreg_db/data/case_template/template_type/pre_endoscopy.yaml +0 -3
- endoreg_db/data/case_template/tmp/_rule_value +0 -13
- endoreg_db/data/case_template/tmp/rule/01_atrial_fibrillation.yaml +0 -21
- endoreg_db/data/case_template/tmp/rule/02_create_object.yaml +0 -10
- endoreg_db/data/case_template/tmp/template/atrial_fibrillation_low_risk.yaml +0 -7
- endoreg_db/data/center/data.yaml +0 -60
- endoreg_db/data/center_resource/green_endoscopy_dashboard_CenterResource.yaml +0 -144
- endoreg_db/data/center_waste/green_endoscopy_dashboard_CenterWaste.yaml +0 -48
- endoreg_db/data/disease/cardiovascular.yaml +0 -37
- endoreg_db/data/disease/hepatology.yaml +0 -5
- endoreg_db/data/disease/misc.yaml +0 -6
- endoreg_db/data/disease/renal.yaml +0 -5
- endoreg_db/data/disease_classification/chronic_kidney_disease.yaml +0 -6
- endoreg_db/data/disease_classification/coronary_vessel_disease.yaml +0 -6
- endoreg_db/data/disease_classification_choice/chronic_kidney_disease.yaml +0 -41
- endoreg_db/data/disease_classification_choice/coronary_vessel_disease.yaml +0 -20
- endoreg_db/data/distribution/date/patient.yaml +0 -7
- endoreg_db/data/distribution/multiple_categorical/.init +0 -0
- endoreg_db/data/distribution/numeric/.init +0 -0
- endoreg_db/data/distribution/single_categorical/patient.yaml +0 -7
- endoreg_db/data/emission_factor/green_endoscopy_dashboard_EmissionFactor.yaml +0 -132
- endoreg_db/data/endoscope_type/data.yaml +0 -11
- endoreg_db/data/endoscopy_processor/data.yaml +0 -47
- endoreg_db/data/event/cardiology.yaml +0 -28
- endoreg_db/data/event/neurology.yaml +0 -14
- endoreg_db/data/event/surgery.yaml +0 -13
- endoreg_db/data/event/thrombembolism.yaml +0 -20
- endoreg_db/data/examination/examinations/data.yaml +0 -66
- endoreg_db/data/examination/time/data.yaml +0 -48
- endoreg_db/data/examination/time-type/data.yaml +0 -8
- endoreg_db/data/examination/type/data.yaml +0 -5
- endoreg_db/data/gender/data.yaml +0 -18
- endoreg_db/data/information_source/data.yaml +0 -30
- endoreg_db/data/information_source/medication.yaml +0 -6
- endoreg_db/data/lab_value/cardiac_enzymes.yaml +0 -31
- endoreg_db/data/lab_value/coagulation.yaml +0 -49
- endoreg_db/data/lab_value/electrolytes.yaml +0 -190
- endoreg_db/data/lab_value/gastrointestinal_function.yaml +0 -121
- endoreg_db/data/lab_value/hematology.yaml +0 -169
- endoreg_db/data/lab_value/hormones.yaml +0 -53
- endoreg_db/data/lab_value/lipids.yaml +0 -44
- endoreg_db/data/lab_value/misc.yaml +0 -30
- endoreg_db/data/lab_value/renal_function.yaml +0 -11
- endoreg_db/data/label/label/data.yaml +0 -62
- endoreg_db/data/label/label-set/data.yaml +0 -18
- endoreg_db/data/label/label-type/data.yaml +0 -7
- endoreg_db/data/log_type/data.yaml +0 -57
- endoreg_db/data/material/material.yaml +0 -91
- endoreg_db/data/medication/anticoagulation.yaml +0 -65
- endoreg_db/data/medication/tah.yaml +0 -70
- endoreg_db/data/medication_indication/anticoagulation.yaml +0 -120
- endoreg_db/data/medication_indication_type/data.yaml +0 -11
- endoreg_db/data/medication_indication_type/thrombembolism.yaml +0 -41
- endoreg_db/data/medication_intake_time/base.yaml +0 -31
- endoreg_db/data/medication_schedule/apixaban.yaml +0 -95
- endoreg_db/data/medication_schedule/ass.yaml +0 -12
- endoreg_db/data/medication_schedule/enoxaparin.yaml +0 -26
- endoreg_db/data/model_type/data.yaml +0 -7
- endoreg_db/data/network_device/data.yaml +0 -29
- endoreg_db/data/network_device_type/data.yaml +0 -12
- endoreg_db/data/patient_lab_sample_type/generic.yaml +0 -6
- endoreg_db/data/pdf_type/data.yaml +0 -28
- endoreg_db/data/product/green_endoscopy_dashboard_Product.yaml +0 -66
- endoreg_db/data/product_group/green_endoscopy_dashboard_ProductGroup.yaml +0 -33
- endoreg_db/data/product_material/green_endoscopy_dashboard_ProductMaterial.yaml +0 -308
- endoreg_db/data/product_weight/green_endoscopy_dashboard_ProductWeight.yaml +0 -88
- endoreg_db/data/profession/data.yaml +0 -70
- endoreg_db/data/reference_product/green_endoscopy_dashboard_ReferenceProduct.yaml +0 -55
- endoreg_db/data/report_reader_flag/ukw-examination-generic.yaml +0 -26
- endoreg_db/data/report_reader_flag/ukw-histology-generic.yaml +0 -19
- endoreg_db/data/resource/green_endoscopy_dashboard_Resource.yaml +0 -15
- endoreg_db/data/tmp/chronic_kidney_disease.yaml +0 -0
- endoreg_db/data/tmp/congestive_heart_failure.yaml +0 -0
- endoreg_db/data/transport_route/green_endoscopy_dashboard_TransportRoute.yaml +0 -12
- endoreg_db/data/unit/concentration.yaml +0 -92
- endoreg_db/data/unit/data.yaml +0 -17
- endoreg_db/data/unit/length.yaml +0 -31
- endoreg_db/data/unit/misc.yaml +0 -20
- endoreg_db/data/unit/rate.yaml +0 -6
- endoreg_db/data/unit/time.yaml +0 -13
- endoreg_db/data/unit/volume.yaml +0 -35
- endoreg_db/data/unit/weight.yaml +0 -38
- endoreg_db/data/waste/data.yaml +0 -12
- endoreg_db/forms/__init__.py +0 -3
- endoreg_db/forms/questionnaires/__init__.py +0 -1
- endoreg_db/forms/questionnaires/tto_questionnaire.py +0 -23
- endoreg_db/forms/settings/__init__.py +0 -8
- endoreg_db/forms/unit.py +0 -6
- endoreg_db/management/commands/_load_model_template.py +0 -41
- endoreg_db/management/commands/delete_all.py +0 -18
- endoreg_db/management/commands/delete_legacy_images.py +0 -19
- endoreg_db/management/commands/delete_legacy_videos.py +0 -17
- endoreg_db/management/commands/extract_legacy_video_frames.py +0 -18
- endoreg_db/management/commands/fetch_legacy_image_dataset.py +0 -32
- endoreg_db/management/commands/fix_auth_permission.py +0 -20
- endoreg_db/management/commands/import_legacy_images.py +0 -94
- endoreg_db/management/commands/import_legacy_videos.py +0 -76
- endoreg_db/management/commands/load_active_model_data.py +0 -45
- endoreg_db/management/commands/load_ai_model_data.py +0 -45
- endoreg_db/management/commands/load_base_db_data.py +0 -136
- endoreg_db/management/commands/load_center_data.py +0 -43
- endoreg_db/management/commands/load_disease_classification_choices_data.py +0 -41
- endoreg_db/management/commands/load_disease_classification_data.py +0 -41
- endoreg_db/management/commands/load_disease_data.py +0 -40
- endoreg_db/management/commands/load_distribution_data.py +0 -66
- endoreg_db/management/commands/load_endoscope_type_data.py +0 -45
- endoreg_db/management/commands/load_endoscopy_processor_data.py +0 -45
- endoreg_db/management/commands/load_event_data.py +0 -41
- endoreg_db/management/commands/load_examination_data.py +0 -75
- endoreg_db/management/commands/load_g_play_data.py +0 -113
- endoreg_db/management/commands/load_gender_data.py +0 -44
- endoreg_db/management/commands/load_green_endoscopy_wuerzburg_data.py +0 -133
- endoreg_db/management/commands/load_information_source.py +0 -45
- endoreg_db/management/commands/load_lab_value_data.py +0 -50
- endoreg_db/management/commands/load_label_data.py +0 -67
- endoreg_db/management/commands/load_logging_data.py +0 -39
- endoreg_db/management/commands/load_medication_data.py +0 -41
- endoreg_db/management/commands/load_medication_indication_data.py +0 -63
- endoreg_db/management/commands/load_medication_indication_type_data.py +0 -41
- endoreg_db/management/commands/load_medication_intake_time_data.py +0 -41
- endoreg_db/management/commands/load_medication_schedule_data.py +0 -55
- endoreg_db/management/commands/load_network_data.py +0 -57
- endoreg_db/management/commands/load_pdf_type_data.py +0 -61
- endoreg_db/management/commands/load_profession_data.py +0 -44
- endoreg_db/management/commands/load_report_reader_flag.py +0 -46
- endoreg_db/management/commands/load_unit_data.py +0 -46
- endoreg_db/management/commands/load_user_groups.py +0 -28
- endoreg_db/management/commands/register_ai_model.py +0 -64
- endoreg_db/management/commands/reset_celery_schedule.py +0 -9
- endoreg_db/migrations/0001_initial.py +0 -1567
- endoreg_db/migrations/0002_anonymizedimagelabel_anonymousimageannotation_and_more.py +0 -55
- endoreg_db/migrations/0003_anonymousimageannotation_original_image_url_and_more.py +0 -39
- endoreg_db/migrations/0004_alter_rawpdffile_file.py +0 -20
- endoreg_db/migrations/0005_uploadedfile_alter_rawpdffile_file_anonymizedfile.py +0 -40
- endoreg_db/migrations/0006_alter_rawpdffile_file.py +0 -20
- endoreg_db/migrations/0007_networkdevicelogentry_datetime_and_more.py +0 -43
- endoreg_db/migrations/0008_networkdevicelogentry_aglnet_ip_and_more.py +0 -28
- endoreg_db/migrations/0009_alter_networkdevicelogentry_vpn_service_status.py +0 -18
- endoreg_db/migrations/0010_remove_networkdevicelogentry_hostname.py +0 -17
- endoreg_db/migrations/__init__.py +0 -0
- endoreg_db/models/__init__.py +0 -73
- endoreg_db/models/ai_model/__init__.py +0 -3
- endoreg_db/models/ai_model/active_model.py +0 -9
- endoreg_db/models/ai_model/model_meta.py +0 -24
- endoreg_db/models/ai_model/model_type.py +0 -26
- endoreg_db/models/ai_model/utils.py +0 -8
- endoreg_db/models/annotation/__init__.py +0 -3
- endoreg_db/models/annotation/anonymized_image_annotation.py +0 -60
- endoreg_db/models/annotation/binary_classification_annotation_task.py +0 -80
- endoreg_db/models/annotation/image_classification.py +0 -27
- endoreg_db/models/case_template/__init__.py +0 -6
- endoreg_db/models/case_template/case_template.py +0 -81
- endoreg_db/models/case_template/case_template_rule.py +0 -276
- endoreg_db/models/case_template/case_template_rule_value.py +0 -73
- endoreg_db/models/case_template/case_template_type.py +0 -28
- endoreg_db/models/center/__init__.py +0 -4
- endoreg_db/models/center/center.py +0 -25
- endoreg_db/models/center/center_product.py +0 -34
- endoreg_db/models/center/center_resource.py +0 -19
- endoreg_db/models/center/center_waste.py +0 -11
- endoreg_db/models/data_file/__init__.py +0 -6
- endoreg_db/models/data_file/base_classes/__init__.py +0 -2
- endoreg_db/models/data_file/base_classes/abstract_frame.py +0 -51
- endoreg_db/models/data_file/base_classes/abstract_video.py +0 -201
- endoreg_db/models/data_file/frame.py +0 -45
- endoreg_db/models/data_file/import_classes/__init__.py +0 -32
- endoreg_db/models/data_file/import_classes/processing_functions/__init__.py +0 -35
- endoreg_db/models/data_file/import_classes/processing_functions/pdf.py +0 -28
- endoreg_db/models/data_file/import_classes/processing_functions/video.py +0 -260
- endoreg_db/models/data_file/import_classes/raw_pdf.py +0 -188
- endoreg_db/models/data_file/import_classes/raw_video.py +0 -343
- endoreg_db/models/data_file/metadata/__init__.py +0 -3
- endoreg_db/models/data_file/metadata/pdf_meta.py +0 -70
- endoreg_db/models/data_file/metadata/sensitive_meta.py +0 -31
- endoreg_db/models/data_file/metadata/video_meta.py +0 -133
- endoreg_db/models/data_file/report_file.py +0 -89
- endoreg_db/models/data_file/video/__init__.py +0 -7
- endoreg_db/models/data_file/video/import_meta.py +0 -25
- endoreg_db/models/data_file/video/video.py +0 -25
- endoreg_db/models/data_file/video_segment.py +0 -107
- endoreg_db/models/disease.py +0 -56
- endoreg_db/models/emission/__init__.py +0 -1
- endoreg_db/models/emission/emission_factor.py +0 -20
- endoreg_db/models/event.py +0 -22
- endoreg_db/models/examination/__init__.py +0 -4
- endoreg_db/models/examination/examination.py +0 -26
- endoreg_db/models/examination/examination_time.py +0 -27
- endoreg_db/models/examination/examination_time_type.py +0 -24
- endoreg_db/models/examination/examination_type.py +0 -18
- endoreg_db/models/hardware/__init__.py +0 -2
- endoreg_db/models/hardware/endoscope.py +0 -44
- endoreg_db/models/hardware/endoscopy_processor.py +0 -143
- endoreg_db/models/information_source.py +0 -29
- endoreg_db/models/label/__init__.py +0 -1
- endoreg_db/models/label/label.py +0 -84
- endoreg_db/models/laboratory/__init__.py +0 -1
- endoreg_db/models/laboratory/lab_value.py +0 -102
- endoreg_db/models/legacy_data/__init__.py +0 -3
- endoreg_db/models/legacy_data/image.py +0 -34
- endoreg_db/models/logging/__init__.py +0 -4
- endoreg_db/models/logging/agl_service.py +0 -19
- endoreg_db/models/logging/base.py +0 -22
- endoreg_db/models/logging/log_type.py +0 -23
- endoreg_db/models/logging/network_device.py +0 -27
- endoreg_db/models/medication/__init__.py +0 -1
- endoreg_db/models/medication/medication.py +0 -148
- endoreg_db/models/network/__init__.py +0 -3
- endoreg_db/models/network/agl_service.py +0 -38
- endoreg_db/models/network/network_device.py +0 -53
- endoreg_db/models/network/network_device_type.py +0 -23
- endoreg_db/models/other/__init__.py +0 -5
- endoreg_db/models/other/distribution.py +0 -215
- endoreg_db/models/other/material.py +0 -16
- endoreg_db/models/other/resource.py +0 -18
- endoreg_db/models/other/transport_route.py +0 -21
- endoreg_db/models/other/waste.py +0 -20
- endoreg_db/models/patient_examination/__init__.py +0 -35
- endoreg_db/models/permissions/__init__.py +0 -44
- endoreg_db/models/persons/__init__.py +0 -7
- endoreg_db/models/persons/examiner/__init__.py +0 -2
- endoreg_db/models/persons/examiner/examiner.py +0 -16
- endoreg_db/models/persons/examiner/examiner_type.py +0 -2
- endoreg_db/models/persons/first_name.py +0 -18
- endoreg_db/models/persons/gender.py +0 -22
- endoreg_db/models/persons/last_name.py +0 -20
- endoreg_db/models/persons/patient/__init__.py +0 -8
- endoreg_db/models/persons/patient/case/__init__.py +0 -0
- endoreg_db/models/persons/patient/case/case.py +0 -30
- endoreg_db/models/persons/patient/patient.py +0 -216
- endoreg_db/models/persons/patient/patient_disease.py +0 -16
- endoreg_db/models/persons/patient/patient_event.py +0 -22
- endoreg_db/models/persons/patient/patient_lab_sample.py +0 -106
- endoreg_db/models/persons/patient/patient_lab_value.py +0 -176
- endoreg_db/models/persons/patient/patient_medication.py +0 -44
- endoreg_db/models/persons/patient/patient_medication_schedule.py +0 -28
- endoreg_db/models/persons/person.py +0 -31
- endoreg_db/models/persons/portal_user_information.py +0 -27
- endoreg_db/models/prediction/__init__.py +0 -2
- endoreg_db/models/prediction/image_classification.py +0 -37
- endoreg_db/models/prediction/video_prediction_meta.py +0 -244
- endoreg_db/models/product/__init__.py +0 -5
- endoreg_db/models/product/product.py +0 -97
- endoreg_db/models/product/product_group.py +0 -19
- endoreg_db/models/product/product_material.py +0 -24
- endoreg_db/models/product/product_weight.py +0 -26
- endoreg_db/models/product/reference_product.py +0 -99
- endoreg_db/models/questionnaires/__init__.py +0 -114
- endoreg_db/models/quiz/__init__.py +0 -2
- endoreg_db/models/quiz/quiz_answer.py +0 -41
- endoreg_db/models/quiz/quiz_question.py +0 -54
- endoreg_db/models/report_reader/__init__.py +0 -2
- endoreg_db/models/report_reader/report_reader_config.py +0 -53
- endoreg_db/models/report_reader/report_reader_flag.py +0 -20
- endoreg_db/models/rules/__init__.py +0 -5
- endoreg_db/models/rules/rule.py +0 -24
- endoreg_db/models/rules/rule_applicator.py +0 -224
- endoreg_db/models/rules/rule_attribute_dtype.py +0 -19
- endoreg_db/models/rules/rule_type.py +0 -22
- endoreg_db/models/rules/ruleset.py +0 -19
- endoreg_db/models/unit.py +0 -22
- endoreg_db/queries/__init__.py +0 -5
- endoreg_db/queries/annotations/__init__.py +0 -3
- endoreg_db/queries/annotations/legacy.py +0 -158
- endoreg_db/queries/get/__init__.py +0 -6
- endoreg_db/queries/get/annotation.py +0 -0
- endoreg_db/queries/get/center.py +0 -42
- endoreg_db/queries/get/model.py +0 -13
- endoreg_db/queries/get/patient.py +0 -14
- endoreg_db/queries/get/patient_examination.py +0 -20
- endoreg_db/queries/get/prediction.py +0 -0
- endoreg_db/queries/get/report_file.py +0 -33
- endoreg_db/queries/get/video.py +0 -31
- endoreg_db/queries/get/video_import_meta.py +0 -0
- endoreg_db/queries/get/video_prediction_meta.py +0 -0
- endoreg_db/queries/sanity/__init_.py +0 -0
- endoreg_db/serializers/__init__.py +0 -10
- endoreg_db/serializers/ai_model.py +0 -19
- endoreg_db/serializers/annotation.py +0 -17
- endoreg_db/serializers/center.py +0 -11
- endoreg_db/serializers/examination.py +0 -33
- endoreg_db/serializers/frame.py +0 -13
- endoreg_db/serializers/hardware.py +0 -21
- endoreg_db/serializers/label.py +0 -22
- endoreg_db/serializers/patient.py +0 -10
- endoreg_db/serializers/prediction.py +0 -15
- endoreg_db/serializers/report_file.py +0 -7
- endoreg_db/serializers/video.py +0 -27
- endoreg_db/utils/__init__.py +0 -1
- endoreg_db/utils/cropping.py +0 -29
- endoreg_db/utils/dataloader.py +0 -92
- endoreg_db/utils/file_operations.py +0 -30
- endoreg_db/utils/hashs.py +0 -34
- endoreg_db/utils/legacy_ocr.py +0 -201
- endoreg_db/utils/ocr.py +0 -190
- endoreg_db/utils/uuid.py +0 -4
- endoreg_db/utils/video_metadata.py +0 -87
- endoreg_db-0.5.2.dist-info/METADATA +0 -27
- endoreg_db-0.5.2.dist-info/RECORD +0 -319
- {endoreg_db-0.5.2.dist-info/licenses → endoreg_db-0.6.0.dist-info}/LICENSE +0 -0
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
from django.core.management.base import BaseCommand
|
|
2
|
-
from endoreg_db.models import Medication, Unit
|
|
3
|
-
from ...utils import load_model_data_from_yaml
|
|
4
|
-
from ...data import MEDICATION_DATA_DIR as SOURCE_DIR
|
|
5
|
-
|
|
6
|
-
MODEL_0 = Medication
|
|
7
|
-
|
|
8
|
-
IMPORT_MODELS = [ # string as model key, serves as key in IMPORT_METADATA
|
|
9
|
-
MODEL_0.__name__,
|
|
10
|
-
]
|
|
11
|
-
|
|
12
|
-
IMPORT_METADATA = {
|
|
13
|
-
MODEL_0.__name__: {
|
|
14
|
-
"dir": SOURCE_DIR, # e.g. "interventions"
|
|
15
|
-
"model": MODEL_0, # e.g. Intervention
|
|
16
|
-
"foreign_keys": ["default_unit"], # e.g. ["intervention_types"]
|
|
17
|
-
"foreign_key_models": [Unit] # e.g. [InterventionType]
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
class Command(BaseCommand):
|
|
22
|
-
help = """Load all .yaml files in the data/intervention directory
|
|
23
|
-
into the Intervention and InterventionType model"""
|
|
24
|
-
|
|
25
|
-
def add_arguments(self, parser):
|
|
26
|
-
parser.add_argument(
|
|
27
|
-
'--verbose',
|
|
28
|
-
action='store_true',
|
|
29
|
-
help='Display verbose output',
|
|
30
|
-
)
|
|
31
|
-
|
|
32
|
-
def handle(self, *args, **options):
|
|
33
|
-
verbose = options['verbose']
|
|
34
|
-
for model_name in IMPORT_MODELS:
|
|
35
|
-
_metadata = IMPORT_METADATA[model_name]
|
|
36
|
-
load_model_data_from_yaml(
|
|
37
|
-
self,
|
|
38
|
-
model_name,
|
|
39
|
-
_metadata,
|
|
40
|
-
verbose
|
|
41
|
-
)
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
from django.core.management.base import BaseCommand
|
|
2
|
-
from endoreg_db.models import (
|
|
3
|
-
MedicationIndication,
|
|
4
|
-
MedicationIndicationType,
|
|
5
|
-
MedicationSchedule,
|
|
6
|
-
Disease,
|
|
7
|
-
Event,
|
|
8
|
-
DiseaseClassificationChoice,
|
|
9
|
-
InformationSource
|
|
10
|
-
)
|
|
11
|
-
from ...utils import load_model_data_from_yaml
|
|
12
|
-
from ...data import MEDICATION_INDICATION_DATA_DIR as SOURCE_DIR
|
|
13
|
-
|
|
14
|
-
MODEL_0 = MedicationIndication
|
|
15
|
-
|
|
16
|
-
IMPORT_MODELS = [ # string as model key, serves as key in IMPORT_METADATA
|
|
17
|
-
MODEL_0.__name__,
|
|
18
|
-
]
|
|
19
|
-
|
|
20
|
-
IMPORT_METADATA = {
|
|
21
|
-
MODEL_0.__name__: {
|
|
22
|
-
"dir": SOURCE_DIR, # e.g. "interventions"
|
|
23
|
-
"model": MODEL_0, # e.g. Intervention
|
|
24
|
-
"foreign_keys": [
|
|
25
|
-
"indication_type",
|
|
26
|
-
"medication_schedules",
|
|
27
|
-
"diseases",
|
|
28
|
-
"events",
|
|
29
|
-
"classification_choices",
|
|
30
|
-
"sources"
|
|
31
|
-
], # e.g. ["intervention_types"]
|
|
32
|
-
"foreign_key_models": [
|
|
33
|
-
MedicationIndicationType,
|
|
34
|
-
MedicationSchedule,
|
|
35
|
-
Disease,
|
|
36
|
-
Event,
|
|
37
|
-
DiseaseClassificationChoice,
|
|
38
|
-
InformationSource
|
|
39
|
-
] # e.g. [InterventionType]
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
class Command(BaseCommand):
|
|
44
|
-
help = """Load all .yaml files in the data/intervention directory
|
|
45
|
-
into the Intervention and InterventionType model"""
|
|
46
|
-
|
|
47
|
-
def add_arguments(self, parser):
|
|
48
|
-
parser.add_argument(
|
|
49
|
-
'--verbose',
|
|
50
|
-
action='store_true',
|
|
51
|
-
help='Display verbose output',
|
|
52
|
-
)
|
|
53
|
-
|
|
54
|
-
def handle(self, *args, **options):
|
|
55
|
-
verbose = options['verbose']
|
|
56
|
-
for model_name in IMPORT_MODELS:
|
|
57
|
-
_metadata = IMPORT_METADATA[model_name]
|
|
58
|
-
load_model_data_from_yaml(
|
|
59
|
-
self,
|
|
60
|
-
model_name,
|
|
61
|
-
_metadata,
|
|
62
|
-
verbose
|
|
63
|
-
)
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
from django.core.management.base import BaseCommand
|
|
2
|
-
from endoreg_db.models import MedicationIndicationType
|
|
3
|
-
from ...utils import load_model_data_from_yaml
|
|
4
|
-
from ...data import MEDICATION_INDICATION_TYPE_DATA_DIR as SOURCE_DIR
|
|
5
|
-
|
|
6
|
-
MODEL_0 = MedicationIndicationType
|
|
7
|
-
|
|
8
|
-
IMPORT_MODELS = [ # string as model key, serves as key in IMPORT_METADATA
|
|
9
|
-
MODEL_0.__name__,
|
|
10
|
-
]
|
|
11
|
-
|
|
12
|
-
IMPORT_METADATA = {
|
|
13
|
-
MODEL_0.__name__: {
|
|
14
|
-
"dir": SOURCE_DIR, # e.g. "interventions"
|
|
15
|
-
"model": MODEL_0, # e.g. Intervention
|
|
16
|
-
"foreign_keys": [], # e.g. ["intervention_types"]
|
|
17
|
-
"foreign_key_models": [] # e.g. [InterventionType]
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
class Command(BaseCommand):
|
|
22
|
-
help = """Load all .yaml files in the data/intervention directory
|
|
23
|
-
into the Intervention and InterventionType model"""
|
|
24
|
-
|
|
25
|
-
def add_arguments(self, parser):
|
|
26
|
-
parser.add_argument(
|
|
27
|
-
'--verbose',
|
|
28
|
-
action='store_true',
|
|
29
|
-
help='Display verbose output',
|
|
30
|
-
)
|
|
31
|
-
|
|
32
|
-
def handle(self, *args, **options):
|
|
33
|
-
verbose = options['verbose']
|
|
34
|
-
for model_name in IMPORT_MODELS:
|
|
35
|
-
_metadata = IMPORT_METADATA[model_name]
|
|
36
|
-
load_model_data_from_yaml(
|
|
37
|
-
self,
|
|
38
|
-
model_name,
|
|
39
|
-
_metadata,
|
|
40
|
-
verbose
|
|
41
|
-
)
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
from django.core.management.base import BaseCommand
|
|
2
|
-
from endoreg_db.models import MedicationIntakeTime
|
|
3
|
-
from ...utils import load_model_data_from_yaml
|
|
4
|
-
from ...data import MEDICATION_INTAKE_TIME_DATA_DIR as SOURCE_DIR
|
|
5
|
-
|
|
6
|
-
MODEL_0 = MedicationIntakeTime
|
|
7
|
-
|
|
8
|
-
IMPORT_MODELS = [ # string as model key, serves as key in IMPORT_METADATA
|
|
9
|
-
MODEL_0.__name__,
|
|
10
|
-
]
|
|
11
|
-
|
|
12
|
-
IMPORT_METADATA = {
|
|
13
|
-
MODEL_0.__name__: {
|
|
14
|
-
"dir": SOURCE_DIR, # e.g. "interventions"
|
|
15
|
-
"model": MODEL_0, # e.g. Intervention
|
|
16
|
-
"foreign_keys": [], # e.g. ["intervention_types"]
|
|
17
|
-
"foreign_key_models": [] # e.g. [InterventionType]
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
class Command(BaseCommand):
|
|
22
|
-
help = """Load all .yaml files in the data/intervention directory
|
|
23
|
-
into the Intervention and InterventionType model"""
|
|
24
|
-
|
|
25
|
-
def add_arguments(self, parser):
|
|
26
|
-
parser.add_argument(
|
|
27
|
-
'--verbose',
|
|
28
|
-
action='store_true',
|
|
29
|
-
help='Display verbose output',
|
|
30
|
-
)
|
|
31
|
-
|
|
32
|
-
def handle(self, *args, **options):
|
|
33
|
-
verbose = options['verbose']
|
|
34
|
-
for model_name in IMPORT_MODELS:
|
|
35
|
-
_metadata = IMPORT_METADATA[model_name]
|
|
36
|
-
load_model_data_from_yaml(
|
|
37
|
-
self,
|
|
38
|
-
model_name,
|
|
39
|
-
_metadata,
|
|
40
|
-
verbose
|
|
41
|
-
)
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
from django.core.management.base import BaseCommand
|
|
2
|
-
from endoreg_db.models import (
|
|
3
|
-
MedicationSchedule,
|
|
4
|
-
Medication,
|
|
5
|
-
MedicationIntakeTime,
|
|
6
|
-
Unit,
|
|
7
|
-
InformationSource
|
|
8
|
-
)
|
|
9
|
-
from ...utils import load_model_data_from_yaml
|
|
10
|
-
from ...data import MEDICATION_SCHEDULE_DATA_DIR as SOURCE_DIR
|
|
11
|
-
|
|
12
|
-
MODEL_0 = MedicationSchedule
|
|
13
|
-
|
|
14
|
-
IMPORT_MODELS = [ # string as model key, serves as key in IMPORT_METADATA
|
|
15
|
-
MODEL_0.__name__,
|
|
16
|
-
]
|
|
17
|
-
|
|
18
|
-
IMPORT_METADATA = {
|
|
19
|
-
MODEL_0.__name__: {
|
|
20
|
-
"dir": SOURCE_DIR, # e.g. "interventions"
|
|
21
|
-
"model": MODEL_0, # e.g. Intervention
|
|
22
|
-
"foreign_keys": [
|
|
23
|
-
"medication",
|
|
24
|
-
"intake_times",
|
|
25
|
-
"unit",
|
|
26
|
-
], # e.g. ["intervention_types"]
|
|
27
|
-
"foreign_key_models": [
|
|
28
|
-
Medication,
|
|
29
|
-
MedicationIntakeTime,
|
|
30
|
-
Unit,
|
|
31
|
-
] # e.g. [InterventionType]
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
class Command(BaseCommand):
|
|
36
|
-
help = """Load all .yaml files in the data/intervention directory
|
|
37
|
-
into the Intervention and InterventionType model"""
|
|
38
|
-
|
|
39
|
-
def add_arguments(self, parser):
|
|
40
|
-
parser.add_argument(
|
|
41
|
-
'--verbose',
|
|
42
|
-
action='store_true',
|
|
43
|
-
help='Display verbose output',
|
|
44
|
-
)
|
|
45
|
-
|
|
46
|
-
def handle(self, *args, **options):
|
|
47
|
-
verbose = options['verbose']
|
|
48
|
-
for model_name in IMPORT_MODELS:
|
|
49
|
-
_metadata = IMPORT_METADATA[model_name]
|
|
50
|
-
load_model_data_from_yaml(
|
|
51
|
-
self,
|
|
52
|
-
model_name,
|
|
53
|
-
_metadata,
|
|
54
|
-
verbose
|
|
55
|
-
)
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
from django.core.management.base import BaseCommand
|
|
2
|
-
from endoreg_db.models import NetworkDevice, NetworkDeviceType, AglService
|
|
3
|
-
from ...utils import load_model_data_from_yaml
|
|
4
|
-
from ...data import NETWORK_DEVICE_DATA_DIR, NETWORK_DEVICE_TYPE_DATA_DIR, AGL_SERVICE_DATA_DIR
|
|
5
|
-
|
|
6
|
-
MODEL_0 = NetworkDeviceType
|
|
7
|
-
MODEL_1 = NetworkDevice
|
|
8
|
-
MODEL_2 = AglService
|
|
9
|
-
|
|
10
|
-
IMPORT_MODELS = [ # string as model key, serves as key in IMPORT_METADATA
|
|
11
|
-
MODEL_0.__name__,
|
|
12
|
-
MODEL_1.__name__,
|
|
13
|
-
MODEL_2.__name__,
|
|
14
|
-
]
|
|
15
|
-
|
|
16
|
-
IMPORT_METADATA = {
|
|
17
|
-
MODEL_0.__name__: {
|
|
18
|
-
"dir": NETWORK_DEVICE_TYPE_DATA_DIR, # e.g. "interventions"
|
|
19
|
-
"model": MODEL_0, # e.g. Intervention
|
|
20
|
-
"foreign_keys": [], # e.g. ["intervention_types"]
|
|
21
|
-
"foreign_key_models": [] # e.g. [InterventionType]
|
|
22
|
-
},
|
|
23
|
-
MODEL_1.__name__: {
|
|
24
|
-
"dir": NETWORK_DEVICE_DATA_DIR, # e.g. "interventions"
|
|
25
|
-
"model": MODEL_1, # e.g. Intervention
|
|
26
|
-
"foreign_keys": ["device_type"], # e.g. ["intervention_types"]
|
|
27
|
-
"foreign_key_models": [NetworkDeviceType] # e.g. [InterventionType]
|
|
28
|
-
},
|
|
29
|
-
MODEL_2.__name__: {
|
|
30
|
-
"dir": AGL_SERVICE_DATA_DIR, # e.g. "interventions"
|
|
31
|
-
"model": MODEL_2, # e.g. Intervention
|
|
32
|
-
"foreign_keys": ["devices"], # e.g. ["intervention_types"]
|
|
33
|
-
"foreign_key_models": [NetworkDevice] # e.g. [InterventionType]
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
class Command(BaseCommand):
|
|
38
|
-
help = """Load all .yaml files in the data/intervention directory
|
|
39
|
-
into the Intervention and InterventionType model"""
|
|
40
|
-
|
|
41
|
-
def add_arguments(self, parser):
|
|
42
|
-
parser.add_argument(
|
|
43
|
-
'--verbose',
|
|
44
|
-
action='store_true',
|
|
45
|
-
help='Display verbose output',
|
|
46
|
-
)
|
|
47
|
-
|
|
48
|
-
def handle(self, *args, **options):
|
|
49
|
-
verbose = options['verbose']
|
|
50
|
-
for model_name in IMPORT_MODELS:
|
|
51
|
-
_metadata = IMPORT_METADATA[model_name]
|
|
52
|
-
load_model_data_from_yaml(
|
|
53
|
-
self,
|
|
54
|
-
model_name,
|
|
55
|
-
_metadata,
|
|
56
|
-
verbose
|
|
57
|
-
)
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
from django.conf import settings
|
|
2
|
-
import os
|
|
3
|
-
from django.core.management.base import BaseCommand
|
|
4
|
-
|
|
5
|
-
import yaml
|
|
6
|
-
from ...utils import load_model_data_from_yaml
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
#### CUSTOMIZE
|
|
10
|
-
from ...models import PdfType, ReportReaderFlag
|
|
11
|
-
from ...data import PDF_TYPE_DATA_DIR
|
|
12
|
-
|
|
13
|
-
SOURCE_DIR = PDF_TYPE_DATA_DIR # e.g. settings.DATA_DIR_INTERVENTION
|
|
14
|
-
|
|
15
|
-
MODEL_0 = PdfType
|
|
16
|
-
|
|
17
|
-
IMPORT_MODELS = [ # string as model key, serves as key in IMPORT_METADATA
|
|
18
|
-
MODEL_0.__name__,
|
|
19
|
-
]
|
|
20
|
-
|
|
21
|
-
IMPORT_METADATA = {
|
|
22
|
-
MODEL_0.__name__: {
|
|
23
|
-
"dir": SOURCE_DIR, # e.g. "interventions"
|
|
24
|
-
"model": MODEL_0, # e.g. Intervention
|
|
25
|
-
"foreign_keys": [
|
|
26
|
-
"patient_info_line",
|
|
27
|
-
"endoscope_info_line",
|
|
28
|
-
"examiner_info_line",
|
|
29
|
-
"cut_off_below_lines",
|
|
30
|
-
"cut_off_above_lines"
|
|
31
|
-
], # e.g. ["intervention_types"]
|
|
32
|
-
"foreign_key_models": [
|
|
33
|
-
ReportReaderFlag,
|
|
34
|
-
ReportReaderFlag,
|
|
35
|
-
ReportReaderFlag,
|
|
36
|
-
ReportReaderFlag,
|
|
37
|
-
ReportReaderFlag
|
|
38
|
-
] # e.g. [InterventionType]
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
class Command(BaseCommand):
|
|
43
|
-
help = f"""Load all .yaml files in the {SOURCE_DIR} directory"""
|
|
44
|
-
|
|
45
|
-
def add_arguments(self, parser):
|
|
46
|
-
parser.add_argument(
|
|
47
|
-
'--verbose',
|
|
48
|
-
action='store_true',
|
|
49
|
-
help='Display verbose output',
|
|
50
|
-
)
|
|
51
|
-
|
|
52
|
-
def handle(self, *args, **options):
|
|
53
|
-
verbose = options['verbose']
|
|
54
|
-
for model_name in IMPORT_MODELS:
|
|
55
|
-
_metadata = IMPORT_METADATA[model_name]
|
|
56
|
-
load_model_data_from_yaml(
|
|
57
|
-
self,
|
|
58
|
-
model_name,
|
|
59
|
-
_metadata,
|
|
60
|
-
verbose
|
|
61
|
-
)
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
from django.conf import settings
|
|
2
|
-
from django.core.management.base import BaseCommand
|
|
3
|
-
from ...models import Profession
|
|
4
|
-
from ...utils import load_model_data_from_yaml
|
|
5
|
-
from ...data import PROFESSION_DATA_DIR
|
|
6
|
-
|
|
7
|
-
SOURCE_DIR = PROFESSION_DATA_DIR # e.g. settings.DATA_DIR_INTERVENTION
|
|
8
|
-
|
|
9
|
-
MODEL_0 = Profession
|
|
10
|
-
|
|
11
|
-
IMPORT_MODELS = [ # string as model key, serves as key in IMPORT_METADATA
|
|
12
|
-
MODEL_0.__name__,
|
|
13
|
-
]
|
|
14
|
-
|
|
15
|
-
IMPORT_METADATA = {
|
|
16
|
-
MODEL_0.__name__: {
|
|
17
|
-
"dir": SOURCE_DIR, # e.g. "interventions"
|
|
18
|
-
"model": MODEL_0, # e.g. Intervention
|
|
19
|
-
"foreign_keys": [], # e.g. ["intervention_types"]
|
|
20
|
-
"foreign_key_models": [] # e.g. [InterventionType]
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
class Command(BaseCommand):
|
|
25
|
-
help = """Load all .yaml files in the data/intervention directory
|
|
26
|
-
into the Intervention and InterventionType model"""
|
|
27
|
-
|
|
28
|
-
def add_arguments(self, parser):
|
|
29
|
-
parser.add_argument(
|
|
30
|
-
'--verbose',
|
|
31
|
-
action='store_true',
|
|
32
|
-
help='Display verbose output',
|
|
33
|
-
)
|
|
34
|
-
|
|
35
|
-
def handle(self, *args, **options):
|
|
36
|
-
verbose = options['verbose']
|
|
37
|
-
for model_name in IMPORT_MODELS:
|
|
38
|
-
_metadata = IMPORT_METADATA[model_name]
|
|
39
|
-
load_model_data_from_yaml(
|
|
40
|
-
self,
|
|
41
|
-
model_name,
|
|
42
|
-
_metadata,
|
|
43
|
-
verbose
|
|
44
|
-
)
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
from django.conf import settings
|
|
2
|
-
import os
|
|
3
|
-
from django.core.management.base import BaseCommand
|
|
4
|
-
from ...models import ReportReaderFlag
|
|
5
|
-
import yaml
|
|
6
|
-
from ...utils import load_model_data_from_yaml
|
|
7
|
-
from ...data import REPORT_READER_FLAG_DATA_DIR
|
|
8
|
-
|
|
9
|
-
SOURCE_DIR = REPORT_READER_FLAG_DATA_DIR # e.g. settings.DATA_DIR_INTERVENTION
|
|
10
|
-
|
|
11
|
-
MODEL_0 = ReportReaderFlag
|
|
12
|
-
|
|
13
|
-
IMPORT_MODELS = [ # string as model key, serves as key in IMPORT_METADATA
|
|
14
|
-
MODEL_0.__name__,
|
|
15
|
-
]
|
|
16
|
-
|
|
17
|
-
IMPORT_METADATA = {
|
|
18
|
-
MODEL_0.__name__: {
|
|
19
|
-
"dir": SOURCE_DIR, # e.g. "interventions"
|
|
20
|
-
"model": MODEL_0, # e.g. Intervention
|
|
21
|
-
"foreign_keys": [], # e.g. ["intervention_types"]
|
|
22
|
-
"foreign_key_models": [] # e.g. [InterventionType]
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
class Command(BaseCommand):
|
|
27
|
-
help = """Load all .yaml files in the data/intervention directory
|
|
28
|
-
into the Intervention and InterventionType model"""
|
|
29
|
-
|
|
30
|
-
def add_arguments(self, parser):
|
|
31
|
-
parser.add_argument(
|
|
32
|
-
'--verbose',
|
|
33
|
-
action='store_true',
|
|
34
|
-
help='Display verbose output',
|
|
35
|
-
)
|
|
36
|
-
|
|
37
|
-
def handle(self, *args, **options):
|
|
38
|
-
verbose = options['verbose']
|
|
39
|
-
for model_name in IMPORT_MODELS:
|
|
40
|
-
_metadata = IMPORT_METADATA[model_name]
|
|
41
|
-
load_model_data_from_yaml(
|
|
42
|
-
self,
|
|
43
|
-
model_name,
|
|
44
|
-
_metadata,
|
|
45
|
-
verbose
|
|
46
|
-
)
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
from django.conf import settings
|
|
2
|
-
import os
|
|
3
|
-
from django.core.management.base import BaseCommand
|
|
4
|
-
from ...models import Unit
|
|
5
|
-
import yaml
|
|
6
|
-
from ...utils import load_model_data_from_yaml
|
|
7
|
-
from ...data import UNIT_DATA_DIR
|
|
8
|
-
|
|
9
|
-
SOURCE_DIR = UNIT_DATA_DIR # e.g. settings.DATA_DIR_INTERVENTION
|
|
10
|
-
|
|
11
|
-
MODEL_0 = Unit
|
|
12
|
-
|
|
13
|
-
IMPORT_MODELS = [ # string as model key, serves as key in IMPORT_METADATA
|
|
14
|
-
MODEL_0.__name__,
|
|
15
|
-
]
|
|
16
|
-
|
|
17
|
-
IMPORT_METADATA = {
|
|
18
|
-
MODEL_0.__name__: {
|
|
19
|
-
"dir": SOURCE_DIR, # e.g. "interventions"
|
|
20
|
-
"model": MODEL_0, # e.g. Intervention
|
|
21
|
-
"foreign_keys": [], # e.g. ["intervention_types"]
|
|
22
|
-
"foreign_key_models": [] # e.g. [InterventionType]
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
class Command(BaseCommand):
|
|
27
|
-
help = """Load all .yaml files in the data/intervention directory
|
|
28
|
-
into the Intervention and InterventionType model"""
|
|
29
|
-
|
|
30
|
-
def add_arguments(self, parser):
|
|
31
|
-
parser.add_argument(
|
|
32
|
-
'--verbose',
|
|
33
|
-
action='store_true',
|
|
34
|
-
help='Display verbose output',
|
|
35
|
-
)
|
|
36
|
-
|
|
37
|
-
def handle(self, *args, **options):
|
|
38
|
-
verbose = options['verbose']
|
|
39
|
-
for model_name in IMPORT_MODELS:
|
|
40
|
-
_metadata = IMPORT_METADATA[model_name]
|
|
41
|
-
load_model_data_from_yaml(
|
|
42
|
-
self,
|
|
43
|
-
model_name,
|
|
44
|
-
_metadata,
|
|
45
|
-
verbose
|
|
46
|
-
)
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
from django.core.management.base import BaseCommand
|
|
2
|
-
from django.contrib.auth.models import Group, Permission
|
|
3
|
-
from django.contrib.contenttypes.models import ContentType
|
|
4
|
-
from django.apps import apps
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
class Command(BaseCommand):
|
|
8
|
-
help = "Create additional user groups and permissions for all models in 'endoreg_db' app."
|
|
9
|
-
|
|
10
|
-
def add_arguments(self, parser):
|
|
11
|
-
parser.add_argument(
|
|
12
|
-
'--verbose',
|
|
13
|
-
action='store_true',
|
|
14
|
-
help='Display verbose output',
|
|
15
|
-
)
|
|
16
|
-
|
|
17
|
-
def handle(self, *args, **options):
|
|
18
|
-
verbose = options['verbose']
|
|
19
|
-
|
|
20
|
-
# Create groups
|
|
21
|
-
groups = ["demo", "verified", "agl", "endo_reg_user", "g_play_user", "ukw_user"]
|
|
22
|
-
for group_name in groups:
|
|
23
|
-
_group, created = Group.objects.get_or_create(name=group_name)
|
|
24
|
-
if verbose and created:
|
|
25
|
-
self.stdout.write(self.style.SUCCESS(f"Created group {group_name}"))
|
|
26
|
-
|
|
27
|
-
if verbose:
|
|
28
|
-
self.stdout.write(self.style.SUCCESS("All groups processed successfully."))
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
# django command to register a new AI model
|
|
2
|
-
# expects path to model_meta.json file
|
|
3
|
-
# example model_meta: {
|
|
4
|
-
# "name": "multilabel_classification",
|
|
5
|
-
# "version": 0,
|
|
6
|
-
# "model_type": "multilabel_classification", # name of modeltype, is unique
|
|
7
|
-
# "labelset": "multilabel_classification", #labelset name, combination of name and version is unique
|
|
8
|
-
# "labelset_version": 0,
|
|
9
|
-
# "weights_path": "weights/multilabel_classification_0.pth", # path to weights file
|
|
10
|
-
#}
|
|
11
|
-
|
|
12
|
-
from django.core.management.base import BaseCommand
|
|
13
|
-
from django.core.files import File
|
|
14
|
-
from endoreg_db.models import ModelMeta, ModelType, LabelSet
|
|
15
|
-
import json
|
|
16
|
-
from pathlib import Path
|
|
17
|
-
|
|
18
|
-
class Command(BaseCommand):
|
|
19
|
-
"""
|
|
20
|
-
Registers a new AI model in the database.
|
|
21
|
-
"""
|
|
22
|
-
help = 'Registers a new AI model in the database.'
|
|
23
|
-
|
|
24
|
-
def add_arguments(self, parser):
|
|
25
|
-
parser.add_argument('model_meta_path', type=str)
|
|
26
|
-
|
|
27
|
-
def handle(self, *args, **options):
|
|
28
|
-
model_meta_path = Path(options['model_meta_path']).resolve()
|
|
29
|
-
|
|
30
|
-
with open(model_meta_path, 'r') as f:
|
|
31
|
-
model_meta = json.load(f)
|
|
32
|
-
|
|
33
|
-
# get or create model type
|
|
34
|
-
model_type = ModelType.objects.get(name=model_meta['model_type'])
|
|
35
|
-
|
|
36
|
-
# get or create labelset
|
|
37
|
-
labelset = LabelSet.objects.get(name=model_meta['labelset'], version=model_meta['labelset_version'])
|
|
38
|
-
|
|
39
|
-
# Handle weights file
|
|
40
|
-
weights_path = model_meta['weights_path']
|
|
41
|
-
# weights path is realative to model_meta_path
|
|
42
|
-
weights_path = model_meta_path.parent / weights_path
|
|
43
|
-
|
|
44
|
-
assert weights_path.exists(), f"weights file at {weights_path} does not exist"
|
|
45
|
-
|
|
46
|
-
# Make sure the path is correct and the file exists
|
|
47
|
-
try:
|
|
48
|
-
with open(weights_path, 'rb') as file:
|
|
49
|
-
model_name_string = f"{model_meta['name']}_{model_meta['version']}"
|
|
50
|
-
weights = File(file, name = model_name_string)
|
|
51
|
-
# Create ModelMeta instance
|
|
52
|
-
model_meta_instance = ModelMeta.objects.create(
|
|
53
|
-
name=model_meta['name'],
|
|
54
|
-
version=model_meta['version'],
|
|
55
|
-
type=model_type,
|
|
56
|
-
labelset=labelset,
|
|
57
|
-
weights=weights,
|
|
58
|
-
description=model_meta.get('description', '') # Assuming description is optional
|
|
59
|
-
)
|
|
60
|
-
print(f"Successfully registered model {model_meta_instance}")
|
|
61
|
-
except IOError:
|
|
62
|
-
print(f"Failed to open weights file at {weights_path}. Make sure the file exists.")
|
|
63
|
-
|
|
64
|
-
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
from django.core.management.base import BaseCommand
|
|
2
|
-
from django_celery_beat.models import PeriodicTask
|
|
3
|
-
|
|
4
|
-
class Command(BaseCommand):
|
|
5
|
-
help = 'Deletes all periodic tasks from the database to reset the schedule'
|
|
6
|
-
|
|
7
|
-
def handle(self, *args, **kwargs):
|
|
8
|
-
PeriodicTask.objects.all().delete()
|
|
9
|
-
self.stdout.write(self.style.SUCCESS('Successfully deleted all periodic tasks.'))
|