endoreg-db 0.8.8.0__py3-none-any.whl → 0.8.9.2__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.

Files changed (402) hide show
  1. endoreg_db/data/__init__.py +22 -8
  2. endoreg_db/data/ai_model_meta/default_multilabel_classification.yaml +0 -1
  3. endoreg_db/data/examination/examinations/data.yaml +114 -14
  4. endoreg_db/data/examination/time-type/data.yaml +0 -3
  5. endoreg_db/data/examination_indication/endoscopy.yaml +108 -173
  6. endoreg_db/data/examination_indication_classification/endoscopy.yaml +0 -70
  7. endoreg_db/data/examination_indication_classification_choice/endoscopy.yaml +33 -37
  8. endoreg_db/data/finding/00_generic.yaml +35 -0
  9. endoreg_db/data/finding/00_generic_complication.yaml +9 -0
  10. endoreg_db/data/finding/01_gastroscopy_baseline.yaml +88 -0
  11. endoreg_db/data/finding/01_gastroscopy_observation.yaml +113 -0
  12. endoreg_db/data/finding/02_colonoscopy_baseline.yaml +53 -0
  13. endoreg_db/data/finding/02_colonoscopy_hidden.yaml +119 -0
  14. endoreg_db/data/finding/02_colonoscopy_observation.yaml +152 -0
  15. endoreg_db/data/finding_classification/00_generic.yaml +44 -0
  16. endoreg_db/data/finding_classification/00_generic_histology.yaml +28 -0
  17. endoreg_db/data/finding_classification/00_generic_lesion.yaml +52 -0
  18. endoreg_db/data/finding_classification/{colonoscopy_bowel_preparation.yaml → 02_colonoscopy_baseline.yaml} +35 -20
  19. endoreg_db/data/finding_classification/02_colonoscopy_histology.yaml +13 -0
  20. endoreg_db/data/finding_classification/02_colonoscopy_other.yaml +12 -0
  21. endoreg_db/data/finding_classification/02_colonoscopy_polyp.yaml +101 -0
  22. endoreg_db/data/finding_classification_choice/{yes_no_na.yaml → 00_generic.yaml} +5 -1
  23. endoreg_db/data/finding_classification_choice/{examination_setting_generic_types.yaml → 00_generic_baseline.yaml} +10 -2
  24. endoreg_db/data/finding_classification_choice/{complication_generic_types.yaml → 00_generic_complication.yaml} +1 -1
  25. endoreg_db/data/finding_classification_choice/{histology.yaml → 00_generic_histology.yaml} +1 -4
  26. endoreg_db/data/finding_classification_choice/00_generic_lesion.yaml +158 -0
  27. endoreg_db/data/finding_classification_choice/{bowel_preparation.yaml → 02_colonoscopy_bowel_preparation.yaml} +1 -30
  28. endoreg_db/data/{_examples/finding_classification_choice/colonoscopy_not_complete_reason.yaml → finding_classification_choice/02_colonoscopy_generic.yaml} +1 -1
  29. endoreg_db/data/finding_classification_choice/{histology_polyp.yaml → 02_colonoscopy_histology.yaml} +1 -1
  30. endoreg_db/data/{_examples/finding_classification_choice/colonoscopy_location.yaml → finding_classification_choice/02_colonoscopy_location.yaml} +23 -4
  31. endoreg_db/data/finding_classification_choice/02_colonoscopy_other.yaml +34 -0
  32. endoreg_db/data/finding_classification_choice/02_colonoscopy_polyp_advanced_imaging.yaml +76 -0
  33. endoreg_db/data/{_examples/finding_classification_choice/colon_lesion_paris.yaml → finding_classification_choice/02_colonoscopy_polyp_morphology.yaml} +26 -8
  34. endoreg_db/data/finding_classification_choice/02_colonoscopy_size.yaml +27 -0
  35. endoreg_db/data/finding_classification_type/{colonoscopy_basic.yaml → 00_generic.yaml} +18 -13
  36. endoreg_db/data/finding_classification_type/02_colonoscopy.yaml +9 -0
  37. endoreg_db/data/finding_intervention/00_generic_endoscopy.yaml +59 -0
  38. endoreg_db/data/finding_intervention/00_generic_endoscopy_ablation.yaml +44 -0
  39. endoreg_db/data/finding_intervention/00_generic_endoscopy_bleeding.yaml +55 -0
  40. endoreg_db/data/finding_intervention/00_generic_endoscopy_resection.yaml +85 -0
  41. endoreg_db/data/finding_intervention/00_generic_endoscopy_stenosis.yaml +17 -0
  42. endoreg_db/data/finding_intervention/00_generic_endoscopy_stent.yaml +9 -0
  43. endoreg_db/data/finding_intervention/01_gastroscopy.yaml +19 -0
  44. endoreg_db/data/finding_intervention/04_eus.yaml +39 -0
  45. endoreg_db/data/finding_intervention/05_ercp.yaml +3 -0
  46. endoreg_db/data/finding_type/data.yaml +8 -12
  47. endoreg_db/data/requirement/01_patient_data.yaml +93 -0
  48. endoreg_db/data/requirement_operator/new_operators.yaml +36 -0
  49. endoreg_db/data/requirement_set/01_endoscopy_generic.yaml +0 -2
  50. endoreg_db/data/requirement_set/90_coloreg.yaml +20 -8
  51. endoreg_db/exceptions.py +0 -1
  52. endoreg_db/forms/examination_form.py +1 -1
  53. endoreg_db/helpers/data_loader.py +124 -52
  54. endoreg_db/helpers/default_objects.py +116 -81
  55. endoreg_db/import_files/__init__.py +27 -0
  56. endoreg_db/import_files/context/__init__.py +7 -0
  57. endoreg_db/import_files/context/default_sensitive_meta.py +81 -0
  58. endoreg_db/import_files/context/ensure_center.py +17 -0
  59. endoreg_db/import_files/context/file_lock.py +66 -0
  60. endoreg_db/import_files/context/import_context.py +43 -0
  61. endoreg_db/import_files/context/validate_directories.py +56 -0
  62. endoreg_db/import_files/file_storage/__init__.py +15 -0
  63. endoreg_db/import_files/file_storage/create_report_file.py +76 -0
  64. endoreg_db/import_files/file_storage/create_video_file.py +75 -0
  65. endoreg_db/import_files/file_storage/sensitive_meta_storage.py +39 -0
  66. endoreg_db/import_files/file_storage/state_management.py +496 -0
  67. endoreg_db/import_files/file_storage/storage.py +36 -0
  68. endoreg_db/import_files/import_service.md +26 -0
  69. endoreg_db/import_files/processing/__init__.py +11 -0
  70. endoreg_db/import_files/processing/report_processing/report_anonymization.py +94 -0
  71. endoreg_db/import_files/processing/sensitive_meta_adapter.py +51 -0
  72. endoreg_db/import_files/processing/video_processing/video_anonymization.py +107 -0
  73. endoreg_db/import_files/pseudonymization/fake.py +52 -0
  74. endoreg_db/import_files/pseudonymization/k_anonymity.py +182 -0
  75. endoreg_db/import_files/pseudonymization/k_pseudonymity.py +128 -0
  76. endoreg_db/import_files/pseudonymization/pseudonymize.py +0 -0
  77. endoreg_db/import_files/report_import_service.py +141 -0
  78. endoreg_db/import_files/video_import_service.py +150 -0
  79. endoreg_db/management/commands/import_report.py +130 -65
  80. endoreg_db/management/commands/import_video_with_classification.py +1 -1
  81. endoreg_db/management/commands/load_ai_model_data.py +5 -5
  82. endoreg_db/management/commands/load_ai_model_label_data.py +9 -7
  83. endoreg_db/management/commands/load_base_db_data.py +5 -134
  84. endoreg_db/management/commands/load_contraindication_data.py +14 -16
  85. endoreg_db/management/commands/load_disease_classification_choices_data.py +15 -18
  86. endoreg_db/management/commands/load_disease_classification_data.py +15 -18
  87. endoreg_db/management/commands/load_disease_data.py +25 -28
  88. endoreg_db/management/commands/load_endoscope_data.py +20 -27
  89. endoreg_db/management/commands/load_event_data.py +14 -16
  90. endoreg_db/management/commands/load_examination_data.py +31 -44
  91. endoreg_db/management/commands/load_examination_indication_data.py +20 -21
  92. endoreg_db/management/commands/load_finding_data.py +52 -80
  93. endoreg_db/management/commands/load_information_source.py +21 -23
  94. endoreg_db/management/commands/load_lab_value_data.py +17 -26
  95. endoreg_db/management/commands/load_medication_data.py +13 -12
  96. endoreg_db/management/commands/load_organ_data.py +15 -19
  97. endoreg_db/management/commands/load_pdf_type_data.py +19 -18
  98. endoreg_db/management/commands/load_profession_data.py +14 -17
  99. endoreg_db/management/commands/load_qualification_data.py +20 -23
  100. endoreg_db/management/commands/load_report_reader_flag_data.py +17 -19
  101. endoreg_db/management/commands/load_requirement_data.py +14 -20
  102. endoreg_db/management/commands/load_risk_data.py +7 -6
  103. endoreg_db/management/commands/load_shift_data.py +20 -23
  104. endoreg_db/management/commands/load_tag_data.py +8 -11
  105. endoreg_db/management/commands/load_unit_data.py +17 -19
  106. endoreg_db/management/commands/start_filewatcher.py +46 -37
  107. endoreg_db/management/commands/validate_video_files.py +1 -5
  108. endoreg_db/migrations/0001_initial.py +1360 -1812
  109. endoreg_db/models/administration/person/patient/patient.py +72 -46
  110. endoreg_db/models/label/__init__.py +2 -2
  111. endoreg_db/models/label/annotation/video_segmentation_annotation.py +18 -26
  112. endoreg_db/models/label/label_video_segment/label_video_segment.py +23 -1
  113. endoreg_db/models/media/pdf/raw_pdf.py +136 -64
  114. endoreg_db/models/media/pdf/report_reader/report_reader_config.py +34 -10
  115. endoreg_db/models/media/processing_history/__init__.py +5 -0
  116. endoreg_db/models/media/processing_history/processing_history.py +96 -0
  117. endoreg_db/models/media/video/create_from_file.py +101 -31
  118. endoreg_db/models/media/video/video_file.py +125 -105
  119. endoreg_db/models/media/video/video_file_io.py +31 -26
  120. endoreg_db/models/medical/contraindication/README.md +1 -0
  121. endoreg_db/models/medical/examination/examination.py +28 -8
  122. endoreg_db/models/medical/examination/examination_indication.py +13 -79
  123. endoreg_db/models/medical/examination/examination_time.py +8 -3
  124. endoreg_db/models/medical/finding/finding.py +5 -12
  125. endoreg_db/models/medical/finding/finding_classification.py +18 -37
  126. endoreg_db/models/medical/finding/finding_intervention.py +7 -9
  127. endoreg_db/models/medical/hardware/endoscope.py +6 -0
  128. endoreg_db/models/medical/patient/medication_examples.py +5 -1
  129. endoreg_db/models/medical/patient/patient_finding.py +1 -1
  130. endoreg_db/models/metadata/pdf_meta.py +22 -10
  131. endoreg_db/models/metadata/sensitive_meta.py +3 -0
  132. endoreg_db/models/metadata/sensitive_meta_logic.py +200 -124
  133. endoreg_db/models/other/information_source.py +27 -6
  134. endoreg_db/models/report/__init__.py +0 -0
  135. endoreg_db/models/report/images.py +0 -0
  136. endoreg_db/models/report/report.py +6 -0
  137. endoreg_db/models/requirement/requirement.py +59 -399
  138. endoreg_db/models/requirement/requirement_operator.py +86 -98
  139. endoreg_db/models/state/audit_ledger.py +4 -5
  140. endoreg_db/models/state/raw_pdf.py +69 -30
  141. endoreg_db/models/state/video.py +65 -49
  142. endoreg_db/models/upload_job.py +33 -9
  143. endoreg_db/models/utils.py +27 -23
  144. endoreg_db/queries/__init__.py +3 -1
  145. endoreg_db/schemas/examination_evaluation.py +1 -1
  146. endoreg_db/serializers/__init__.py +2 -8
  147. endoreg_db/serializers/label_video_segment/label_video_segment.py +2 -29
  148. endoreg_db/serializers/meta/__init__.py +1 -6
  149. endoreg_db/serializers/misc/sensitive_patient_data.py +50 -26
  150. endoreg_db/serializers/patient_examination/patient_examination.py +3 -3
  151. endoreg_db/serializers/pdf/anony_text_validation.py +39 -23
  152. endoreg_db/serializers/video/video_file_list.py +65 -34
  153. endoreg_db/services/__old/pdf_import.py +1487 -0
  154. endoreg_db/services/__old/video_import.py +1306 -0
  155. endoreg_db/services/anonymization.py +63 -26
  156. endoreg_db/services/lookup_service.py +28 -28
  157. endoreg_db/services/lookup_store.py +2 -2
  158. endoreg_db/services/pdf_import.py +0 -1480
  159. endoreg_db/services/report_import.py +10 -0
  160. endoreg_db/services/video_import.py +6 -1165
  161. endoreg_db/tasks/upload_tasks.py +79 -70
  162. endoreg_db/tasks/video_ingest.py +8 -4
  163. endoreg_db/urls/__init__.py +0 -14
  164. endoreg_db/urls/ai.py +32 -0
  165. endoreg_db/urls/media.py +21 -24
  166. endoreg_db/utils/dataloader.py +87 -57
  167. endoreg_db/utils/paths.py +110 -46
  168. endoreg_db/utils/pipelines/Readme.md +1 -1
  169. endoreg_db/utils/requirement_operator_logic/new_operator_logic.py +97 -0
  170. endoreg_db/utils/video/ffmpeg_wrapper.py +217 -52
  171. endoreg_db/views/__init__.py +85 -173
  172. endoreg_db/views/ai/__init__.py +8 -0
  173. endoreg_db/views/ai/label.py +155 -0
  174. endoreg_db/views/anonymization/media_management.py +8 -7
  175. endoreg_db/views/anonymization/overview.py +97 -68
  176. endoreg_db/views/anonymization/validate.py +25 -21
  177. endoreg_db/views/media/__init__.py +5 -20
  178. endoreg_db/views/media/pdf_media.py +109 -65
  179. endoreg_db/views/media/sensitive_metadata.py +163 -148
  180. endoreg_db/views/meta/__init__.py +0 -8
  181. endoreg_db/views/misc/__init__.py +1 -7
  182. endoreg_db/views/misc/upload_views.py +94 -93
  183. endoreg_db/views/report/__init__.py +7 -0
  184. endoreg_db/views/{pdf → report}/reimport.py +45 -24
  185. endoreg_db/views/{pdf/pdf_stream.py → report/report_stream.py} +40 -32
  186. endoreg_db/views/requirement/lookup_store.py +22 -90
  187. endoreg_db/views/video/__init__.py +23 -22
  188. endoreg_db/views/video/correction.py +201 -172
  189. endoreg_db/views/video/reimport.py +1 -1
  190. endoreg_db/views/{media/video_segments.py → video/segments_crud.py} +75 -37
  191. endoreg_db/views/video/{video_meta.py → video_meta_stats.py} +2 -2
  192. endoreg_db/views/video/video_stream.py +7 -8
  193. {endoreg_db-0.8.8.0.dist-info → endoreg_db-0.8.9.2.dist-info}/METADATA +2 -2
  194. {endoreg_db-0.8.8.0.dist-info → endoreg_db-0.8.9.2.dist-info}/RECORD +217 -335
  195. {endoreg_db-0.8.8.0.dist-info → endoreg_db-0.8.9.2.dist-info}/WHEEL +1 -1
  196. endoreg_db/data/_examples/disease.yaml +0 -55
  197. endoreg_db/data/_examples/disease_classification.yaml +0 -13
  198. endoreg_db/data/_examples/disease_classification_choice.yaml +0 -62
  199. endoreg_db/data/_examples/event.yaml +0 -64
  200. endoreg_db/data/_examples/examination.yaml +0 -72
  201. endoreg_db/data/_examples/finding/anatomy_colon.yaml +0 -128
  202. endoreg_db/data/_examples/finding/colonoscopy.yaml +0 -40
  203. endoreg_db/data/_examples/finding/colonoscopy_bowel_prep.yaml +0 -56
  204. endoreg_db/data/_examples/finding/complication.yaml +0 -16
  205. endoreg_db/data/_examples/finding/data.yaml +0 -105
  206. endoreg_db/data/_examples/finding/examination_setting.yaml +0 -16
  207. endoreg_db/data/_examples/finding/medication_related.yaml +0 -18
  208. endoreg_db/data/_examples/finding/outcome.yaml +0 -12
  209. endoreg_db/data/_examples/finding_classification/colonoscopy_bowel_preparation.yaml +0 -68
  210. endoreg_db/data/_examples/finding_classification/colonoscopy_jnet.yaml +0 -22
  211. endoreg_db/data/_examples/finding_classification/colonoscopy_kudo.yaml +0 -25
  212. endoreg_db/data/_examples/finding_classification/colonoscopy_lesion_circularity.yaml +0 -20
  213. endoreg_db/data/_examples/finding_classification/colonoscopy_lesion_planarity.yaml +0 -24
  214. endoreg_db/data/_examples/finding_classification/colonoscopy_lesion_size.yaml +0 -68
  215. endoreg_db/data/_examples/finding_classification/colonoscopy_lesion_surface.yaml +0 -20
  216. endoreg_db/data/_examples/finding_classification/colonoscopy_location.yaml +0 -80
  217. endoreg_db/data/_examples/finding_classification/colonoscopy_lst.yaml +0 -21
  218. endoreg_db/data/_examples/finding_classification/colonoscopy_nice.yaml +0 -20
  219. endoreg_db/data/_examples/finding_classification/colonoscopy_paris.yaml +0 -26
  220. endoreg_db/data/_examples/finding_classification/colonoscopy_sano.yaml +0 -22
  221. endoreg_db/data/_examples/finding_classification/colonoscopy_summary.yaml +0 -53
  222. endoreg_db/data/_examples/finding_classification/complication_generic.yaml +0 -25
  223. endoreg_db/data/_examples/finding_classification/examination_setting_generic.yaml +0 -40
  224. endoreg_db/data/_examples/finding_classification/histology_colo.yaml +0 -51
  225. endoreg_db/data/_examples/finding_classification/intervention_required.yaml +0 -26
  226. endoreg_db/data/_examples/finding_classification/medication_related.yaml +0 -23
  227. endoreg_db/data/_examples/finding_classification/visualized.yaml +0 -33
  228. endoreg_db/data/_examples/finding_classification_choice/bowel_preparation.yaml +0 -78
  229. endoreg_db/data/_examples/finding_classification_choice/colon_lesion_circularity_default.yaml +0 -32
  230. endoreg_db/data/_examples/finding_classification_choice/colon_lesion_jnet.yaml +0 -15
  231. endoreg_db/data/_examples/finding_classification_choice/colon_lesion_kudo.yaml +0 -23
  232. endoreg_db/data/_examples/finding_classification_choice/colon_lesion_lst.yaml +0 -15
  233. endoreg_db/data/_examples/finding_classification_choice/colon_lesion_nice.yaml +0 -17
  234. endoreg_db/data/_examples/finding_classification_choice/colon_lesion_planarity_default.yaml +0 -49
  235. endoreg_db/data/_examples/finding_classification_choice/colon_lesion_sano.yaml +0 -14
  236. endoreg_db/data/_examples/finding_classification_choice/colon_lesion_surface_intact_default.yaml +0 -36
  237. endoreg_db/data/_examples/finding_classification_choice/colonoscopy_size.yaml +0 -82
  238. endoreg_db/data/_examples/finding_classification_choice/colonoscopy_summary_worst_finding.yaml +0 -15
  239. endoreg_db/data/_examples/finding_classification_choice/complication_generic_types.yaml +0 -15
  240. endoreg_db/data/_examples/finding_classification_choice/examination_setting_generic_types.yaml +0 -15
  241. endoreg_db/data/_examples/finding_classification_choice/histology.yaml +0 -24
  242. endoreg_db/data/_examples/finding_classification_choice/histology_polyp.yaml +0 -20
  243. endoreg_db/data/_examples/finding_classification_choice/outcome.yaml +0 -19
  244. endoreg_db/data/_examples/finding_classification_choice/yes_no_na.yaml +0 -11
  245. endoreg_db/data/_examples/finding_classification_type/colonoscopy_basic.yaml +0 -48
  246. endoreg_db/data/_examples/finding_intervention/endoscopy.yaml +0 -43
  247. endoreg_db/data/_examples/finding_intervention/endoscopy_colonoscopy.yaml +0 -168
  248. endoreg_db/data/_examples/finding_intervention/endoscopy_egd.yaml +0 -128
  249. endoreg_db/data/_examples/finding_intervention/endoscopy_ercp.yaml +0 -32
  250. endoreg_db/data/_examples/finding_intervention/endoscopy_eus_lower.yaml +0 -9
  251. endoreg_db/data/_examples/finding_intervention/endoscopy_eus_upper.yaml +0 -36
  252. endoreg_db/data/_examples/finding_intervention_type/endoscopy.yaml +0 -15
  253. endoreg_db/data/_examples/finding_type/data.yaml +0 -43
  254. endoreg_db/data/_examples/requirement/age.yaml +0 -26
  255. endoreg_db/data/_examples/requirement/gender.yaml +0 -25
  256. endoreg_db/data/_examples/requirement_set/01_endoscopy_generic.yaml +0 -48
  257. endoreg_db/data/_examples/requirement_set/colonoscopy_austria_screening.yaml +0 -57
  258. endoreg_db/data/_examples/requirement_set/endoscopy_bleeding_risk.yaml +0 -52
  259. endoreg_db/data/_examples/yaml_examples.xlsx +0 -0
  260. endoreg_db/data/finding/anatomy_colon.yaml +0 -128
  261. endoreg_db/data/finding/colonoscopy.yaml +0 -40
  262. endoreg_db/data/finding/colonoscopy_bowel_prep.yaml +0 -56
  263. endoreg_db/data/finding/complication.yaml +0 -16
  264. endoreg_db/data/finding/data.yaml +0 -105
  265. endoreg_db/data/finding/examination_setting.yaml +0 -16
  266. endoreg_db/data/finding/medication_related.yaml +0 -18
  267. endoreg_db/data/finding/outcome.yaml +0 -12
  268. endoreg_db/data/finding_classification/colonoscopy_jnet.yaml +0 -22
  269. endoreg_db/data/finding_classification/colonoscopy_kudo.yaml +0 -25
  270. endoreg_db/data/finding_classification/colonoscopy_lesion_circularity.yaml +0 -20
  271. endoreg_db/data/finding_classification/colonoscopy_lesion_planarity.yaml +0 -24
  272. endoreg_db/data/finding_classification/colonoscopy_lesion_size.yaml +0 -38
  273. endoreg_db/data/finding_classification/colonoscopy_lesion_surface.yaml +0 -20
  274. endoreg_db/data/finding_classification/colonoscopy_location.yaml +0 -49
  275. endoreg_db/data/finding_classification/colonoscopy_lst.yaml +0 -21
  276. endoreg_db/data/finding_classification/colonoscopy_nice.yaml +0 -20
  277. endoreg_db/data/finding_classification/colonoscopy_paris.yaml +0 -26
  278. endoreg_db/data/finding_classification/colonoscopy_sano.yaml +0 -22
  279. endoreg_db/data/finding_classification/colonoscopy_summary.yaml +0 -53
  280. endoreg_db/data/finding_classification/complication_generic.yaml +0 -25
  281. endoreg_db/data/finding_classification/examination_setting_generic.yaml +0 -40
  282. endoreg_db/data/finding_classification/histology_colo.yaml +0 -43
  283. endoreg_db/data/finding_classification/intervention_required.yaml +0 -26
  284. endoreg_db/data/finding_classification/medication_related.yaml +0 -23
  285. endoreg_db/data/finding_classification/visualized.yaml +0 -33
  286. endoreg_db/data/finding_classification_choice/colon_lesion_circularity_default.yaml +0 -32
  287. endoreg_db/data/finding_classification_choice/colon_lesion_jnet.yaml +0 -15
  288. endoreg_db/data/finding_classification_choice/colon_lesion_kudo.yaml +0 -23
  289. endoreg_db/data/finding_classification_choice/colon_lesion_lst.yaml +0 -15
  290. endoreg_db/data/finding_classification_choice/colon_lesion_nice.yaml +0 -17
  291. endoreg_db/data/finding_classification_choice/colon_lesion_paris.yaml +0 -57
  292. endoreg_db/data/finding_classification_choice/colon_lesion_planarity_default.yaml +0 -49
  293. endoreg_db/data/finding_classification_choice/colon_lesion_sano.yaml +0 -14
  294. endoreg_db/data/finding_classification_choice/colon_lesion_surface_intact_default.yaml +0 -36
  295. endoreg_db/data/finding_classification_choice/colonoscopy_location.yaml +0 -229
  296. endoreg_db/data/finding_classification_choice/colonoscopy_not_complete_reason.yaml +0 -19
  297. endoreg_db/data/finding_classification_choice/colonoscopy_size.yaml +0 -82
  298. endoreg_db/data/finding_classification_choice/colonoscopy_summary_worst_finding.yaml +0 -15
  299. endoreg_db/data/finding_classification_choice/outcome.yaml +0 -19
  300. endoreg_db/data/finding_intervention/endoscopy.yaml +0 -43
  301. endoreg_db/data/finding_intervention/endoscopy_colonoscopy.yaml +0 -168
  302. endoreg_db/data/finding_intervention/endoscopy_egd.yaml +0 -128
  303. endoreg_db/data/finding_intervention/endoscopy_ercp.yaml +0 -32
  304. endoreg_db/data/finding_intervention/endoscopy_eus_lower.yaml +0 -9
  305. endoreg_db/data/finding_intervention/endoscopy_eus_upper.yaml +0 -36
  306. endoreg_db/data/finding_morphology_classification_type/colonoscopy.yaml +0 -79
  307. endoreg_db/data/requirement/age.yaml +0 -26
  308. endoreg_db/data/requirement/colonoscopy_baseline_austria.yaml +0 -45
  309. endoreg_db/data/requirement/disease_cardiovascular.yaml +0 -79
  310. endoreg_db/data/requirement/disease_classification_choice_cardiovascular.yaml +0 -41
  311. endoreg_db/data/requirement/disease_hepatology.yaml +0 -12
  312. endoreg_db/data/requirement/disease_misc.yaml +0 -12
  313. endoreg_db/data/requirement/disease_renal.yaml +0 -96
  314. endoreg_db/data/requirement/endoscopy_bleeding_risk.yaml +0 -59
  315. endoreg_db/data/requirement/event_cardiology.yaml +0 -251
  316. endoreg_db/data/requirement/event_requirements.yaml +0 -145
  317. endoreg_db/data/requirement/finding_colon_polyp.yaml +0 -50
  318. endoreg_db/data/requirement/gender.yaml +0 -25
  319. endoreg_db/data/requirement/lab_value.yaml +0 -441
  320. endoreg_db/data/requirement/medication.yaml +0 -93
  321. endoreg_db/data/requirement_operator/age.yaml +0 -13
  322. endoreg_db/data/requirement_operator/lab_operators.yaml +0 -129
  323. endoreg_db/data/requirement_operator/model_operators.yaml +0 -96
  324. endoreg_db/management/commands/init_default_ai_model.py +0 -112
  325. endoreg_db/management/commands/reset_celery_schedule.py +0 -9
  326. endoreg_db/management/commands/validate_video.py +0 -204
  327. endoreg_db/migrations/0002_requirementset_depends_on.py +0 -18
  328. endoreg_db/migrations/_old/0001_initial.py +0 -1857
  329. endoreg_db/migrations/_old/0002_add_video_correction_models.py +0 -52
  330. endoreg_db/migrations/_old/0003_add_center_display_name.py +0 -30
  331. endoreg_db/migrations/_old/0004_employee_city_employee_post_code_employee_street_and_more.py +0 -68
  332. endoreg_db/migrations/_old/0004_remove_casetemplate_rules_and_more.py +0 -77
  333. endoreg_db/migrations/_old/0005_merge_20251111_1003.py +0 -14
  334. endoreg_db/migrations/_old/0006_sensitivemeta_anonymized_text_and_more.py +0 -68
  335. endoreg_db/migrations/_old/0007_remove_rule_attribute_dtype_remove_rule_rule_type_and_more.py +0 -89
  336. endoreg_db/migrations/_old/0008_remove_event_event_classification_and_more.py +0 -27
  337. endoreg_db/migrations/_old/0009_alter_modelmeta_options_and_more.py +0 -21
  338. endoreg_db/renames.yml +0 -8
  339. endoreg_db/serializers/_old/raw_pdf_meta_validation.py +0 -223
  340. endoreg_db/serializers/_old/raw_video_meta_validation.py +0 -179
  341. endoreg_db/serializers/_old/video.py +0 -71
  342. endoreg_db/serializers/meta/pdf_file_meta_extraction.py +0 -115
  343. endoreg_db/serializers/meta/report_meta.py +0 -53
  344. endoreg_db/serializers/report/__init__.py +0 -9
  345. endoreg_db/serializers/report/mixins.py +0 -45
  346. endoreg_db/serializers/report/report.py +0 -105
  347. endoreg_db/serializers/report/report_list.py +0 -22
  348. endoreg_db/serializers/report/secure_file_url.py +0 -26
  349. endoreg_db/services/requirements_object.py +0 -147
  350. endoreg_db/services/storage_aware_video_processor.py +0 -370
  351. endoreg_db/urls/files.py +0 -6
  352. endoreg_db/urls/label_video_segment_validate.py +0 -33
  353. endoreg_db/urls/label_video_segments.py +0 -46
  354. endoreg_db/views/label/__init__.py +0 -5
  355. endoreg_db/views/label/label.py +0 -15
  356. endoreg_db/views/label_video_segment/__init__.py +0 -16
  357. endoreg_db/views/label_video_segment/create_lvs_from_annotation.py +0 -44
  358. endoreg_db/views/label_video_segment/get_lvs_by_name_and_video.py +0 -50
  359. endoreg_db/views/label_video_segment/label_video_segment.py +0 -77
  360. endoreg_db/views/label_video_segment/label_video_segment_by_label.py +0 -174
  361. endoreg_db/views/label_video_segment/label_video_segment_detail.py +0 -73
  362. endoreg_db/views/label_video_segment/update_lvs_from_annotation.py +0 -46
  363. endoreg_db/views/label_video_segment/validate.py +0 -226
  364. endoreg_db/views/media/segments.py +0 -71
  365. endoreg_db/views/meta/available_files_list.py +0 -146
  366. endoreg_db/views/meta/report_meta.py +0 -53
  367. endoreg_db/views/meta/sensitive_meta_detail.py +0 -85
  368. endoreg_db/views/misc/secure_file_serving_view.py +0 -80
  369. endoreg_db/views/misc/secure_file_url_view.py +0 -84
  370. endoreg_db/views/misc/secure_url_validate.py +0 -79
  371. endoreg_db/views/patient_examination/DEPRECATED_video_backup.py +0 -164
  372. endoreg_db/views/patient_finding_location/__init__.py +0 -5
  373. endoreg_db/views/patient_finding_location/pfl_create.py +0 -70
  374. endoreg_db/views/patient_finding_morphology/__init__.py +0 -5
  375. endoreg_db/views/patient_finding_morphology/pfm_create.py +0 -70
  376. endoreg_db/views/pdf/__init__.py +0 -8
  377. endoreg_db/views/video/segmentation.py +0 -274
  378. endoreg_db/views/video/task_status.py +0 -49
  379. endoreg_db/views/video/timeline.py +0 -46
  380. endoreg_db/views/video/video_analyze.py +0 -52
  381. /endoreg_db/data/requirement/{colon_polyp_intervention.yaml → old/colon_polyp_intervention.yaml} +0 -0
  382. /endoreg_db/data/{_examples/requirement → requirement/old}/colonoscopy_baseline_austria.yaml +0 -0
  383. /endoreg_db/data/requirement/{coloreg_colon_polyp.yaml → old/coloreg_colon_polyp.yaml} +0 -0
  384. /endoreg_db/data/{_examples/requirement → requirement/old}/disease_cardiovascular.yaml +0 -0
  385. /endoreg_db/data/{_examples/requirement → requirement/old}/disease_classification_choice_cardiovascular.yaml +0 -0
  386. /endoreg_db/data/{_examples/requirement → requirement/old}/disease_hepatology.yaml +0 -0
  387. /endoreg_db/data/{_examples/requirement → requirement/old}/disease_misc.yaml +0 -0
  388. /endoreg_db/data/{_examples/requirement → requirement/old}/disease_renal.yaml +0 -0
  389. /endoreg_db/data/{_examples/requirement → requirement/old}/endoscopy_bleeding_risk.yaml +0 -0
  390. /endoreg_db/data/{_examples/requirement → requirement/old}/event_cardiology.yaml +0 -0
  391. /endoreg_db/data/{_examples/requirement → requirement/old}/event_requirements.yaml +0 -0
  392. /endoreg_db/data/{_examples/requirement → requirement/old}/finding_colon_polyp.yaml +0 -0
  393. /endoreg_db/{urls/sensitive_meta.py → data/requirement/old/gender.yaml} +0 -0
  394. /endoreg_db/data/{_examples/requirement → requirement/old}/lab_value.yaml +0 -0
  395. /endoreg_db/data/{_examples/requirement → requirement/old}/medication.yaml +0 -0
  396. /endoreg_db/data/{_examples/requirement_operator → requirement_operator/_old}/age.yaml +0 -0
  397. /endoreg_db/data/{_examples/requirement_operator → requirement_operator/_old}/lab_operators.yaml +0 -0
  398. /endoreg_db/data/{_examples/requirement_operator → requirement_operator/_old}/model_operators.yaml +0 -0
  399. /endoreg_db/{views/pdf/pdf_stream_views.py → import_files/pseudonymization/__init__.py} +0 -0
  400. /endoreg_db/utils/requirement_operator_logic/{lab_value_operators.py → _old/lab_value_operators.py} +0 -0
  401. /endoreg_db/utils/requirement_operator_logic/{model_evaluators.py → _old/model_evaluators.py} +0 -0
  402. {endoreg_db-0.8.8.0.dist-info → endoreg_db-0.8.9.2.dist-info}/licenses/LICENSE +0 -0
@@ -1,75 +1,62 @@
1
+ import os
2
+
1
3
  from django.conf import settings
2
4
  from django.core.management.base import BaseCommand
3
- from ...models import (
4
- Examination,
5
- ExaminationType, # Replace 'your_app_name' with the actual app name
6
- ExaminationTime,
7
- ExaminationTimeType,
8
- )
9
- import os
10
- from ...utils import load_model_data_from_yaml
5
+
11
6
  from ...data import EXAMINATION_DATA_DIR
7
+ from ...models import Examination, ExaminationIndication, ExaminationTime, ExaminationTimeType, ExaminationType, Finding
8
+ from ...utils import load_model_data_from_yaml
12
9
 
13
- SOURCE_DIR = EXAMINATION_DATA_DIR
10
+ SOURCE_DIR = EXAMINATION_DATA_DIR
14
11
 
15
- IMPORT_MODELS = [ # string as model key, serves as key in IMPORT_METADATA
12
+ IMPORT_MODELS = [ # string as model key, serves as key in IMPORT_METADATA
16
13
  "ExaminationType",
17
- "Examination",
18
14
  "ExaminationTimeType",
19
- "ExaminationTime"
15
+ "ExaminationTime",
16
+ "Examination",
20
17
  ]
21
18
 
22
19
  IMPORT_METADATA = {
23
- # "": { # same as model name in "import models", e.g. "Intervention"
24
- # "subdir": os.path.join(SOURCE_DIR,""), # e.g. "interventions"
25
- # "model": None, # e.g. Intervention
26
- # "foreign_keys": [], # e.g. ["intervention_types"]
27
- # "foreign_key_models": [] # e.g. [InterventionType]
28
- # },
29
20
  "ExaminationType": {
30
- "dir": os.path.join(SOURCE_DIR,"type"), # e.g. "interventions"
31
- "model": ExaminationType, # e.g. Intervention
32
- "foreign_keys": [], # e.g. ["intervention_types"]
33
- "foreign_key_models": [] # e.g. [InterventionType]
21
+ "dir": os.path.join(SOURCE_DIR, "type"),
22
+ "model": ExaminationType,
23
+ "foreign_keys": [],
24
+ "foreign_key_models": [],
34
25
  },
35
26
  "Examination": {
36
- "dir": os.path.join(SOURCE_DIR,"examinations"), # e.g. "interventions"
37
- "model": Examination, # e.g. Intervention
38
- "foreign_keys": ["examination_types"], # e.g. ["intervention_types"]
39
- "foreign_key_models": [ExaminationType] # e.g. [InterventionType]
27
+ "dir": os.path.join(SOURCE_DIR, "examinations"),
28
+ "model": Examination,
29
+ "foreign_keys": ["findings", "examination_types", "examination_times", "indications"],
30
+ "foreign_key_models": [Finding, ExaminationType, ExaminationTime, ExaminationIndication],
40
31
  },
41
32
  "ExaminationTimeType": {
42
- "dir": os.path.join(SOURCE_DIR,"time-type"), # e.g. "interventions"
43
- "model": ExaminationTimeType, # e.g. Intervention
44
- "foreign_keys": ["examinations"], # e.g. ["intervention_types"]
45
- "foreign_key_models": [Examination] # e.g. [InterventionType]
33
+ "dir": os.path.join(SOURCE_DIR, "time-type"),
34
+ "model": ExaminationTimeType,
35
+ "foreign_keys": ["examinations"],
36
+ "foreign_key_models": [Examination],
46
37
  },
47
38
  "ExaminationTime": {
48
- "dir": os.path.join(SOURCE_DIR,"time"), # e.g. "interventions"
49
- "model": ExaminationTime, # e.g. Intervention
50
- "foreign_keys": ["time_types"], # e.g. ["intervention_types"]
51
- "foreign_key_models": [ExaminationTimeType] # e.g. [InterventionType]
39
+ "dir": os.path.join(SOURCE_DIR, "time"),
40
+ "model": ExaminationTime,
41
+ "foreign_keys": ["time_types"],
42
+ "foreign_key_models": [ExaminationTimeType],
52
43
  },
53
44
  }
54
45
 
46
+
55
47
  class Command(BaseCommand):
56
48
  help = """Load all .yaml files in the data/intervention directory
57
49
  into the Intervention and InterventionType model"""
58
50
 
59
51
  def add_arguments(self, parser):
60
52
  parser.add_argument(
61
- '--verbose',
62
- action='store_true',
63
- help='Display verbose output',
53
+ "--verbose",
54
+ action="store_true",
55
+ help="Display verbose output",
64
56
  )
65
57
 
66
58
  def handle(self, *args, **options):
67
- verbose = options['verbose']
59
+ verbose = options["verbose"]
68
60
  for model_name in IMPORT_MODELS:
69
61
  _metadata = IMPORT_METADATA[model_name]
70
- load_model_data_from_yaml(
71
- self,
72
- model_name,
73
- _metadata,
74
- verbose
75
- )
62
+ load_model_data_from_yaml(self, model_name, _metadata, verbose)
@@ -1,24 +1,23 @@
1
- from django.conf import settings
2
1
  from django.core.management.base import BaseCommand
2
+
3
+ from ...data import (
4
+ EXAMINATION_INDICATION_CLASSIFICATION_CHOICE_DATA_DIR,
5
+ EXAMINATION_INDICATION_CLASSIFICATION_DATA_DIR,
6
+ EXAMINATION_INDICATION_DATA_DIR,
7
+ )
3
8
  from ...models import (
4
- ExaminationIndicationClassification,
5
9
  ExaminationIndication,
10
+ ExaminationIndicationClassification,
6
11
  ExaminationIndicationClassificationChoice,
7
- Examination,
8
12
  FindingIntervention,
13
+ InformationSource,
9
14
  )
10
15
  from ...utils import load_model_data_from_yaml
11
- from ...data import (
12
- EXAMINATION_INDICATION_CLASSIFICATION_CHOICE_DATA_DIR,
13
- EXAMINATION_INDICATION_CLASSIFICATION_DATA_DIR,
14
- EXAMINATION_INDICATION_DATA_DIR,
15
- )
16
-
17
16
 
18
17
  IMPORT_MODELS = [ # string as model key, serves as key in IMPORT_METADATA
19
- ExaminationIndication.__name__,
20
- ExaminationIndicationClassification.__name__,
21
18
  ExaminationIndicationClassificationChoice.__name__,
19
+ ExaminationIndicationClassification.__name__,
20
+ ExaminationIndication.__name__,
22
21
  ]
23
22
 
24
23
  IMPORT_METADATA = {
@@ -26,31 +25,31 @@ IMPORT_METADATA = {
26
25
  "dir": EXAMINATION_INDICATION_DATA_DIR,
27
26
  "model": ExaminationIndication,
28
27
  "foreign_keys": [
29
- "examinations",
30
28
  "expected_interventions",
29
+ "classifications",
30
+ "information_sources",
31
31
  ],
32
32
  "foreign_key_models": [
33
- Examination,
34
33
  FindingIntervention,
34
+ ExaminationIndicationClassification,
35
+ InformationSource,
35
36
  ],
36
37
  },
37
38
  ExaminationIndicationClassification.__name__: {
38
39
  "dir": EXAMINATION_INDICATION_CLASSIFICATION_DATA_DIR,
39
40
  "model": ExaminationIndicationClassification,
40
41
  "foreign_keys": [
41
- "examinations",
42
- "indications", # This is a many-to-many field
42
+ "choices", # This is a many-to-many field
43
43
  ],
44
44
  "foreign_key_models": [
45
- Examination,
46
- ExaminationIndication,
45
+ ExaminationIndicationClassificationChoice,
47
46
  ],
48
47
  },
49
48
  ExaminationIndicationClassificationChoice.__name__: {
50
49
  "dir": EXAMINATION_INDICATION_CLASSIFICATION_CHOICE_DATA_DIR,
51
50
  "model": ExaminationIndicationClassificationChoice,
52
- "foreign_keys": ["classification"],
53
- "foreign_key_models": [ExaminationIndicationClassification],
51
+ "foreign_keys": [],
52
+ "foreign_key_models": [],
54
53
  },
55
54
  }
56
55
 
@@ -62,7 +61,7 @@ class Command(BaseCommand):
62
61
  def add_arguments(self, parser):
63
62
  """
64
63
  Add the --verbose flag to the command-line argument parser.
65
-
64
+
66
65
  This method augments the parser with a '--verbose' option to enable detailed output
67
66
  during command execution.
68
67
  """
@@ -75,7 +74,7 @@ class Command(BaseCommand):
75
74
  def handle(self, *args, **options):
76
75
  """
77
76
  Executes YAML data import for configured models.
78
-
77
+
79
78
  Retrieves the verbosity flag from the options and iterates through each model
80
79
  in IMPORT_MODELS. For every model, it obtains the associated metadata from
81
80
  IMPORT_METADATA and invokes load_model_data_from_yaml to load data from its YAML files.
@@ -1,128 +1,100 @@
1
1
  from django.core.management.base import BaseCommand
2
- from endoreg_db.models import (
3
- Finding, FindingType, Examination,
4
- FindingClassification, FindingClassificationType, FindingClassificationChoice,
5
- Organ,
6
- FindingIntervention, FindingInterventionType, LabValue, Contraindication
7
2
 
3
+ from endoreg_db.models import (
4
+ Finding,
5
+ FindingClassification,
6
+ FindingClassificationChoice,
7
+ FindingClassificationType,
8
+ FindingIntervention,
9
+ FindingInterventionType,
10
+ FindingType,
8
11
  )
9
- from ...utils import load_model_data_from_yaml
12
+
10
13
  from ...data import (
11
- FINDING_DATA_DIR, FINDING_TYPE_DATA_DIR,
14
+ FINDING_CLASSIFICATION_CHOICE_DATA_DIR,
15
+ FINDING_CLASSIFICATION_DATA_DIR,
16
+ FINDING_CLASSIFICATION_TYPE_DATA_DIR,
17
+ FINDING_DATA_DIR,
12
18
  FINDING_INTERVETION_DATA_DIR,
19
+ FINDING_TYPE_DATA_DIR,
13
20
  FINIDNG_INTERVENTION_TYPE_DATA_DIR,
14
- FINDING_CLASSIFICATION_TYPE_DATA_DIR,
15
- FINDING_CLASSIFICATION_DATA_DIR,
16
- FINDING_CLASSIFICATION_CHOICE_DATA_DIR
17
21
  )
22
+ from ...utils import load_model_data_from_yaml
18
23
 
19
- IMPORT_MODELS = [ # string as model key, serves as key in IMPORT_METADATA
24
+ IMPORT_MODELS = [ # string as model key, serves as key in IMPORT_METADATA
20
25
  FindingInterventionType.__name__,
21
26
  FindingIntervention.__name__,
22
27
  FindingType.__name__,
23
- Finding.__name__,
24
- FindingClassificationType.__name__,
25
28
  FindingClassificationChoice.__name__,
29
+ FindingClassificationType.__name__,
26
30
  FindingClassification.__name__,
31
+ Finding.__name__,
27
32
  ]
28
33
 
29
34
  IMPORT_METADATA = {
30
35
  FindingType.__name__: {
31
- "dir": FINDING_TYPE_DATA_DIR, # e.g. "interventions"
32
- "model": FindingType, # e.g. Intervention
33
- "foreign_keys": [], # e.g. ["intervention_types"]
34
- "foreign_key_models": [] # e.g. [InterventionType]
36
+ "dir": FINDING_TYPE_DATA_DIR,
37
+ "model": FindingType,
38
+ "foreign_keys": [],
39
+ "foreign_key_models": [],
35
40
  },
36
41
  Finding.__name__: {
37
- "dir": FINDING_DATA_DIR, # e.g. "interventions"
38
- "model": Finding, # e.g. Intervention
39
- "foreign_keys": [
40
- "finding_types",
41
- "examinations",
42
- "finding_interventions",
43
- ], # e.g. ["intervention_types"]
44
- "foreign_key_models": [
45
- FindingType,
46
- Examination,
47
- FindingIntervention,
48
- FindingIntervention,
49
- FindingIntervention,
50
- ] # e.g. [InterventionType]
42
+ "dir": FINDING_DATA_DIR,
43
+ "model": Finding,
44
+ "foreign_keys": ["finding_types", "finding_interventions", "finding_classifications", "caused_by_interventions"],
45
+ "foreign_key_models": [FindingType, FindingIntervention, FindingClassification, FindingIntervention],
51
46
  },
52
47
  FindingInterventionType.__name__: {
53
- "dir": FINIDNG_INTERVENTION_TYPE_DATA_DIR, # e.g. "interventions"
54
- "model": FindingInterventionType, # e.g. Intervention
55
- "foreign_keys": [], # e.g. ["intervention_types"]
56
- "foreign_key_models": [] # e.g. [InterventionType]
48
+ "dir": FINIDNG_INTERVENTION_TYPE_DATA_DIR,
49
+ "model": FindingInterventionType,
50
+ "foreign_keys": [],
51
+ "foreign_key_models": [],
57
52
  },
58
53
  FindingIntervention.__name__: {
59
- "dir": FINDING_INTERVETION_DATA_DIR, # e.g. "interventions"
60
- "model": FindingIntervention, # e.g. Intervention
61
- "foreign_keys": [
62
- "intervention_types",
63
- "required_lab_values",
64
- "contraindications"
65
- ], # e.g. ["intervention_types"]
66
- "foreign_key_models": [
67
- FindingInterventionType,
68
- LabValue,
69
- Contraindication
70
- ] # e.g. [InterventionType]
54
+ "dir": FINDING_INTERVETION_DATA_DIR,
55
+ "model": FindingIntervention,
56
+ "foreign_keys": ["intervention_types"],
57
+ "foreign_key_models": [FindingInterventionType],
71
58
  },
72
59
  FindingClassificationType.__name__: {
73
- "dir": FINDING_CLASSIFICATION_TYPE_DATA_DIR, # e.g. "interventions"
74
- "model": FindingClassificationType, # e.g. Intervention
75
- "foreign_keys": [], # e.g. ["intervention_types"]
76
- "foreign_key_models": [] # e.g. [InterventionType]
60
+ "dir": FINDING_CLASSIFICATION_TYPE_DATA_DIR,
61
+ "model": FindingClassificationType,
62
+ "foreign_keys": [],
63
+ "foreign_key_models": [],
77
64
  },
78
65
  FindingClassification.__name__: {
79
- "dir": FINDING_CLASSIFICATION_DATA_DIR, # e.g. "interventions"
80
- "model": FindingClassification, # e.g. Intervention
81
- "foreign_keys": [
82
- "classification_types",
83
- "findings",
84
- "examinations",
85
- "finding_types",
86
- "choices"
87
- ], # e.g. ["intervention_types"]
66
+ "dir": FINDING_CLASSIFICATION_DATA_DIR,
67
+ "model": FindingClassification,
68
+ "foreign_keys": ["classification_types", "findings", "finding_types", "choices"],
88
69
  "foreign_key_models": [
89
70
  FindingClassificationType,
90
71
  Finding,
91
- Examination,
92
72
  FindingType,
93
73
  FindingClassificationChoice,
94
- ] # e.g. [InterventionType]
74
+ ],
95
75
  },
96
76
  FindingClassificationChoice.__name__: {
97
- "dir": FINDING_CLASSIFICATION_CHOICE_DATA_DIR, # e.g. "interventions"
98
- "model": FindingClassificationChoice, # e.g. Intervention
99
- "foreign_keys": [
100
- # "classifications",
101
- ], # e.g. ["intervention_types"]
102
- "foreign_key_models": [
103
- # FindingClassification
104
- ] # e.g. [InterventionType]
77
+ "dir": FINDING_CLASSIFICATION_CHOICE_DATA_DIR,
78
+ "model": FindingClassificationChoice,
79
+ "foreign_keys": [],
80
+ "foreign_key_models": [],
105
81
  },
106
82
  }
107
83
 
84
+
108
85
  class Command(BaseCommand):
109
86
  help = """Load all .yaml files in the data/intervention directory
110
87
  into the Intervention and InterventionType model"""
111
88
 
112
89
  def add_arguments(self, parser):
113
90
  parser.add_argument(
114
- '--verbose',
115
- action='store_true',
116
- help='Display verbose output',
91
+ "--verbose",
92
+ action="store_true",
93
+ help="Display verbose output",
117
94
  )
118
95
 
119
96
  def handle(self, *args, **options):
120
- verbose = options['verbose']
97
+ verbose = options["verbose"]
121
98
  for model_name in IMPORT_MODELS:
122
99
  _metadata = IMPORT_METADATA[model_name]
123
- load_model_data_from_yaml(
124
- self,
125
- model_name,
126
- _metadata,
127
- verbose
128
- )
100
+ load_model_data_from_yaml(self, model_name, _metadata, verbose)
@@ -1,51 +1,49 @@
1
- from django.conf import settings
2
1
  import os
2
+
3
+ from django.conf import settings
3
4
  from django.core.management.base import BaseCommand
5
+
6
+ from ...data import INFORMATION_DATA_DIR, INFORMATION_SOURCE_TYPE_DATA_DIR
4
7
  from ...models import InformationSource, InformationSourceType
5
8
  from ...utils import load_model_data_from_yaml
6
- from ...data import INFORMATION_DATA_DIR, INFORMATION_SOURCE_TYPE_DATA_DIR
7
9
 
8
- SOURCE_DIR = INFORMATION_DATA_DIR # e.g. settings.DATA_DIR_INTERVENTION
10
+ SOURCE_DIR = INFORMATION_DATA_DIR # e.g. settings.DATA_DIR_INTERVENTION
9
11
 
10
12
 
11
- IMPORT_MODELS = [ # string as model key, serves as key in IMPORT_METADATA
13
+ IMPORT_MODELS = [ # string as model key, serves as key in IMPORT_METADATA
12
14
  InformationSourceType.__name__,
13
15
  InformationSource.__name__,
14
16
  ]
15
17
 
16
18
  IMPORT_METADATA = {
17
19
  InformationSourceType.__name__: {
18
- "dir": INFORMATION_SOURCE_TYPE_DATA_DIR, # e.g. "intervention_type"
19
- "model": InformationSourceType, # e.g. InterventionType
20
- "foreign_keys": [], # e.g. ["intervention_types"]
21
- "foreign_key_models": [] # e.g. [InterventionType]
20
+ "dir": INFORMATION_SOURCE_TYPE_DATA_DIR, # e.g. "intervention_type"
21
+ "model": InformationSourceType,
22
+ "foreign_keys": [], # e.g. ["intervention_types"]
23
+ "foreign_key_models": [], # e.g. [InterventionType]
22
24
  },
23
25
  InformationSource.__name__: {
24
- "dir": SOURCE_DIR, # e.g. "interventions"
25
- "model": InformationSource, # e.g. Intervention
26
- "foreign_keys": ["information_source_types"], # e.g. ["intervention_types"]
27
- "foreign_key_models": [InformationSourceType] # e.g. [InterventionType]
28
- }
26
+ "dir": SOURCE_DIR, # e.g. "interventions"
27
+ "model": InformationSource,
28
+ "foreign_keys": ["information_source_types"], # e.g. ["intervention_types"]
29
+ "foreign_key_models": [InformationSourceType], # e.g. [InterventionType]
30
+ },
29
31
  }
30
32
 
33
+
31
34
  class Command(BaseCommand):
32
35
  help = """Load all .yaml files in the data/intervention directory
33
36
  into the Intervention and InterventionType model"""
34
37
 
35
38
  def add_arguments(self, parser):
36
39
  parser.add_argument(
37
- '--verbose',
38
- action='store_true',
39
- help='Display verbose output',
40
+ "--verbose",
41
+ action="store_true",
42
+ help="Display verbose output",
40
43
  )
41
44
 
42
45
  def handle(self, *args, **options):
43
- verbose = options['verbose']
46
+ verbose = options["verbose"]
44
47
  for model_name in IMPORT_MODELS:
45
48
  _metadata = IMPORT_METADATA[model_name]
46
- load_model_data_from_yaml(
47
- self,
48
- model_name,
49
- _metadata,
50
- verbose
51
- )
49
+ load_model_data_from_yaml(self, model_name, _metadata, verbose)
@@ -1,50 +1,41 @@
1
1
  from django.core.management.base import BaseCommand
2
+
2
3
  from endoreg_db.models import LabValue as MODEL_0
3
- from endoreg_db.models import PatientLabSampleType, NumericValueDistribution
4
- from ...utils import load_model_data_from_yaml
4
+ from endoreg_db.models import NumericValueDistribution, PatientLabSampleType, Unit
5
+
5
6
  from ...data import LAB_VALUE_DATA_DIR as SOURCE_DIR
6
7
  from ...data import PATIENT_LAB_SAMPLE_TYPE_DATA_DIR
8
+ from ...utils import load_model_data_from_yaml
7
9
 
8
- from endoreg_db.models import Unit
9
-
10
- IMPORT_MODELS = [ # string as model key, serves as key in IMPORT_METADATA
10
+ IMPORT_MODELS = [ # string as model key, serves as key in IMPORT_METADATA
11
11
  MODEL_0.__name__,
12
- PatientLabSampleType.__name__
12
+ PatientLabSampleType.__name__,
13
13
  ]
14
14
 
15
15
  IMPORT_METADATA = {
16
16
  MODEL_0.__name__: {
17
- "dir": SOURCE_DIR, # e.g. "interventions"
18
- "model": MODEL_0, # e.g. Intervention
19
- "foreign_keys": ["default_unit","default_numerical_value_distribution"], # e.g. ["intervention_types"]
20
- "foreign_key_models": [Unit, NumericValueDistribution] # e.g. [InterventionType]
17
+ "dir": SOURCE_DIR, # e.g. "interventions"
18
+ "model": MODEL_0,
19
+ "foreign_keys": ["default_unit", "default_numerical_value_distribution"], # e.g. ["intervention_types"]
20
+ "foreign_key_models": [Unit, NumericValueDistribution], # e.g. [InterventionType]
21
21
  },
22
- PatientLabSampleType.__name__: {
23
- "dir": PATIENT_LAB_SAMPLE_TYPE_DATA_DIR,
24
- "model": PatientLabSampleType,
25
- "foreign_keys": [],
26
- "foreign_key_models": []
27
- }
22
+ PatientLabSampleType.__name__: {"dir": PATIENT_LAB_SAMPLE_TYPE_DATA_DIR, "model": PatientLabSampleType, "foreign_keys": [], "foreign_key_models": []},
28
23
  }
29
24
 
25
+
30
26
  class Command(BaseCommand):
31
27
  help = """Load all .yaml files in the data/intervention directory
32
28
  into the Intervention and InterventionType model"""
33
29
 
34
30
  def add_arguments(self, parser):
35
31
  parser.add_argument(
36
- '--verbose',
37
- action='store_true',
38
- help='Display verbose output',
32
+ "--verbose",
33
+ action="store_true",
34
+ help="Display verbose output",
39
35
  )
40
36
 
41
37
  def handle(self, *args, **options):
42
- verbose = options['verbose']
38
+ verbose = options["verbose"]
43
39
  for model_name in IMPORT_MODELS:
44
40
  _metadata = IMPORT_METADATA[model_name]
45
- load_model_data_from_yaml(
46
- self,
47
- model_name,
48
- _metadata,
49
- verbose
50
- )
41
+ load_model_data_from_yaml(self, model_name, _metadata, verbose)
@@ -1,25 +1,26 @@
1
1
  from django.core.management.base import BaseCommand
2
+
2
3
  from endoreg_db.models import (
4
+ Disease,
5
+ DiseaseClassificationChoice,
6
+ Event,
7
+ InformationSource,
3
8
  Medication,
4
9
  MedicationIndication,
5
10
  MedicationIndicationType,
6
11
  MedicationIntakeTime,
7
12
  MedicationSchedule,
8
13
  Unit,
9
- Disease,
10
- Event,
11
- InformationSource,
12
- DiseaseClassificationChoice,
13
14
  )
14
- from ...utils import load_model_data_from_yaml
15
+
15
16
  from ...data import (
16
17
  MEDICATION_DATA_DIR,
18
+ MEDICATION_INDICATION_DATA_DIR,
17
19
  MEDICATION_INDICATION_TYPE_DATA_DIR,
18
20
  MEDICATION_INTAKE_TIME_DATA_DIR,
19
21
  MEDICATION_SCHEDULE_DATA_DIR,
20
- MEDICATION_INDICATION_DATA_DIR,
21
22
  )
22
-
23
+ from ...utils import load_model_data_from_yaml
23
24
 
24
25
  IMPORT_MODELS = [ # string as model key, serves as key in IMPORT_METADATA
25
26
  Medication.__name__,
@@ -32,25 +33,25 @@ IMPORT_MODELS = [ # string as model key, serves as key in IMPORT_METADATA
32
33
  IMPORT_METADATA = {
33
34
  Medication.__name__: {
34
35
  "dir": MEDICATION_DATA_DIR, # e.g. "interventions"
35
- "model": Medication, # e.g. Intervention
36
+ "model": Medication,
36
37
  "foreign_keys": ["default_unit"], # e.g. ["intervention_types"]
37
38
  "foreign_key_models": [Unit], # e.g. [InterventionType]
38
39
  },
39
40
  MedicationIndicationType.__name__: {
40
41
  "dir": MEDICATION_INDICATION_TYPE_DATA_DIR, # e.g. "interventions"
41
- "model": MedicationIndicationType, # e.g. Intervention
42
+ "model": MedicationIndicationType,
42
43
  "foreign_keys": [], # e.g. ["intervention_types"]
43
44
  "foreign_key_models": [], # e.g. [InterventionType]
44
45
  },
45
46
  MedicationIntakeTime.__name__: {
46
47
  "dir": MEDICATION_INTAKE_TIME_DATA_DIR, # e.g. "interventions"
47
- "model": MedicationIntakeTime, # e.g. Intervention
48
+ "model": MedicationIntakeTime,
48
49
  "foreign_keys": [], # e.g. ["intervention_types"]
49
50
  "foreign_key_models": [], # e.g. [InterventionType]
50
51
  },
51
52
  MedicationSchedule.__name__: {
52
53
  "dir": MEDICATION_SCHEDULE_DATA_DIR, # e.g. "interventions"
53
- "model": MedicationSchedule, # e.g. Intervention
54
+ "model": MedicationSchedule,
54
55
  "foreign_keys": [
55
56
  "medication",
56
57
  "intake_times",
@@ -64,7 +65,7 @@ IMPORT_METADATA = {
64
65
  },
65
66
  MedicationIndication.__name__: {
66
67
  "dir": MEDICATION_INDICATION_DATA_DIR, # e.g. "interventions"
67
- "model": MedicationIndication, # e.g. Intervention
68
+ "model": MedicationIndication,
68
69
  "foreign_keys": [
69
70
  "indication_type",
70
71
  "medication_schedules",
@@ -1,43 +1,39 @@
1
1
  from django.core.management.base import BaseCommand
2
+
2
3
  from endoreg_db.models import Organ
4
+
5
+ from ...data import ORGAN_DATA_DIR
3
6
  from ...utils import load_model_data_from_yaml
4
- from ...data import (
5
- ORGAN_DATA_DIR
6
- )
7
7
 
8
8
  MODEL_0 = Organ
9
9
 
10
- IMPORT_MODELS = [ # string as model key, serves as key in IMPORT_METADATA
11
- MODEL_0.__name__,#
10
+ IMPORT_MODELS = [ # string as model key, serves as key in IMPORT_METADATA
11
+ MODEL_0.__name__, #
12
12
  ]
13
13
 
14
14
  IMPORT_METADATA = {
15
15
  MODEL_0.__name__: {
16
- "dir": ORGAN_DATA_DIR, # e.g. "interventions"
17
- "model": MODEL_0, # e.g. Intervention
18
- "foreign_keys": [], # e.g. ["intervention_types"]
19
- "foreign_key_models": [] # e.g. [InterventionType]
16
+ "dir": ORGAN_DATA_DIR, # e.g. "interventions"
17
+ "model": MODEL_0,
18
+ "foreign_keys": [], # e.g. ["intervention_types"]
19
+ "foreign_key_models": [], # e.g. [InterventionType]
20
20
  }
21
21
  }
22
22
 
23
+
23
24
  class Command(BaseCommand):
24
25
  help = """Load all .yaml files in the data/intervention directory
25
26
  into the Intervention and InterventionType model"""
26
27
 
27
28
  def add_arguments(self, parser):
28
29
  parser.add_argument(
29
- '--verbose',
30
- action='store_true',
31
- help='Display verbose output',
30
+ "--verbose",
31
+ action="store_true",
32
+ help="Display verbose output",
32
33
  )
33
34
 
34
35
  def handle(self, *args, **options):
35
- verbose = options['verbose']
36
+ verbose = options["verbose"]
36
37
  for model_name in IMPORT_MODELS:
37
38
  _metadata = IMPORT_METADATA[model_name]
38
- load_model_data_from_yaml(
39
- self,
40
- model_name,
41
- _metadata,
42
- verbose
43
- )
39
+ load_model_data_from_yaml(self, model_name, _metadata, verbose)