diff --git a/src/covid19/blueprints/admin/admin_views.py b/src/covid19/blueprints/admin/admin_views.py index faff39d383e965b6a3252f7faf9d46f632ad7779..9efb09912b86be5727027edcde602bf6353ce0d3 100644 --- a/src/covid19/blueprints/admin/admin_views.py +++ b/src/covid19/blueprints/admin/admin_views.py @@ -73,17 +73,37 @@ def task_admin_import_all_files(self): @celery.task(bind=True) -def task_admin_update_all_blueprints(self): +def task_admin_update_dimension_tables_only(self): logger = get_task_logger(__name__) self.update_state(state=states.STARTED) logger.info("------------------------------------------------------------") logger.info(" task_admin_update_all_blueprints [start] ") logger.info("------------------------------------------------------------") - who_service.task_update_all_blueprints() - ecdc_service.task_update_all_blueprints() - rki_vaccination_service.task_update_all_blueprints() - rki_service_bundeslaender.task_update_all_blueprints() - rki_service_landkreise.task_update_all_blueprints() + who_service.update_dimension_tables_only() + ecdc_service.update_dimension_tables_only() + rki_vaccination_service.update_dimension_tables_only() + rki_service_bundeslaender.update_dimension_tables_only() + rki_service_landkreise.update_dimension_tables_only() + logger.info("------------------------------------------------------------") + logger.info(" task_admin_update_all_blueprints [done] ") + logger.info("------------------------------------------------------------") + self.update_state(state=states.SUCCESS) + result = "OK (task_admin_update_all_blueprints)" + return result + + +@celery.task(bind=True) +def task_admin_update_fact_table_initial_only(self): + logger = get_task_logger(__name__) + self.update_state(state=states.STARTED) + logger.info("------------------------------------------------------------") + logger.info(" task_admin_update_all_blueprints [start] ") + logger.info("------------------------------------------------------------") + who_service.update_fact_table_initial_only() + ecdc_service.update_fact_table_initial_only() + rki_vaccination_service.update_fact_table_initial_only() + rki_service_bundeslaender.update_fact_table_initial_only() + rki_service_landkreise.update_fact_table_initial_only() logger.info("------------------------------------------------------------") logger.info(" task_admin_update_all_blueprints [done] ") logger.info("------------------------------------------------------------") @@ -194,11 +214,21 @@ def url_admin_import_all_files(): return redirect(url_for('app_admin.url_admin_tasks')) -@app_admin.route('/update/all') -def url_admin_update_all_groups(): +@app_admin.route('/update/dimension_tables/all') +def url_admin_update_dimension_tables_only(): app.logger.info("url_admin_update_all_groups [start]") + task_admin_update_dimension_tables_only.apply_async() flash("task_admin_import_all_files async started") - task_admin_update_all_blueprints.apply_async() app.logger.info("task_admin_update_all_blueprints async started") app.logger.info("url_admin_update_all_groups [done]") return redirect(url_for('app_admin.url_admin_tasks')) + + +@app_admin.route('/update/fact_tables/all') +def url_admin_update_fact_table_initial_only(): + app.logger.info("url_admin_update_fact_table_initial_only [start]") + task_admin_update_fact_table_initial_only.apply_async() + flash("task_admin_update_fact_table_initial_only async started") + app.logger.info("task_admin_update_fact_table_initial_only async started") + app.logger.info("url_admin_update_fact_table_initial_only [done]") + return redirect(url_for('app_admin.url_admin_tasks')) diff --git a/src/covid19/blueprints/admin/templates/admin/admin_tasks.html b/src/covid19/blueprints/admin/templates/admin/admin_tasks.html index 914581751f67a64443c9be3495e88d4c6dfa8655..fd719c5fae4ed4edf78d8024e050cc845f12e065 100644 --- a/src/covid19/blueprints/admin/templates/admin/admin_tasks.html +++ b/src/covid19/blueprints/admin/templates/admin/admin_tasks.html @@ -23,12 +23,18 @@ <a class="btn btn-primary btn-lg btn-block text-left" href="{{ url_for( 'app_admin.url_admin_database_dump') }}" role="button">Admin :: database :: dump</a> - <a class="btn btn-warning btn-lg btn-block text-left" + <a class="btn btn-success btn-lg btn-block text-left" href="{{ url_for( 'app_admin.url_admin_download_all_files') }}" - role="button">Admin :: url_admin_download_all_files </a> + role="button">Admin :: download :: all_files </a> <a class="btn btn-info btn-lg btn-block text-left" href="{{ url_for( 'app_admin.url_admin_import_all_files') }}" - role="button">Admin :: url_admin_import_all_files </a> + role="button">Admin :: import :: all_files </a> + <a class="btn btn-warning btn-lg btn-block text-left" + href="{{ url_for( 'app_admin.url_admin_update_dimension_tables_only') }}" + role="button">Admin :: update :: dimension_tables</a> + <a class="btn btn-danger btn-lg btn-block text-left" + href="{{ url_for( 'app_admin.url_admin_update_fact_table_initial_only') }}" + role="button">Admin :: update :: fact_table :: initial</a> </div> </div> </div> diff --git a/src/covid19/blueprints/ecdc/ecdc_service.py b/src/covid19/blueprints/ecdc/ecdc_service.py index 116a54d69413d5803ea031449a09a58277c8302a..f67525807d3ea55788dbc3f72b47f0c14d1ea143 100644 --- a/src/covid19/blueprints/ecdc/ecdc_service.py +++ b/src/covid19/blueprints/ecdc/ecdc_service.py @@ -66,6 +66,10 @@ class EcdcService: self.service_import.import_file() return self - def task_update_all_blueprints(self): + def update_dimension_tables_only(self): self.service_update.update_dimension_tables_only() return self + + def update_fact_table_initial_only(self): + self.service_update.update_fact_table_initial_only() + return self diff --git a/src/covid19/blueprints/rki_bundeslaender/rki_service.py b/src/covid19/blueprints/rki_bundeslaender/rki_service.py index 5032e6ef125eb2d23eddcacab89fef09a907adc8..362562be406b6becd04933937b8b9dc3c068da4b 100644 --- a/src/covid19/blueprints/rki_bundeslaender/rki_service.py +++ b/src/covid19/blueprints/rki_bundeslaender/rki_service.py @@ -117,6 +117,10 @@ class RkiBundeslaenderService: self.service_import.import_file() return self - def task_update_all_blueprints(self): + def update_dimension_tables_only(self): self.service_update.update_dimension_tables_only() return self + + def update_fact_table_initial_only(self): + self.service_update.update_fact_table_initial_only() + return self diff --git a/src/covid19/blueprints/rki_landkreise/rki_service.py b/src/covid19/blueprints/rki_landkreise/rki_service.py index b10e74e1947178f799873dfc45fb77f949c66494..17b11e1ee1ec2305d15e29e348aaa651502f651b 100644 --- a/src/covid19/blueprints/rki_landkreise/rki_service.py +++ b/src/covid19/blueprints/rki_landkreise/rki_service.py @@ -116,7 +116,10 @@ class RkiLandkreiseService: self.service_import.import_file() return self - def task_update_all_blueprints(self): + def update_dimension_tables_only(self): self.service_update.update_dimension_tables_only() return self + def update_fact_table_initial_only(self): + self.service_update.update_fact_table_initial_only() + return self diff --git a/src/covid19/blueprints/rki_vaccination/rki_vaccination_service.py b/src/covid19/blueprints/rki_vaccination/rki_vaccination_service.py index 706f4c1ff50c0cd2cf37f022b4e488879a42f1bf..a5704f465e97c2ba0d479f4769be95818f3f59ef 100644 --- a/src/covid19/blueprints/rki_vaccination/rki_vaccination_service.py +++ b/src/covid19/blueprints/rki_vaccination/rki_vaccination_service.py @@ -67,6 +67,10 @@ class RkiVaccinationService: self.service_import.import_file() return self - def task_update_all_blueprints(self): + def update_dimension_tables_only(self): self.service_update.update_dimension_tables_only() return self + + def update_fact_table_initial_only(self): + self.service_update.update_fact_table_initial_only() + return self diff --git a/src/covid19/blueprints/who/who_service.py b/src/covid19/blueprints/who/who_service.py index 7eb1ec6db2f9e588bae99c97200d00eed9424aac..420548afeeb2fdd0eeb9ad221e0a43a07ee6156c 100644 --- a/src/covid19/blueprints/who/who_service.py +++ b/src/covid19/blueprints/who/who_service.py @@ -110,6 +110,10 @@ class WhoService: self.service_import.import_file() return self - def task_update_all_blueprints(self): + def update_dimension_tables_only(self): self.service_update.update_dimension_tables_only() return self + + def update_fact_table_initial_only(self): + self.service_update.update_fact_table_initial_only() + return self