edu-rdm-integration 3.9.1__py3-none-any.whl → 3.10.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.
- edu_rdm_integration/__init__.py +0 -1
- edu_rdm_integration/adapters/apps.py +15 -2
- edu_rdm_integration/adapters/caches.py +25 -12
- edu_rdm_integration/adapters/errors.py +13 -2
- edu_rdm_integration/adapters/functions.py +53 -14
- edu_rdm_integration/adapters/helpers.py +34 -8
- edu_rdm_integration/adapters/managers.py +41 -5
- edu_rdm_integration/adapters/presenters.py +26 -2
- edu_rdm_integration/adapters/receivers.py +16 -2
- edu_rdm_integration/adapters/results.py +50 -4
- edu_rdm_integration/adapters/runners.py +79 -20
- edu_rdm_integration/adapters/strategies.py +56 -54
- edu_rdm_integration/adapters/validators.py +43 -4
- edu_rdm_integration/apps.py +3 -23
- edu_rdm_integration/collect_and_export_data/__init__.py +1 -1
- edu_rdm_integration/collect_and_export_data/apps.py +1 -0
- edu_rdm_integration/collect_and_export_data/migrations/0001_initial.py +107 -17
- edu_rdm_integration/collect_and_export_data/migrations/0002_auto_20250204_1413.py +4 -2
- edu_rdm_integration/{consts.py → core/consts.py} +0 -11
- edu_rdm_integration/{enums.py → core/enums.py} +7 -54
- edu_rdm_integration/core/helpers.py +331 -0
- edu_rdm_integration/core/operations.py +71 -0
- edu_rdm_integration/core/redis_cache.py +20 -0
- edu_rdm_integration/{collect_and_export_data → core/registry}/actions.py +6 -12
- edu_rdm_integration/core/registry/apps.py +11 -0
- edu_rdm_integration/{collect_and_export_data → core/registry}/ui.py +1 -1
- edu_rdm_integration/{storages.py → core/storages.py} +8 -17
- edu_rdm_integration/{utils.py → core/utils.py} +29 -91
- edu_rdm_integration/migrations/0001_initial.py +294 -44
- edu_rdm_integration/migrations/0002_init_data_uploadstatus.py +1 -3
- edu_rdm_integration/migrations/0003_create_index_file_upload_status.py +0 -1
- edu_rdm_integration/migrations/0004_uploaderclientlog.py +1 -2
- edu_rdm_integration/migrations/0005_auto_20231204_1224.py +16 -4
- edu_rdm_integration/migrations/0006_request_status_data.py +60 -58
- edu_rdm_integration/migrations/0007_delete_upload_status.py +0 -1
- edu_rdm_integration/migrations/0009_auto_20240522_1619.py +1 -5
- edu_rdm_integration/migrations/0010_transferredentity_export_enabled.py +0 -1
- edu_rdm_integration/migrations/0011_exportingdatasubstageentity.py +16 -3
- edu_rdm_integration/migrations/0012_exportingdatasubstageattachment_attachment_size.py +0 -1
- edu_rdm_integration/migrations/0013_set_attachment_size.py +8 -12
- edu_rdm_integration/migrations/0014_uploaddatacommand.py +33 -6
- edu_rdm_integration/migrations/0015_set_exporting_sub_stage_status.py +1 -5
- edu_rdm_integration/migrations/0016_transferredentity_queue_level.py +2 -2
- edu_rdm_integration/migrations/0017_delete_uploaddatacommand.py +3 -2
- edu_rdm_integration/migrations/__init__.py +1 -0
- edu_rdm_integration/{registry → pipelines/transfer}/actions.py +13 -26
- edu_rdm_integration/pipelines/transfer/app_meta.py +18 -0
- edu_rdm_integration/pipelines/transfer/apps.py +19 -0
- edu_rdm_integration/pipelines/transfer/enums.py +34 -0
- edu_rdm_integration/pipelines/transfer/migrations/0001_initial.py +57 -0
- edu_rdm_integration/{base.py → pipelines/transfer/mixins.py} +29 -53
- edu_rdm_integration/pipelines/transfer/models.py +48 -0
- edu_rdm_integration/{tasks.py → pipelines/transfer/tasks.py} +51 -150
- edu_rdm_integration/{registry → pipelines/transfer}/ui.py +4 -10
- edu_rdm_integration/rdm_entities/apps.py +11 -0
- edu_rdm_integration/{entities.py → rdm_entities/entities.py} +67 -57
- edu_rdm_integration/rdm_entities/migrations/0001_initial.py +44 -0
- edu_rdm_integration/{enum_register → rdm_entities}/mixins.py +8 -59
- edu_rdm_integration/rdm_entities/models.py +63 -0
- edu_rdm_integration/rdm_entities/utils.py +33 -0
- edu_rdm_integration/rdm_models/apps.py +16 -0
- edu_rdm_integration/rdm_models/migrations/0001_initial.py +40 -0
- edu_rdm_integration/rdm_models/mixins.py +67 -0
- edu_rdm_integration/rdm_models/models.py +73 -0
- edu_rdm_integration/rdm_models/utils.py +23 -0
- edu_rdm_integration/stages/collect_data/apps.py +11 -0
- edu_rdm_integration/{function_templates → stages/collect_data/function_templates}/function_collect_data_template/functions.py-tpl +2 -2
- edu_rdm_integration/{function_templates → stages/collect_data/function_templates}/function_collect_data_template/managers.py-tpl +1 -1
- edu_rdm_integration/{function_templates → stages/collect_data/function_templates}/function_collect_data_template/runners.py-tpl +1 -1
- edu_rdm_integration/{function_templates → stages/collect_data/function_templates}/function_collect_data_template/tests.py-tpl +2 -1
- edu_rdm_integration/{collect_data → stages/collect_data/functions}/base/caches.py +2 -2
- edu_rdm_integration/{collect_data → stages/collect_data/functions}/base/functions.py +15 -18
- edu_rdm_integration/stages/collect_data/functions/base/helpers.py +20 -0
- edu_rdm_integration/{collect_data → stages/collect_data/functions}/base/managers.py +20 -27
- edu_rdm_integration/{collect_data → stages/collect_data/functions}/base/mixins.py +38 -55
- edu_rdm_integration/{collect_data → stages/collect_data/functions}/base/runners.py +2 -5
- edu_rdm_integration/stages/collect_data/functions/calculated/base/__init__.py +0 -0
- edu_rdm_integration/{collect_data → stages/collect_data/functions}/calculated/base/caches.py +3 -7
- edu_rdm_integration/stages/collect_data/functions/calculated/base/errors.py +7 -0
- edu_rdm_integration/{collect_data → stages/collect_data/functions}/calculated/base/functions.py +8 -16
- edu_rdm_integration/stages/collect_data/functions/calculated/base/helpers.py +24 -0
- edu_rdm_integration/stages/collect_data/functions/calculated/base/managers.py +19 -0
- edu_rdm_integration/{collect_data → stages/collect_data/functions}/calculated/base/presenters.py +1 -3
- edu_rdm_integration/stages/collect_data/functions/calculated/base/results.py +12 -0
- edu_rdm_integration/stages/collect_data/functions/calculated/base/runners.py +28 -0
- edu_rdm_integration/stages/collect_data/functions/calculated/base/validators.py +20 -0
- edu_rdm_integration/{collect_data → stages/collect_data/functions}/calculated/strategies.py +32 -70
- edu_rdm_integration/stages/collect_data/functions/non_calculated/__init__.py +0 -0
- edu_rdm_integration/stages/collect_data/functions/non_calculated/base/__init__.py +0 -0
- edu_rdm_integration/{collect_data → stages/collect_data/functions}/non_calculated/base/caches.py +13 -22
- edu_rdm_integration/stages/collect_data/functions/non_calculated/base/errors.py +7 -0
- edu_rdm_integration/{collect_data → stages/collect_data/functions}/non_calculated/base/functions.py +8 -16
- edu_rdm_integration/stages/collect_data/functions/non_calculated/base/helpers.py +24 -0
- edu_rdm_integration/stages/collect_data/functions/non_calculated/base/managers.py +19 -0
- edu_rdm_integration/{collect_data → stages/collect_data/functions}/non_calculated/base/presenters.py +1 -3
- edu_rdm_integration/stages/collect_data/functions/non_calculated/base/results.py +12 -0
- edu_rdm_integration/stages/collect_data/functions/non_calculated/base/runners.py +28 -0
- edu_rdm_integration/stages/collect_data/functions/non_calculated/base/validators.py +20 -0
- edu_rdm_integration/{collect_data → stages/collect_data/functions}/non_calculated/strategies.py +32 -70
- edu_rdm_integration/{collect_data → stages/collect_data}/generators.py +9 -14
- edu_rdm_integration/stages/collect_data/helpers.py +154 -0
- edu_rdm_integration/stages/collect_data/management/__init__.py +0 -0
- edu_rdm_integration/stages/collect_data/management/base.py +100 -0
- edu_rdm_integration/stages/collect_data/management/commands/__init__.py +0 -0
- edu_rdm_integration/{management → stages/collect_data/management}/commands/collect_latest_models_data.py +5 -7
- edu_rdm_integration/{management → stages/collect_data/management}/commands/collect_models_data.py +5 -7
- edu_rdm_integration/stages/collect_data/migrations/0001_initial.py +187 -0
- edu_rdm_integration/stages/collect_data/migrations/0002_edurdmcollectdatacommandprogress.py +105 -0
- edu_rdm_integration/stages/collect_data/migrations/__init__.py +0 -0
- edu_rdm_integration/stages/collect_data/mixins.py +56 -0
- edu_rdm_integration/stages/collect_data/models.py +318 -0
- edu_rdm_integration/{collect_data/collect.py → stages/collect_data/operations.py} +30 -43
- edu_rdm_integration/stages/collect_data/registry/__init__.py +0 -0
- edu_rdm_integration/{collect_data → stages/collect_data/registry}/actions.py +17 -20
- edu_rdm_integration/stages/collect_data/registry/apps.py +11 -0
- edu_rdm_integration/{collect_data → stages/collect_data/registry}/ui.py +8 -15
- edu_rdm_integration/{collect_data → stages/collect_data}/tests.py +2 -2
- edu_rdm_integration/stages/export_data/__init__.py +0 -0
- edu_rdm_integration/stages/export_data/apps.py +11 -0
- edu_rdm_integration/stages/export_data/function_templates/__init__.py +0 -0
- edu_rdm_integration/{function_templates → stages/export_data/function_templates}/function_export_data_template/functions.py-tpl +2 -2
- edu_rdm_integration/{function_templates → stages/export_data/function_templates}/function_export_data_template/managers.py-tpl +2 -2
- edu_rdm_integration/{function_templates → stages/export_data/function_templates}/function_export_data_template/runners.py-tpl +2 -2
- edu_rdm_integration/stages/export_data/functions/__init__.py +0 -0
- edu_rdm_integration/stages/export_data/functions/base/__init__.py +0 -0
- edu_rdm_integration/{export_data → stages/export_data/functions}/base/caches.py +3 -8
- edu_rdm_integration/stages/export_data/functions/base/errors.py +7 -0
- edu_rdm_integration/{export_data → stages/export_data/functions}/base/functions.py +28 -59
- edu_rdm_integration/{export_data → stages/export_data/functions}/base/helpers.py +7 -17
- edu_rdm_integration/{export_data → stages/export_data/functions}/base/managers.py +19 -28
- edu_rdm_integration/stages/export_data/functions/base/presenters.py +11 -0
- edu_rdm_integration/{export_data → stages/export_data/functions}/base/requests.py +13 -40
- edu_rdm_integration/stages/export_data/functions/base/results.py +12 -0
- edu_rdm_integration/{export_data → stages/export_data/functions}/base/runners.py +9 -21
- edu_rdm_integration/stages/export_data/functions/base/validators.py +20 -0
- edu_rdm_integration/{export_data → stages/export_data}/generators.py +7 -6
- edu_rdm_integration/stages/export_data/helpers.py +203 -0
- edu_rdm_integration/stages/export_data/management/__init__.py +0 -0
- edu_rdm_integration/stages/export_data/management/base.py +101 -0
- edu_rdm_integration/stages/export_data/management/commands/__init__.py +0 -0
- edu_rdm_integration/{management → stages/export_data/management}/commands/export_entities_data.py +5 -7
- edu_rdm_integration/{management → stages/export_data/management}/commands/export_latest_entities_data.py +5 -7
- edu_rdm_integration/stages/export_data/migrations/0001_initial.py +324 -0
- edu_rdm_integration/stages/export_data/migrations/__init__.py +0 -0
- edu_rdm_integration/stages/export_data/mixins.py +50 -0
- edu_rdm_integration/stages/export_data/models.py +362 -0
- edu_rdm_integration/{export_data/export.py → stages/export_data/operations.py} +30 -192
- edu_rdm_integration/stages/export_data/registry/__init__.py +0 -0
- edu_rdm_integration/{export_data → stages/export_data/registry}/actions.py +18 -18
- edu_rdm_integration/stages/export_data/registry/apps.py +11 -0
- edu_rdm_integration/{export_data → stages/export_data/registry}/ui.py +5 -7
- edu_rdm_integration/{export_data → stages/export_data}/strategies.py +30 -68
- edu_rdm_integration/stages/service/__init__.py +0 -0
- edu_rdm_integration/stages/service/apps.py +19 -0
- edu_rdm_integration/stages/service/tasks.py +63 -0
- edu_rdm_integration/stages/upload_data/__init__.py +0 -0
- edu_rdm_integration/stages/upload_data/apps.py +19 -0
- edu_rdm_integration/stages/upload_data/consts.py +10 -0
- edu_rdm_integration/{export_data → stages/upload_data}/dataclasses.py +1 -0
- edu_rdm_integration/stages/upload_data/enums.py +17 -0
- edu_rdm_integration/{export_data/export_manager.py → stages/upload_data/export_managers.py} +73 -68
- edu_rdm_integration/stages/upload_data/helpers.py +164 -0
- edu_rdm_integration/stages/upload_data/management/__init__.py +0 -0
- edu_rdm_integration/stages/upload_data/management/base.py +134 -0
- edu_rdm_integration/stages/upload_data/management/commands/__init__.py +0 -0
- edu_rdm_integration/{management → stages/upload_data/management}/commands/async_fix_attachment_size.py +32 -54
- edu_rdm_integration/{management → stages/upload_data/management}/commands/check_upload_status.py +7 -6
- edu_rdm_integration/{management → stages/upload_data/management}/commands/datamart_status.py +3 -3
- edu_rdm_integration/{management → stages/upload_data/management}/commands/datamart_upload.py +4 -4
- edu_rdm_integration/stages/upload_data/migrations/0001_initial.py +161 -0
- edu_rdm_integration/stages/upload_data/migrations/__init__.py +0 -0
- edu_rdm_integration/stages/upload_data/models.py +175 -0
- edu_rdm_integration/stages/upload_data/operations.py +156 -0
- edu_rdm_integration/{export_data/queue.py → stages/upload_data/queues.py} +10 -8
- edu_rdm_integration/stages/upload_data/tasks.py +103 -0
- edu_rdm_integration/stages/upload_data/uploader_log/__init__.py +0 -0
- edu_rdm_integration/{uploader_log → stages/upload_data/uploader_log}/actions.py +14 -16
- edu_rdm_integration/stages/upload_data/uploader_log/apps.py +11 -0
- edu_rdm_integration/{uploader_log → stages/upload_data/uploader_log}/managers.py +15 -30
- edu_rdm_integration/stages/upload_data/uploader_log/migrations/0001_initial.py +31 -0
- edu_rdm_integration/stages/upload_data/uploader_log/migrations/__init__.py +0 -0
- edu_rdm_integration/stages/upload_data/uploader_log/models.py +86 -0
- edu_rdm_integration/{uploader_log → stages/upload_data/uploader_log}/ui.py +8 -6
- {edu_rdm_integration-3.9.1.dist-info → edu_rdm_integration-3.10.0.dist-info}/METADATA +238 -238
- edu_rdm_integration-3.10.0.dist-info/RECORD +255 -0
- edu_rdm_integration/app_meta.py +0 -16
- edu_rdm_integration/app_settings.py +0 -77
- edu_rdm_integration/collect_and_export_data/models.py +0 -67
- edu_rdm_integration/collect_and_export_data/utils.py +0 -224
- edu_rdm_integration/collect_data/base/helpers.py +0 -26
- edu_rdm_integration/collect_data/calculated/base/errors.py +0 -9
- edu_rdm_integration/collect_data/calculated/base/helpers.py +0 -32
- edu_rdm_integration/collect_data/calculated/base/managers.py +0 -23
- edu_rdm_integration/collect_data/calculated/base/results.py +0 -16
- edu_rdm_integration/collect_data/calculated/base/runners.py +0 -36
- edu_rdm_integration/collect_data/calculated/base/validators.py +0 -28
- edu_rdm_integration/collect_data/helpers.py +0 -92
- edu_rdm_integration/collect_data/non_calculated/base/errors.py +0 -9
- edu_rdm_integration/collect_data/non_calculated/base/helpers.py +0 -32
- edu_rdm_integration/collect_data/non_calculated/base/managers.py +0 -23
- edu_rdm_integration/collect_data/non_calculated/base/results.py +0 -16
- edu_rdm_integration/collect_data/non_calculated/base/runners.py +0 -36
- edu_rdm_integration/collect_data/non_calculated/base/validators.py +0 -28
- edu_rdm_integration/enum_register/register.py +0 -79
- edu_rdm_integration/export_data/base/errors.py +0 -9
- edu_rdm_integration/export_data/base/presenters.py +0 -13
- edu_rdm_integration/export_data/base/results.py +0 -16
- edu_rdm_integration/export_data/base/validators.py +0 -28
- edu_rdm_integration/export_data/helpers.py +0 -92
- edu_rdm_integration/helpers.py +0 -412
- edu_rdm_integration/management/general.py +0 -327
- edu_rdm_integration/models.py +0 -982
- edu_rdm_integration/redis_cache.py +0 -51
- edu_rdm_integration/uploader_log/apps.py +0 -10
- edu_rdm_integration-3.9.1.dist-info/RECORD +0 -198
- /edu_rdm_integration/{collect_and_export_data/migrations → core}/__init__.py +0 -0
- /edu_rdm_integration/{mapping.py → core/mapping.py} +0 -0
- /edu_rdm_integration/{collect_data → core/registry}/__init__.py +0 -0
- /edu_rdm_integration/{templates → core/registry/templates}/ui-js/start-task.js +0 -0
- /edu_rdm_integration/{signals.py → core/signals.py} +0 -0
- /edu_rdm_integration/{typing.py → core/typing.py} +0 -0
- /edu_rdm_integration/{collect_data/base → pipelines}/__init__.py +0 -0
- /edu_rdm_integration/{collect_data/calculated → pipelines/transfer}/__init__.py +0 -0
- /edu_rdm_integration/{collect_data/calculated/base → pipelines/transfer/migrations}/__init__.py +0 -0
- /edu_rdm_integration/{templates → pipelines/transfer/templates}/ui-js/transferred-entity-list.js +0 -0
- /edu_rdm_integration/{collect_data/non_calculated → rdm_entities}/__init__.py +0 -0
- /edu_rdm_integration/{collect_data/non_calculated/base → rdm_entities/migrations}/__init__.py +0 -0
- /edu_rdm_integration/{enum_register → rdm_models}/__init__.py +0 -0
- /edu_rdm_integration/{export_data → rdm_models/migrations}/__init__.py +0 -0
- /edu_rdm_integration/{export_data/base → stages}/__init__.py +0 -0
- /edu_rdm_integration/{function_templates → stages/collect_data}/__init__.py +0 -0
- /edu_rdm_integration/{collect_data/const.py → stages/collect_data/consts.py} +0 -0
- /edu_rdm_integration/{management → stages/collect_data/function_templates}/__init__.py +0 -0
- /edu_rdm_integration/{function_templates → stages/collect_data/function_templates}/function_collect_data_template/__init__.py-tpl +0 -0
- /edu_rdm_integration/{function_templates → stages/collect_data/function_templates}/function_collect_data_template/apps.py-tpl +0 -0
- /edu_rdm_integration/{function_templates → stages/collect_data/function_templates}/function_collect_data_template/caches.py-tpl +0 -0
- /edu_rdm_integration/{function_templates → stages/collect_data/function_templates}/function_collect_data_template/consts.py-tpl +0 -0
- /edu_rdm_integration/{function_templates → stages/collect_data/function_templates}/function_collect_data_template/enums.py-tpl +0 -0
- /edu_rdm_integration/{function_templates → stages/collect_data/function_templates}/function_collect_data_template/errors.py-tpl +0 -0
- /edu_rdm_integration/{function_templates → stages/collect_data/function_templates}/function_collect_data_template/helpers.py-tpl +0 -0
- /edu_rdm_integration/{function_templates → stages/collect_data/function_templates}/function_collect_data_template/presenters.py-tpl +0 -0
- /edu_rdm_integration/{function_templates → stages/collect_data/function_templates}/function_collect_data_template/results.py-tpl +0 -0
- /edu_rdm_integration/{function_templates → stages/collect_data/function_templates}/function_collect_data_template/strings.py-tpl +0 -0
- /edu_rdm_integration/{function_templates → stages/collect_data/function_templates}/function_collect_data_template/validators.py-tpl +0 -0
- /edu_rdm_integration/{management/commands → stages/collect_data/functions}/__init__.py +0 -0
- /edu_rdm_integration/{registry → stages/collect_data/functions/base}/__init__.py +0 -0
- /edu_rdm_integration/{collect_data → stages/collect_data/functions}/base/consts.py +0 -0
- /edu_rdm_integration/{uploader_log → stages/collect_data/functions/calculated}/__init__.py +0 -0
- /edu_rdm_integration/{collect_data → stages/collect_data/functions}/calculated/base/consts.py +0 -0
- /edu_rdm_integration/{collect_data → stages/collect_data/functions}/calculated/base/enums.py +0 -0
- /edu_rdm_integration/{collect_data → stages/collect_data/functions}/calculated/base/strings.py +0 -0
- /edu_rdm_integration/{collect_data → stages/collect_data/functions}/calculated/base/tests.py +0 -0
- /edu_rdm_integration/{collect_data → stages/collect_data/functions}/non_calculated/base/consts.py +0 -0
- /edu_rdm_integration/{collect_data → stages/collect_data/functions}/non_calculated/base/enums.py +0 -0
- /edu_rdm_integration/{collect_data → stages/collect_data/functions}/non_calculated/base/strings.py +0 -0
- /edu_rdm_integration/{collect_data → stages/collect_data/functions}/non_calculated/base/tests.py +0 -0
- /edu_rdm_integration/{export_data → stages/export_data}/consts.py +0 -0
- /edu_rdm_integration/{function_templates → stages/export_data/function_templates}/function_export_data_template/__init__.py-tpl +0 -0
- /edu_rdm_integration/{function_templates → stages/export_data/function_templates}/function_export_data_template/apps.py-tpl +0 -0
- /edu_rdm_integration/{function_templates → stages/export_data/function_templates}/function_export_data_template/caches.py-tpl +0 -0
- /edu_rdm_integration/{function_templates → stages/export_data/function_templates}/function_export_data_template/consts.py-tpl +0 -0
- /edu_rdm_integration/{function_templates → stages/export_data/function_templates}/function_export_data_template/enums.py-tpl +0 -0
- /edu_rdm_integration/{function_templates → stages/export_data/function_templates}/function_export_data_template/errors.py-tpl +0 -0
- /edu_rdm_integration/{function_templates → stages/export_data/function_templates}/function_export_data_template/helpers.py-tpl +0 -0
- /edu_rdm_integration/{function_templates → stages/export_data/function_templates}/function_export_data_template/presenters.py-tpl +0 -0
- /edu_rdm_integration/{function_templates → stages/export_data/function_templates}/function_export_data_template/results.py-tpl +0 -0
- /edu_rdm_integration/{function_templates → stages/export_data/function_templates}/function_export_data_template/strings.py-tpl +0 -0
- /edu_rdm_integration/{function_templates → stages/export_data/function_templates}/function_export_data_template/tests.py-tpl +0 -0
- /edu_rdm_integration/{function_templates → stages/export_data/function_templates}/function_export_data_template/validators.py-tpl +0 -0
- /edu_rdm_integration/{export_data → stages/export_data/functions}/base/consts.py +0 -0
- /edu_rdm_integration/{export_data → stages/export_data/functions}/base/enums.py +0 -0
- /edu_rdm_integration/{export_data → stages/export_data/functions}/base/strings.py +0 -0
- /edu_rdm_integration/{export_data → stages/export_data/functions}/base/tests.py +0 -0
- /edu_rdm_integration/{templates → stages/export_data/registry/templates}/ui-js/stage_for_export.js +0 -0
- /edu_rdm_integration/{uploader_log → stages/upload_data/uploader_log}/enums.py +0 -0
- /edu_rdm_integration/{uploader_log → stages/upload_data/uploader_log}/templates/ui-js/object-grid-buttons.js +0 -0
- {edu_rdm_integration-3.9.1.dist-info → edu_rdm_integration-3.10.0.dist-info}/WHEEL +0 -0
- {edu_rdm_integration-3.9.1.dist-info → edu_rdm_integration-3.10.0.dist-info}/licenses/LICENSE +0 -0
- {edu_rdm_integration-3.9.1.dist-info → edu_rdm_integration-3.10.0.dist-info}/top_level.txt +0 -0
@@ -12,62 +12,65 @@ def init_request_statuses(apps, schema_editor):
|
|
12
12
|
"""Заполнение первоначальными данными DataMartRequestStatus."""
|
13
13
|
DataMartRequestStatus = apps.get_model('edu_rdm_integration', 'DataMartRequestStatus') # noqa: N806
|
14
14
|
|
15
|
-
DataMartRequestStatus.objects.bulk_create(
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
15
|
+
DataMartRequestStatus.objects.bulk_create(
|
16
|
+
[
|
17
|
+
DataMartRequestStatus(
|
18
|
+
key='UPLOAD_TO_BUFFER',
|
19
|
+
value=-1,
|
20
|
+
title='Загрузка данных в буффер',
|
21
|
+
order_number=DEFAULT_ORDER_NUMBER,
|
22
|
+
),
|
23
|
+
DataMartRequestStatus(
|
24
|
+
key='BUFFERED',
|
25
|
+
value=0,
|
26
|
+
title='Запрос буфферизирован',
|
27
|
+
order_number=DEFAULT_ORDER_NUMBER,
|
28
|
+
),
|
29
|
+
DataMartRequestStatus(
|
30
|
+
key='WAIT_FOR_OPEN_DELTA',
|
31
|
+
value=1,
|
32
|
+
title='Ожидает открытия дельты',
|
33
|
+
order_number=DEFAULT_ORDER_NUMBER,
|
34
|
+
),
|
35
|
+
DataMartRequestStatus(
|
36
|
+
key='IN_PROCESSING',
|
37
|
+
value=2,
|
38
|
+
title='В обработке',
|
39
|
+
order_number=DEFAULT_ORDER_NUMBER,
|
40
|
+
),
|
41
|
+
DataMartRequestStatus(
|
42
|
+
key='SUCCESSFULLY_PROCESSED',
|
43
|
+
value=3,
|
44
|
+
title='Успешно обработан',
|
45
|
+
order_number=DEFAULT_ORDER_NUMBER,
|
46
|
+
),
|
47
|
+
DataMartRequestStatus(
|
48
|
+
key='FAILED_PROCESSING',
|
49
|
+
value=4,
|
50
|
+
title='Ошибка обработки запроса',
|
51
|
+
order_number=DEFAULT_ORDER_NUMBER,
|
52
|
+
),
|
53
|
+
DataMartRequestStatus(
|
54
|
+
key='REQUEST_ID_NOT_FOUND',
|
55
|
+
value=5,
|
56
|
+
title='Идентификатор запроса не обнаружен',
|
57
|
+
order_number=DEFAULT_ORDER_NUMBER,
|
58
|
+
),
|
59
|
+
DataMartRequestStatus(
|
60
|
+
key='FORMAT_LOGICAL_CONTROL',
|
61
|
+
value=6,
|
62
|
+
title='Форматно-логический контроль',
|
63
|
+
order_number=DEFAULT_ORDER_NUMBER,
|
64
|
+
),
|
65
|
+
DataMartRequestStatus(
|
66
|
+
key='FLC_ERROR',
|
67
|
+
value=7,
|
68
|
+
title='Ошибки ФЛК',
|
69
|
+
order_number=DEFAULT_ORDER_NUMBER,
|
70
|
+
),
|
71
|
+
],
|
72
|
+
ignore_conflicts=True,
|
73
|
+
)
|
71
74
|
|
72
75
|
|
73
76
|
def migrate_upload_status_to_request_status(apps, schema_editor):
|
@@ -86,12 +89,11 @@ def migrate_upload_status_to_request_status(apps, schema_editor):
|
|
86
89
|
|
87
90
|
|
88
91
|
class Migration(migrations.Migration):
|
89
|
-
|
90
92
|
dependencies = [
|
91
93
|
('edu_rdm_integration', '0005_auto_20231204_1224'),
|
92
94
|
]
|
93
95
|
|
94
96
|
operations = [
|
95
97
|
migrations.RunPython(init_request_statuses, reverse_code=migrations.RunPython.noop),
|
96
|
-
migrations.RunPython(migrate_upload_status_to_request_status, reverse_code=migrations.RunPython.noop)
|
98
|
+
migrations.RunPython(migrate_upload_status_to_request_status, reverse_code=migrations.RunPython.noop),
|
97
99
|
]
|
@@ -8,14 +8,10 @@ from django.db import (
|
|
8
8
|
def add_exporting_data_sub_stage_status(apps, schema_editor):
|
9
9
|
"""Добавление нового статуса этапу выгрузки данных."""
|
10
10
|
ExportingDataSubStageStatus = apps.get_model('edu_rdm_integration', 'ExportingDataSubStageStatus') # noqa: N806
|
11
|
-
ExportingDataSubStageStatus.objects.get_or_create(
|
12
|
-
key='READY_FOR_EXPORT',
|
13
|
-
title='Готов к выгрузке'
|
14
|
-
)
|
11
|
+
ExportingDataSubStageStatus.objects.get_or_create(key='READY_FOR_EXPORT', title='Готов к выгрузке')
|
15
12
|
|
16
13
|
|
17
14
|
class Migration(migrations.Migration):
|
18
|
-
|
19
15
|
dependencies = [
|
20
16
|
('edu_rdm_integration', '0008_transferredentity'),
|
21
17
|
]
|
@@ -8,7 +8,6 @@ from django.db import (
|
|
8
8
|
|
9
9
|
|
10
10
|
class Migration(migrations.Migration):
|
11
|
-
|
12
11
|
dependencies = [
|
13
12
|
('edu_rdm_integration', '0010_transferredentity_export_enabled'),
|
14
13
|
]
|
@@ -18,8 +17,22 @@ class Migration(migrations.Migration):
|
|
18
17
|
name='ExportingDataSubStageEntity',
|
19
18
|
fields=[
|
20
19
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
21
|
-
(
|
22
|
-
|
20
|
+
(
|
21
|
+
'entity',
|
22
|
+
models.ForeignKey(
|
23
|
+
on_delete=django.db.models.deletion.PROTECT,
|
24
|
+
to='edu_rdm_integration.regionaldatamartentityenum',
|
25
|
+
verbose_name='Сущность РВД',
|
26
|
+
),
|
27
|
+
),
|
28
|
+
(
|
29
|
+
'exporting_data_sub_stage',
|
30
|
+
models.ForeignKey(
|
31
|
+
on_delete=django.db.models.deletion.CASCADE,
|
32
|
+
to='edu_rdm_integration.exportingdatasubstage',
|
33
|
+
verbose_name='Подэтап выгрузки данных',
|
34
|
+
),
|
35
|
+
),
|
23
36
|
],
|
24
37
|
options={
|
25
38
|
'verbose_name': 'Связь сущности и подэтапа выгрузки',
|
@@ -8,7 +8,7 @@ from educommon.utils.seqtools import (
|
|
8
8
|
make_chunks,
|
9
9
|
)
|
10
10
|
|
11
|
-
from edu_rdm_integration.enums import (
|
11
|
+
from edu_rdm_integration.stages.upload_data.enums import (
|
12
12
|
FileUploadStatusEnum,
|
13
13
|
)
|
14
14
|
|
@@ -20,16 +20,16 @@ CHUNK_SIZE = 500
|
|
20
20
|
|
21
21
|
def set_attachment_size(apps, schema_editor):
|
22
22
|
"""Установка размера файла по умолчанию."""
|
23
|
-
ExportingDataSubStageAttachment = apps.get_model(
|
24
|
-
'edu_rdm_integration', 'ExportingDataSubStageAttachment'
|
25
|
-
) # noqa: N806
|
23
|
+
ExportingDataSubStageAttachment = apps.get_model('edu_rdm_integration', 'ExportingDataSubStageAttachment') # noqa: N806
|
26
24
|
ExportingDataSubStageUploaderClientLog = apps.get_model(
|
27
25
|
'edu_rdm_integration', 'ExportingDataSubStageUploaderClientLog'
|
28
26
|
) # noqa: N806
|
29
27
|
|
30
|
-
attachment_ids =
|
31
|
-
file_upload_status=FileUploadStatusEnum.IN_PROGRESS
|
32
|
-
|
28
|
+
attachment_ids = (
|
29
|
+
ExportingDataSubStageUploaderClientLog.objects.filter(file_upload_status=FileUploadStatusEnum.IN_PROGRESS)
|
30
|
+
.values_list('attachment_id', flat=True)
|
31
|
+
.iterator()
|
32
|
+
)
|
33
33
|
|
34
34
|
sub_stage_with_deleted_attachments = []
|
35
35
|
for chunked_attachment_ids in make_chunks(attachment_ids, CHUNK_SIZE):
|
@@ -47,12 +47,8 @@ def set_attachment_size(apps, schema_editor):
|
|
47
47
|
|
48
48
|
|
49
49
|
class Migration(migrations.Migration):
|
50
|
-
|
51
50
|
dependencies = [
|
52
51
|
('edu_rdm_integration', '0012_exportingdatasubstageattachment_attachment_size'),
|
53
52
|
]
|
54
53
|
|
55
|
-
operations = [
|
56
|
-
migrations.RunPython(set_attachment_size, reverse_code=migrations.RunPython.noop)
|
57
|
-
]
|
58
|
-
|
54
|
+
operations = [migrations.RunPython(set_attachment_size, reverse_code=migrations.RunPython.noop)]
|
@@ -11,11 +11,10 @@ from django.db import (
|
|
11
11
|
|
12
12
|
import educommon.django.db.mixins
|
13
13
|
|
14
|
-
import edu_rdm_integration.utils
|
14
|
+
import edu_rdm_integration.core.utils
|
15
15
|
|
16
16
|
|
17
17
|
class Migration(migrations.Migration):
|
18
|
-
|
19
18
|
dependencies = [
|
20
19
|
('async_task', '0002_task_type_and_status_data'),
|
21
20
|
('edu_rdm_integration', '0013_set_attachment_size'),
|
@@ -26,12 +25,40 @@ class Migration(migrations.Migration):
|
|
26
25
|
name='UploadDataCommand',
|
27
26
|
fields=[
|
28
27
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
29
|
-
(
|
30
|
-
|
28
|
+
(
|
29
|
+
'logs_link',
|
30
|
+
models.FileField(
|
31
|
+
max_length=255,
|
32
|
+
upload_to=edu_rdm_integration.core.utils.get_data_command_progress_attachment_path,
|
33
|
+
verbose_name='Ссылка на файл логов',
|
34
|
+
),
|
35
|
+
),
|
36
|
+
(
|
37
|
+
'type',
|
38
|
+
models.PositiveSmallIntegerField(
|
39
|
+
choices=[(1, 'Автоматический'), (2, 'Ручной')], verbose_name='Тип команды'
|
40
|
+
),
|
41
|
+
),
|
31
42
|
('created', models.DateTimeField(default=django.utils.timezone.now, verbose_name='Дата создания')),
|
32
43
|
('generation_id', models.UUIDField(default=uuid.uuid4, verbose_name='Идентификатор генерации')),
|
33
|
-
(
|
34
|
-
|
44
|
+
(
|
45
|
+
'entity',
|
46
|
+
models.ForeignKey(
|
47
|
+
on_delete=django.db.models.deletion.PROTECT,
|
48
|
+
to='edu_rdm_integration.regionaldatamartentityenum',
|
49
|
+
verbose_name='Сущность РВД',
|
50
|
+
),
|
51
|
+
),
|
52
|
+
(
|
53
|
+
'task',
|
54
|
+
models.ForeignKey(
|
55
|
+
blank=True,
|
56
|
+
null=True,
|
57
|
+
on_delete=django.db.models.deletion.SET_NULL,
|
58
|
+
to='async_task.runningtask',
|
59
|
+
verbose_name='Асинхронная задача',
|
60
|
+
),
|
61
|
+
),
|
35
62
|
],
|
36
63
|
options={
|
37
64
|
'verbose_name': 'Команда отправки данных в витрину',
|
@@ -8,14 +8,10 @@ from django.db import (
|
|
8
8
|
def add_exporting_data_sub_stage_status(apps, schema_editor):
|
9
9
|
"""Добавление нового статуса этапу выгрузки данных."""
|
10
10
|
ExportingDataSubStageStatus = apps.get_model('edu_rdm_integration', 'ExportingDataSubStageStatus') # noqa: N806
|
11
|
-
ExportingDataSubStageStatus.objects.get_or_create(
|
12
|
-
key='PROCESS_ERROR',
|
13
|
-
title='Ошибка обработки витриной'
|
14
|
-
)
|
11
|
+
ExportingDataSubStageStatus.objects.get_or_create(key='PROCESS_ERROR', title='Ошибка обработки витриной')
|
15
12
|
|
16
13
|
|
17
14
|
class Migration(migrations.Migration):
|
18
|
-
|
19
15
|
dependencies = [
|
20
16
|
('edu_rdm_integration', '0014_uploaddatacommand'),
|
21
17
|
]
|
@@ -7,7 +7,6 @@ from django.db import (
|
|
7
7
|
|
8
8
|
|
9
9
|
class Migration(migrations.Migration):
|
10
|
-
|
11
10
|
dependencies = [
|
12
11
|
('edu_rdm_integration', '0015_set_exporting_sub_stage_status'),
|
13
12
|
]
|
@@ -17,6 +16,7 @@ class Migration(migrations.Migration):
|
|
17
16
|
model_name='transferredentity',
|
18
17
|
name='queue_level',
|
19
18
|
field=models.PositiveIntegerField(
|
20
|
-
choices=[(1, 'Быстрая'), (2, 'Основная'), (3, 'Долгая')], default=2, verbose_name='Уровень очереди'
|
19
|
+
choices=[(1, 'Быстрая'), (2, 'Основная'), (3, 'Долгая')], default=2, verbose_name='Уровень очереди'
|
20
|
+
),
|
21
21
|
),
|
22
22
|
]
|
@@ -1,10 +1,11 @@
|
|
1
1
|
# Generated by Django 3.2.24 on 2025-05-07 19:50
|
2
2
|
|
3
|
-
from django.db import
|
3
|
+
from django.db import (
|
4
|
+
migrations,
|
5
|
+
)
|
4
6
|
|
5
7
|
|
6
8
|
class Migration(migrations.Migration):
|
7
|
-
|
8
9
|
dependencies = [
|
9
10
|
('edu_rdm_integration', '0016_transferredentity_queue_level'),
|
10
11
|
]
|
@@ -0,0 +1 @@
|
|
1
|
+
# TODO EDUDEVOPS-95 будет удалено в будущих версиях
|
@@ -16,14 +16,16 @@ from objectpack.actions import (
|
|
16
16
|
SelectorWindowAction,
|
17
17
|
)
|
18
18
|
|
19
|
-
from edu_rdm_integration.models import (
|
20
|
-
RegionalDataMartEntityEnum,
|
19
|
+
from edu_rdm_integration.pipelines.transfer.models import (
|
21
20
|
TransferredEntity,
|
22
21
|
)
|
23
|
-
from edu_rdm_integration.
|
22
|
+
from edu_rdm_integration.pipelines.transfer.ui import (
|
24
23
|
TransferredEntityEditWindow,
|
25
24
|
TransferredEntityListWindow,
|
26
25
|
)
|
26
|
+
from edu_rdm_integration.rdm_entities.models import (
|
27
|
+
RegionalDataMartEntityEnum,
|
28
|
+
)
|
27
29
|
|
28
30
|
|
29
31
|
class EntitySelectPack(ObjectPack):
|
@@ -33,7 +35,7 @@ class EntitySelectPack(ObjectPack):
|
|
33
35
|
model = RegionalDataMartEntityEnum
|
34
36
|
_is_primary_for_model = False
|
35
37
|
|
36
|
-
list_sort_order = ('order_number',
|
38
|
+
list_sort_order = ('order_number',)
|
37
39
|
|
38
40
|
columns = [
|
39
41
|
{
|
@@ -77,16 +79,11 @@ class TransferredEntityExportChangeAction(BaseAction):
|
|
77
79
|
|
78
80
|
def context_declaration(self):
|
79
81
|
"""Объявляет контекст экшна."""
|
80
|
-
return {
|
81
|
-
'ids': {'type': 'int_list', 'default': []},
|
82
|
-
'export_enabled': {'type': 'boolean', 'default': True}
|
83
|
-
}
|
82
|
+
return {'ids': {'type': 'int_list', 'default': []}, 'export_enabled': {'type': 'boolean', 'default': True}}
|
84
83
|
|
85
84
|
def run(self, request, context):
|
86
85
|
"""Обеспечивает выполнение запроса."""
|
87
|
-
self.parent.model.objects.filter(
|
88
|
-
id__in=context.ids
|
89
|
-
).update(export_enabled=context.export_enabled)
|
86
|
+
self.parent.model.objects.filter(id__in=context.ids).update(export_enabled=context.export_enabled)
|
90
87
|
|
91
88
|
return OperationResult(success=True)
|
92
89
|
|
@@ -96,10 +93,7 @@ class TransferredEntitySaveAction(BaseAction):
|
|
96
93
|
|
97
94
|
def context_declaration(self):
|
98
95
|
"""Объявляет контекст экшна."""
|
99
|
-
return {
|
100
|
-
'id': {'type': 'str_list', 'default': []},
|
101
|
-
self.parent.id_param_name: {'type': 'int'}
|
102
|
-
}
|
96
|
+
return {'id': {'type': 'str_list', 'default': []}, self.parent.id_param_name: {'type': 'int'}}
|
103
97
|
|
104
98
|
def run(self, request, context):
|
105
99
|
"""Обеспечивает выполнение запроса."""
|
@@ -107,18 +101,11 @@ class TransferredEntitySaveAction(BaseAction):
|
|
107
101
|
if obj_id:
|
108
102
|
queue_level = getattr(context, 'queue_level', None)
|
109
103
|
if queue_level:
|
110
|
-
self.parent.model.objects.filter(
|
111
|
-
id=obj_id
|
112
|
-
).exclude(
|
113
|
-
queue_level=queue_level
|
114
|
-
).update(
|
104
|
+
self.parent.model.objects.filter(id=obj_id).exclude(queue_level=queue_level).update(
|
115
105
|
queue_level=queue_level
|
116
106
|
)
|
117
107
|
else:
|
118
|
-
self.parent.model.objects.bulk_create([
|
119
|
-
self.parent.model(entity_id=key)
|
120
|
-
for key in context.id
|
121
|
-
])
|
108
|
+
self.parent.model.objects.bulk_create([self.parent.model(entity_id=key) for key in context.id])
|
122
109
|
|
123
110
|
return OperationResult(success=True)
|
124
111
|
|
@@ -131,7 +118,7 @@ class TransferredEntityPack(ObjectPack):
|
|
131
118
|
|
132
119
|
can_delete = True
|
133
120
|
|
134
|
-
list_sort_order = ('entity__order_number',
|
121
|
+
list_sort_order = ('entity__order_number',)
|
135
122
|
|
136
123
|
need_check_permission = True
|
137
124
|
list_window = TransferredEntityListWindow
|
@@ -153,7 +140,7 @@ class TransferredEntityPack(ObjectPack):
|
|
153
140
|
{
|
154
141
|
'data_index': 'queue_level',
|
155
142
|
'header': 'Уровень очереди',
|
156
|
-
}
|
143
|
+
},
|
157
144
|
]
|
158
145
|
|
159
146
|
def __init__(self):
|
@@ -0,0 +1,18 @@
|
|
1
|
+
from educommon import (
|
2
|
+
ioc,
|
3
|
+
)
|
4
|
+
|
5
|
+
from edu_rdm_integration.pipelines.transfer.actions import (
|
6
|
+
EntitySelectPack,
|
7
|
+
TransferredEntityPack,
|
8
|
+
)
|
9
|
+
|
10
|
+
|
11
|
+
def register_actions():
|
12
|
+
"""Регистрирует паки и экшны."""
|
13
|
+
ioc.get('main_controller').packs.extend(
|
14
|
+
(
|
15
|
+
TransferredEntityPack(),
|
16
|
+
EntitySelectPack(),
|
17
|
+
)
|
18
|
+
)
|
@@ -0,0 +1,19 @@
|
|
1
|
+
from django.apps import (
|
2
|
+
AppConfig,
|
3
|
+
)
|
4
|
+
|
5
|
+
|
6
|
+
class RDMTransferPipelineAppConfig(AppConfig):
|
7
|
+
"""Приложение для организации процесса сбора, экспорта в файлы и отправки файлов в витрину."""
|
8
|
+
|
9
|
+
name = 'edu_rdm_integration.pipelines.transfer'
|
10
|
+
label = 'edu_rdm_integration_transfer_pipeline'
|
11
|
+
verbose_name = 'Приложение для организации процесса сбора, экспорта в файлы и отправки файлов в витрину.'
|
12
|
+
|
13
|
+
def ready(self):
|
14
|
+
"""Готовность приложения."""
|
15
|
+
if self.name == 'edu_rdm_integration.pipelines.transfer':
|
16
|
+
# ruff: noqa: F401
|
17
|
+
from . import (
|
18
|
+
tasks,
|
19
|
+
)
|
@@ -0,0 +1,34 @@
|
|
1
|
+
from typing import (
|
2
|
+
Optional,
|
3
|
+
)
|
4
|
+
|
5
|
+
from m3.db import (
|
6
|
+
BaseEnumerate,
|
7
|
+
)
|
8
|
+
|
9
|
+
from edu_rdm_integration.core.consts import (
|
10
|
+
FAST_TRANSFER_TASK_QUEUE_NAME,
|
11
|
+
LONG_TRANSFER_TASK_QUEUE_NAME,
|
12
|
+
TASK_QUEUE_NAME,
|
13
|
+
)
|
14
|
+
|
15
|
+
|
16
|
+
class EntityLevelQueueTypeEnum(BaseEnumerate):
|
17
|
+
"""Тип уровня очереди сущности."""
|
18
|
+
|
19
|
+
FAST = 1
|
20
|
+
BASE = 2
|
21
|
+
LONG = 3
|
22
|
+
|
23
|
+
values = {FAST: 'Быстрая', BASE: 'Основная', LONG: 'Долгая'}
|
24
|
+
|
25
|
+
celery_queue_maps = {
|
26
|
+
FAST: FAST_TRANSFER_TASK_QUEUE_NAME,
|
27
|
+
BASE: TASK_QUEUE_NAME,
|
28
|
+
LONG: LONG_TRANSFER_TASK_QUEUE_NAME,
|
29
|
+
}
|
30
|
+
|
31
|
+
@classmethod
|
32
|
+
def get_queue_name(cls, level: int) -> Optional[str]:
|
33
|
+
"""Возвращает очередь."""
|
34
|
+
return cls.celery_queue_maps.get(level)
|
@@ -0,0 +1,57 @@
|
|
1
|
+
# Generated by Django 3.2.24 on 2025-06-28 16:04
|
2
|
+
|
3
|
+
import django.db.models.deletion
|
4
|
+
from django.db import (
|
5
|
+
migrations,
|
6
|
+
models,
|
7
|
+
)
|
8
|
+
|
9
|
+
|
10
|
+
class Migration(migrations.Migration):
|
11
|
+
initial = True
|
12
|
+
|
13
|
+
dependencies = [
|
14
|
+
('edu_rdm_integration_entities', '0001_initial'),
|
15
|
+
]
|
16
|
+
|
17
|
+
operations = [
|
18
|
+
migrations.SeparateDatabaseAndState(
|
19
|
+
state_operations=[
|
20
|
+
migrations.CreateModel(
|
21
|
+
name='TransferredEntity',
|
22
|
+
fields=[
|
23
|
+
(
|
24
|
+
'id',
|
25
|
+
models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID'),
|
26
|
+
),
|
27
|
+
(
|
28
|
+
'export_enabled',
|
29
|
+
models.BooleanField(default=True, verbose_name='Включение экспорта для сущности'),
|
30
|
+
),
|
31
|
+
(
|
32
|
+
'queue_level',
|
33
|
+
models.PositiveIntegerField(
|
34
|
+
choices=[(1, 'Быстрая'), (2, 'Основная'), (3, 'Долгая')],
|
35
|
+
default=2,
|
36
|
+
verbose_name='Уровень очереди',
|
37
|
+
),
|
38
|
+
),
|
39
|
+
(
|
40
|
+
'entity',
|
41
|
+
models.OneToOneField(
|
42
|
+
on_delete=django.db.models.deletion.CASCADE,
|
43
|
+
to='edu_rdm_integration_entities.regionaldatamartentityenum',
|
44
|
+
verbose_name='Сущность',
|
45
|
+
),
|
46
|
+
),
|
47
|
+
],
|
48
|
+
options={
|
49
|
+
'verbose_name': 'Сущность, по которой должен быть произведен сбор и экспорт данных',
|
50
|
+
'verbose_name_plural': 'Сущности, по которым должен быть произведен сбор и экспорт данных',
|
51
|
+
'db_table': 'rdm_transferred_entity',
|
52
|
+
},
|
53
|
+
),
|
54
|
+
],
|
55
|
+
database_operations=[],
|
56
|
+
),
|
57
|
+
]
|