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.

Files changed (320) hide show
  1. endoreg_db/admin.py +90 -1
  2. endoreg_db/urls.py +173 -0
  3. endoreg_db/views.py +0 -3
  4. endoreg_db-0.6.0.dist-info/METADATA +151 -0
  5. endoreg_db-0.6.0.dist-info/RECORD +11 -0
  6. {endoreg_db-0.5.2.dist-info → endoreg_db-0.6.0.dist-info}/WHEEL +2 -1
  7. endoreg_db-0.6.0.dist-info/top_level.txt +1 -0
  8. endoreg_db/data/__init__.py +0 -72
  9. endoreg_db/data/active_model/data.yaml +0 -3
  10. endoreg_db/data/agl_service/data.yaml +0 -19
  11. endoreg_db/data/case_template/rule/00_patient_lab_sample_add_default_value.yaml +0 -167
  12. endoreg_db/data/case_template/rule/01_patient-set-age.yaml +0 -8
  13. endoreg_db/data/case_template/rule/01_patient-set-gender.yaml +0 -9
  14. endoreg_db/data/case_template/rule/11_create_patient_lab_sample.yaml +0 -23
  15. endoreg_db/data/case_template/rule/12_create-patient_medication-anticoagulation.yaml +0 -19
  16. endoreg_db/data/case_template/rule/13_create-patient_medication_schedule-anticoagulation.yaml +0 -19
  17. endoreg_db/data/case_template/rule/19_create_patient.yaml +0 -17
  18. endoreg_db/data/case_template/rule_type/base_types.yaml +0 -35
  19. endoreg_db/data/case_template/rule_value/.init +0 -0
  20. endoreg_db/data/case_template/rule_value_type/base_types.yaml +0 -59
  21. endoreg_db/data/case_template/template/base.yaml +0 -8
  22. endoreg_db/data/case_template/template_type/pre_endoscopy.yaml +0 -3
  23. endoreg_db/data/case_template/tmp/_rule_value +0 -13
  24. endoreg_db/data/case_template/tmp/rule/01_atrial_fibrillation.yaml +0 -21
  25. endoreg_db/data/case_template/tmp/rule/02_create_object.yaml +0 -10
  26. endoreg_db/data/case_template/tmp/template/atrial_fibrillation_low_risk.yaml +0 -7
  27. endoreg_db/data/center/data.yaml +0 -60
  28. endoreg_db/data/center_resource/green_endoscopy_dashboard_CenterResource.yaml +0 -144
  29. endoreg_db/data/center_waste/green_endoscopy_dashboard_CenterWaste.yaml +0 -48
  30. endoreg_db/data/disease/cardiovascular.yaml +0 -37
  31. endoreg_db/data/disease/hepatology.yaml +0 -5
  32. endoreg_db/data/disease/misc.yaml +0 -6
  33. endoreg_db/data/disease/renal.yaml +0 -5
  34. endoreg_db/data/disease_classification/chronic_kidney_disease.yaml +0 -6
  35. endoreg_db/data/disease_classification/coronary_vessel_disease.yaml +0 -6
  36. endoreg_db/data/disease_classification_choice/chronic_kidney_disease.yaml +0 -41
  37. endoreg_db/data/disease_classification_choice/coronary_vessel_disease.yaml +0 -20
  38. endoreg_db/data/distribution/date/patient.yaml +0 -7
  39. endoreg_db/data/distribution/multiple_categorical/.init +0 -0
  40. endoreg_db/data/distribution/numeric/.init +0 -0
  41. endoreg_db/data/distribution/single_categorical/patient.yaml +0 -7
  42. endoreg_db/data/emission_factor/green_endoscopy_dashboard_EmissionFactor.yaml +0 -132
  43. endoreg_db/data/endoscope_type/data.yaml +0 -11
  44. endoreg_db/data/endoscopy_processor/data.yaml +0 -47
  45. endoreg_db/data/event/cardiology.yaml +0 -28
  46. endoreg_db/data/event/neurology.yaml +0 -14
  47. endoreg_db/data/event/surgery.yaml +0 -13
  48. endoreg_db/data/event/thrombembolism.yaml +0 -20
  49. endoreg_db/data/examination/examinations/data.yaml +0 -66
  50. endoreg_db/data/examination/time/data.yaml +0 -48
  51. endoreg_db/data/examination/time-type/data.yaml +0 -8
  52. endoreg_db/data/examination/type/data.yaml +0 -5
  53. endoreg_db/data/gender/data.yaml +0 -18
  54. endoreg_db/data/information_source/data.yaml +0 -30
  55. endoreg_db/data/information_source/medication.yaml +0 -6
  56. endoreg_db/data/lab_value/cardiac_enzymes.yaml +0 -31
  57. endoreg_db/data/lab_value/coagulation.yaml +0 -49
  58. endoreg_db/data/lab_value/electrolytes.yaml +0 -190
  59. endoreg_db/data/lab_value/gastrointestinal_function.yaml +0 -121
  60. endoreg_db/data/lab_value/hematology.yaml +0 -169
  61. endoreg_db/data/lab_value/hormones.yaml +0 -53
  62. endoreg_db/data/lab_value/lipids.yaml +0 -44
  63. endoreg_db/data/lab_value/misc.yaml +0 -30
  64. endoreg_db/data/lab_value/renal_function.yaml +0 -11
  65. endoreg_db/data/label/label/data.yaml +0 -62
  66. endoreg_db/data/label/label-set/data.yaml +0 -18
  67. endoreg_db/data/label/label-type/data.yaml +0 -7
  68. endoreg_db/data/log_type/data.yaml +0 -57
  69. endoreg_db/data/material/material.yaml +0 -91
  70. endoreg_db/data/medication/anticoagulation.yaml +0 -65
  71. endoreg_db/data/medication/tah.yaml +0 -70
  72. endoreg_db/data/medication_indication/anticoagulation.yaml +0 -120
  73. endoreg_db/data/medication_indication_type/data.yaml +0 -11
  74. endoreg_db/data/medication_indication_type/thrombembolism.yaml +0 -41
  75. endoreg_db/data/medication_intake_time/base.yaml +0 -31
  76. endoreg_db/data/medication_schedule/apixaban.yaml +0 -95
  77. endoreg_db/data/medication_schedule/ass.yaml +0 -12
  78. endoreg_db/data/medication_schedule/enoxaparin.yaml +0 -26
  79. endoreg_db/data/model_type/data.yaml +0 -7
  80. endoreg_db/data/network_device/data.yaml +0 -29
  81. endoreg_db/data/network_device_type/data.yaml +0 -12
  82. endoreg_db/data/patient_lab_sample_type/generic.yaml +0 -6
  83. endoreg_db/data/pdf_type/data.yaml +0 -28
  84. endoreg_db/data/product/green_endoscopy_dashboard_Product.yaml +0 -66
  85. endoreg_db/data/product_group/green_endoscopy_dashboard_ProductGroup.yaml +0 -33
  86. endoreg_db/data/product_material/green_endoscopy_dashboard_ProductMaterial.yaml +0 -308
  87. endoreg_db/data/product_weight/green_endoscopy_dashboard_ProductWeight.yaml +0 -88
  88. endoreg_db/data/profession/data.yaml +0 -70
  89. endoreg_db/data/reference_product/green_endoscopy_dashboard_ReferenceProduct.yaml +0 -55
  90. endoreg_db/data/report_reader_flag/ukw-examination-generic.yaml +0 -26
  91. endoreg_db/data/report_reader_flag/ukw-histology-generic.yaml +0 -19
  92. endoreg_db/data/resource/green_endoscopy_dashboard_Resource.yaml +0 -15
  93. endoreg_db/data/tmp/chronic_kidney_disease.yaml +0 -0
  94. endoreg_db/data/tmp/congestive_heart_failure.yaml +0 -0
  95. endoreg_db/data/transport_route/green_endoscopy_dashboard_TransportRoute.yaml +0 -12
  96. endoreg_db/data/unit/concentration.yaml +0 -92
  97. endoreg_db/data/unit/data.yaml +0 -17
  98. endoreg_db/data/unit/length.yaml +0 -31
  99. endoreg_db/data/unit/misc.yaml +0 -20
  100. endoreg_db/data/unit/rate.yaml +0 -6
  101. endoreg_db/data/unit/time.yaml +0 -13
  102. endoreg_db/data/unit/volume.yaml +0 -35
  103. endoreg_db/data/unit/weight.yaml +0 -38
  104. endoreg_db/data/waste/data.yaml +0 -12
  105. endoreg_db/forms/__init__.py +0 -3
  106. endoreg_db/forms/questionnaires/__init__.py +0 -1
  107. endoreg_db/forms/questionnaires/tto_questionnaire.py +0 -23
  108. endoreg_db/forms/settings/__init__.py +0 -8
  109. endoreg_db/forms/unit.py +0 -6
  110. endoreg_db/management/commands/_load_model_template.py +0 -41
  111. endoreg_db/management/commands/delete_all.py +0 -18
  112. endoreg_db/management/commands/delete_legacy_images.py +0 -19
  113. endoreg_db/management/commands/delete_legacy_videos.py +0 -17
  114. endoreg_db/management/commands/extract_legacy_video_frames.py +0 -18
  115. endoreg_db/management/commands/fetch_legacy_image_dataset.py +0 -32
  116. endoreg_db/management/commands/fix_auth_permission.py +0 -20
  117. endoreg_db/management/commands/import_legacy_images.py +0 -94
  118. endoreg_db/management/commands/import_legacy_videos.py +0 -76
  119. endoreg_db/management/commands/load_active_model_data.py +0 -45
  120. endoreg_db/management/commands/load_ai_model_data.py +0 -45
  121. endoreg_db/management/commands/load_base_db_data.py +0 -136
  122. endoreg_db/management/commands/load_center_data.py +0 -43
  123. endoreg_db/management/commands/load_disease_classification_choices_data.py +0 -41
  124. endoreg_db/management/commands/load_disease_classification_data.py +0 -41
  125. endoreg_db/management/commands/load_disease_data.py +0 -40
  126. endoreg_db/management/commands/load_distribution_data.py +0 -66
  127. endoreg_db/management/commands/load_endoscope_type_data.py +0 -45
  128. endoreg_db/management/commands/load_endoscopy_processor_data.py +0 -45
  129. endoreg_db/management/commands/load_event_data.py +0 -41
  130. endoreg_db/management/commands/load_examination_data.py +0 -75
  131. endoreg_db/management/commands/load_g_play_data.py +0 -113
  132. endoreg_db/management/commands/load_gender_data.py +0 -44
  133. endoreg_db/management/commands/load_green_endoscopy_wuerzburg_data.py +0 -133
  134. endoreg_db/management/commands/load_information_source.py +0 -45
  135. endoreg_db/management/commands/load_lab_value_data.py +0 -50
  136. endoreg_db/management/commands/load_label_data.py +0 -67
  137. endoreg_db/management/commands/load_logging_data.py +0 -39
  138. endoreg_db/management/commands/load_medication_data.py +0 -41
  139. endoreg_db/management/commands/load_medication_indication_data.py +0 -63
  140. endoreg_db/management/commands/load_medication_indication_type_data.py +0 -41
  141. endoreg_db/management/commands/load_medication_intake_time_data.py +0 -41
  142. endoreg_db/management/commands/load_medication_schedule_data.py +0 -55
  143. endoreg_db/management/commands/load_network_data.py +0 -57
  144. endoreg_db/management/commands/load_pdf_type_data.py +0 -61
  145. endoreg_db/management/commands/load_profession_data.py +0 -44
  146. endoreg_db/management/commands/load_report_reader_flag.py +0 -46
  147. endoreg_db/management/commands/load_unit_data.py +0 -46
  148. endoreg_db/management/commands/load_user_groups.py +0 -28
  149. endoreg_db/management/commands/register_ai_model.py +0 -64
  150. endoreg_db/management/commands/reset_celery_schedule.py +0 -9
  151. endoreg_db/migrations/0001_initial.py +0 -1567
  152. endoreg_db/migrations/0002_anonymizedimagelabel_anonymousimageannotation_and_more.py +0 -55
  153. endoreg_db/migrations/0003_anonymousimageannotation_original_image_url_and_more.py +0 -39
  154. endoreg_db/migrations/0004_alter_rawpdffile_file.py +0 -20
  155. endoreg_db/migrations/0005_uploadedfile_alter_rawpdffile_file_anonymizedfile.py +0 -40
  156. endoreg_db/migrations/0006_alter_rawpdffile_file.py +0 -20
  157. endoreg_db/migrations/0007_networkdevicelogentry_datetime_and_more.py +0 -43
  158. endoreg_db/migrations/0008_networkdevicelogentry_aglnet_ip_and_more.py +0 -28
  159. endoreg_db/migrations/0009_alter_networkdevicelogentry_vpn_service_status.py +0 -18
  160. endoreg_db/migrations/0010_remove_networkdevicelogentry_hostname.py +0 -17
  161. endoreg_db/migrations/__init__.py +0 -0
  162. endoreg_db/models/__init__.py +0 -73
  163. endoreg_db/models/ai_model/__init__.py +0 -3
  164. endoreg_db/models/ai_model/active_model.py +0 -9
  165. endoreg_db/models/ai_model/model_meta.py +0 -24
  166. endoreg_db/models/ai_model/model_type.py +0 -26
  167. endoreg_db/models/ai_model/utils.py +0 -8
  168. endoreg_db/models/annotation/__init__.py +0 -3
  169. endoreg_db/models/annotation/anonymized_image_annotation.py +0 -60
  170. endoreg_db/models/annotation/binary_classification_annotation_task.py +0 -80
  171. endoreg_db/models/annotation/image_classification.py +0 -27
  172. endoreg_db/models/case_template/__init__.py +0 -6
  173. endoreg_db/models/case_template/case_template.py +0 -81
  174. endoreg_db/models/case_template/case_template_rule.py +0 -276
  175. endoreg_db/models/case_template/case_template_rule_value.py +0 -73
  176. endoreg_db/models/case_template/case_template_type.py +0 -28
  177. endoreg_db/models/center/__init__.py +0 -4
  178. endoreg_db/models/center/center.py +0 -25
  179. endoreg_db/models/center/center_product.py +0 -34
  180. endoreg_db/models/center/center_resource.py +0 -19
  181. endoreg_db/models/center/center_waste.py +0 -11
  182. endoreg_db/models/data_file/__init__.py +0 -6
  183. endoreg_db/models/data_file/base_classes/__init__.py +0 -2
  184. endoreg_db/models/data_file/base_classes/abstract_frame.py +0 -51
  185. endoreg_db/models/data_file/base_classes/abstract_video.py +0 -201
  186. endoreg_db/models/data_file/frame.py +0 -45
  187. endoreg_db/models/data_file/import_classes/__init__.py +0 -32
  188. endoreg_db/models/data_file/import_classes/processing_functions/__init__.py +0 -35
  189. endoreg_db/models/data_file/import_classes/processing_functions/pdf.py +0 -28
  190. endoreg_db/models/data_file/import_classes/processing_functions/video.py +0 -260
  191. endoreg_db/models/data_file/import_classes/raw_pdf.py +0 -188
  192. endoreg_db/models/data_file/import_classes/raw_video.py +0 -343
  193. endoreg_db/models/data_file/metadata/__init__.py +0 -3
  194. endoreg_db/models/data_file/metadata/pdf_meta.py +0 -70
  195. endoreg_db/models/data_file/metadata/sensitive_meta.py +0 -31
  196. endoreg_db/models/data_file/metadata/video_meta.py +0 -133
  197. endoreg_db/models/data_file/report_file.py +0 -89
  198. endoreg_db/models/data_file/video/__init__.py +0 -7
  199. endoreg_db/models/data_file/video/import_meta.py +0 -25
  200. endoreg_db/models/data_file/video/video.py +0 -25
  201. endoreg_db/models/data_file/video_segment.py +0 -107
  202. endoreg_db/models/disease.py +0 -56
  203. endoreg_db/models/emission/__init__.py +0 -1
  204. endoreg_db/models/emission/emission_factor.py +0 -20
  205. endoreg_db/models/event.py +0 -22
  206. endoreg_db/models/examination/__init__.py +0 -4
  207. endoreg_db/models/examination/examination.py +0 -26
  208. endoreg_db/models/examination/examination_time.py +0 -27
  209. endoreg_db/models/examination/examination_time_type.py +0 -24
  210. endoreg_db/models/examination/examination_type.py +0 -18
  211. endoreg_db/models/hardware/__init__.py +0 -2
  212. endoreg_db/models/hardware/endoscope.py +0 -44
  213. endoreg_db/models/hardware/endoscopy_processor.py +0 -143
  214. endoreg_db/models/information_source.py +0 -29
  215. endoreg_db/models/label/__init__.py +0 -1
  216. endoreg_db/models/label/label.py +0 -84
  217. endoreg_db/models/laboratory/__init__.py +0 -1
  218. endoreg_db/models/laboratory/lab_value.py +0 -102
  219. endoreg_db/models/legacy_data/__init__.py +0 -3
  220. endoreg_db/models/legacy_data/image.py +0 -34
  221. endoreg_db/models/logging/__init__.py +0 -4
  222. endoreg_db/models/logging/agl_service.py +0 -19
  223. endoreg_db/models/logging/base.py +0 -22
  224. endoreg_db/models/logging/log_type.py +0 -23
  225. endoreg_db/models/logging/network_device.py +0 -27
  226. endoreg_db/models/medication/__init__.py +0 -1
  227. endoreg_db/models/medication/medication.py +0 -148
  228. endoreg_db/models/network/__init__.py +0 -3
  229. endoreg_db/models/network/agl_service.py +0 -38
  230. endoreg_db/models/network/network_device.py +0 -53
  231. endoreg_db/models/network/network_device_type.py +0 -23
  232. endoreg_db/models/other/__init__.py +0 -5
  233. endoreg_db/models/other/distribution.py +0 -215
  234. endoreg_db/models/other/material.py +0 -16
  235. endoreg_db/models/other/resource.py +0 -18
  236. endoreg_db/models/other/transport_route.py +0 -21
  237. endoreg_db/models/other/waste.py +0 -20
  238. endoreg_db/models/patient_examination/__init__.py +0 -35
  239. endoreg_db/models/permissions/__init__.py +0 -44
  240. endoreg_db/models/persons/__init__.py +0 -7
  241. endoreg_db/models/persons/examiner/__init__.py +0 -2
  242. endoreg_db/models/persons/examiner/examiner.py +0 -16
  243. endoreg_db/models/persons/examiner/examiner_type.py +0 -2
  244. endoreg_db/models/persons/first_name.py +0 -18
  245. endoreg_db/models/persons/gender.py +0 -22
  246. endoreg_db/models/persons/last_name.py +0 -20
  247. endoreg_db/models/persons/patient/__init__.py +0 -8
  248. endoreg_db/models/persons/patient/case/__init__.py +0 -0
  249. endoreg_db/models/persons/patient/case/case.py +0 -30
  250. endoreg_db/models/persons/patient/patient.py +0 -216
  251. endoreg_db/models/persons/patient/patient_disease.py +0 -16
  252. endoreg_db/models/persons/patient/patient_event.py +0 -22
  253. endoreg_db/models/persons/patient/patient_lab_sample.py +0 -106
  254. endoreg_db/models/persons/patient/patient_lab_value.py +0 -176
  255. endoreg_db/models/persons/patient/patient_medication.py +0 -44
  256. endoreg_db/models/persons/patient/patient_medication_schedule.py +0 -28
  257. endoreg_db/models/persons/person.py +0 -31
  258. endoreg_db/models/persons/portal_user_information.py +0 -27
  259. endoreg_db/models/prediction/__init__.py +0 -2
  260. endoreg_db/models/prediction/image_classification.py +0 -37
  261. endoreg_db/models/prediction/video_prediction_meta.py +0 -244
  262. endoreg_db/models/product/__init__.py +0 -5
  263. endoreg_db/models/product/product.py +0 -97
  264. endoreg_db/models/product/product_group.py +0 -19
  265. endoreg_db/models/product/product_material.py +0 -24
  266. endoreg_db/models/product/product_weight.py +0 -26
  267. endoreg_db/models/product/reference_product.py +0 -99
  268. endoreg_db/models/questionnaires/__init__.py +0 -114
  269. endoreg_db/models/quiz/__init__.py +0 -2
  270. endoreg_db/models/quiz/quiz_answer.py +0 -41
  271. endoreg_db/models/quiz/quiz_question.py +0 -54
  272. endoreg_db/models/report_reader/__init__.py +0 -2
  273. endoreg_db/models/report_reader/report_reader_config.py +0 -53
  274. endoreg_db/models/report_reader/report_reader_flag.py +0 -20
  275. endoreg_db/models/rules/__init__.py +0 -5
  276. endoreg_db/models/rules/rule.py +0 -24
  277. endoreg_db/models/rules/rule_applicator.py +0 -224
  278. endoreg_db/models/rules/rule_attribute_dtype.py +0 -19
  279. endoreg_db/models/rules/rule_type.py +0 -22
  280. endoreg_db/models/rules/ruleset.py +0 -19
  281. endoreg_db/models/unit.py +0 -22
  282. endoreg_db/queries/__init__.py +0 -5
  283. endoreg_db/queries/annotations/__init__.py +0 -3
  284. endoreg_db/queries/annotations/legacy.py +0 -158
  285. endoreg_db/queries/get/__init__.py +0 -6
  286. endoreg_db/queries/get/annotation.py +0 -0
  287. endoreg_db/queries/get/center.py +0 -42
  288. endoreg_db/queries/get/model.py +0 -13
  289. endoreg_db/queries/get/patient.py +0 -14
  290. endoreg_db/queries/get/patient_examination.py +0 -20
  291. endoreg_db/queries/get/prediction.py +0 -0
  292. endoreg_db/queries/get/report_file.py +0 -33
  293. endoreg_db/queries/get/video.py +0 -31
  294. endoreg_db/queries/get/video_import_meta.py +0 -0
  295. endoreg_db/queries/get/video_prediction_meta.py +0 -0
  296. endoreg_db/queries/sanity/__init_.py +0 -0
  297. endoreg_db/serializers/__init__.py +0 -10
  298. endoreg_db/serializers/ai_model.py +0 -19
  299. endoreg_db/serializers/annotation.py +0 -17
  300. endoreg_db/serializers/center.py +0 -11
  301. endoreg_db/serializers/examination.py +0 -33
  302. endoreg_db/serializers/frame.py +0 -13
  303. endoreg_db/serializers/hardware.py +0 -21
  304. endoreg_db/serializers/label.py +0 -22
  305. endoreg_db/serializers/patient.py +0 -10
  306. endoreg_db/serializers/prediction.py +0 -15
  307. endoreg_db/serializers/report_file.py +0 -7
  308. endoreg_db/serializers/video.py +0 -27
  309. endoreg_db/utils/__init__.py +0 -1
  310. endoreg_db/utils/cropping.py +0 -29
  311. endoreg_db/utils/dataloader.py +0 -92
  312. endoreg_db/utils/file_operations.py +0 -30
  313. endoreg_db/utils/hashs.py +0 -34
  314. endoreg_db/utils/legacy_ocr.py +0 -201
  315. endoreg_db/utils/ocr.py +0 -190
  316. endoreg_db/utils/uuid.py +0 -4
  317. endoreg_db/utils/video_metadata.py +0 -87
  318. endoreg_db-0.5.2.dist-info/METADATA +0 -27
  319. endoreg_db-0.5.2.dist-info/RECORD +0 -319
  320. {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.'))