From 55014a43c15be1a9c1c38139da62ca0e7ad2f63d Mon Sep 17 00:00:00 2001
From: thomaswoehlke <thomas.woehlke@gmail.com>
Date: Fri, 26 Feb 2021 14:06:09 +0100
Subject: [PATCH] work

---
 src/covid19/blueprints/admin/admin_views.py   | 33 ++++++++++++++++++-
 .../admin/templates/admin/admin_tasks.html    |  7 ++--
 src/covid19/blueprints/ecdc/ecdc_service.py   |  4 +++
 src/covid19/blueprints/owid/owid_service.py   |  5 +++
 .../rki_bundeslaender_service.py              |  4 +++
 .../rki_landkreise/rki_landkreise_service.py  |  4 +++
 .../rki_vaccination_service.py                |  4 +++
 src/covid19/blueprints/who/who_service.py     |  4 +++
 8 files changed, 62 insertions(+), 3 deletions(-)

diff --git a/src/covid19/blueprints/admin/admin_views.py b/src/covid19/blueprints/admin/admin_views.py
index 1e6e8c8a..7a8c0072 100644
--- a/src/covid19/blueprints/admin/admin_views.py
+++ b/src/covid19/blueprints/admin/admin_views.py
@@ -116,6 +116,27 @@ def task_admin_update_fact_table_initial_only(self):
     return result
 
 
+@celery.task(bind=True)
+def task_admin_update_fact_table_incremental_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_incremental_only()
+    ecdc_service.update_fact_table_incremental_only()
+    owid_service.update_fact_table_incremental_only()
+    rki_vaccination_service.update_fact_table_incremental_only()
+    rki_service_bundeslaender.update_fact_table_incremental_only()
+    rki_service_landkreise.update_fact_table_incremental_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
+
+
 @app_admin.route('/')
 def url_admin_index():
     page_info = ApplicationPage('Admin', "Covid19 Admin")
@@ -224,7 +245,7 @@ def url_admin_update_dimension_tables_only():
     return redirect(url_for('app_admin.url_admin_tasks'))
 
 
-@app_admin.route('/update/fact_tables/all')
+@app_admin.route('/update/fact_tables/initial/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()
@@ -232,3 +253,13 @@ def url_admin_update_fact_table_initial_only():
     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'))
+
+
+@app_admin.route('/update/fact_tables/incremental/all')
+def url_admin_update_fact_table_incremental_only():
+    app.logger.info("url_admin_update_fact_table_incremental_only [start]")
+    task_admin_update_fact_table_incremental_only.apply_async()
+    flash("task_admin_update_fact_table_incremental_only async started")
+    app.logger.info("task_admin_update_fact_table_incremental_only async started")
+    app.logger.info("url_admin_update_fact_table_incremental_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 41108712..7a039a26 100644
--- a/src/covid19/blueprints/admin/templates/admin/admin_tasks.html
+++ b/src/covid19/blueprints/admin/templates/admin/admin_tasks.html
@@ -37,8 +37,11 @@
                        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>
+                       href="{{ url_for( 'app_admin.url_admin_update_fact_table_incremental_only') }}"
+                       role="button">Admin :: update :: fact_table :: incremental</a>
+                    <a class="btn btn-danger btn-lg btn-block text-left"
+                       href="{{ url_for( 'app_admin.url_admin_update_fact_table_incremental_only') }}"
+                       role="button">Admin :: update :: fact_table :: incremental</a>
                 </div>
             </div>
         </div>
diff --git a/src/covid19/blueprints/ecdc/ecdc_service.py b/src/covid19/blueprints/ecdc/ecdc_service.py
index 1e1f0411..1cd1b35c 100644
--- a/src/covid19/blueprints/ecdc/ecdc_service.py
+++ b/src/covid19/blueprints/ecdc/ecdc_service.py
@@ -75,3 +75,7 @@ class EcdcService:
     def update_fact_table_initial_only(self):
         self.service_update.update_fact_table_initial_only()
         return self
+
+    def update_fact_table_incremental_only(self):
+        self.service_update.update_fact_table_incremental_only()
+        return self
diff --git a/src/covid19/blueprints/owid/owid_service.py b/src/covid19/blueprints/owid/owid_service.py
index 48ae2c13..470f77c6 100644
--- a/src/covid19/blueprints/owid/owid_service.py
+++ b/src/covid19/blueprints/owid/owid_service.py
@@ -85,3 +85,8 @@ class OwidService:
     def update_fact_table_initial_only(self):
         self.service_update.update_fact_table_initial_only()
         return self
+
+    def update_fact_table_incremental_only(self):
+        self.service_update.update_fact_table_incremental_only()
+        return self
+
diff --git a/src/covid19/blueprints/rki_bundeslaender/rki_bundeslaender_service.py b/src/covid19/blueprints/rki_bundeslaender/rki_bundeslaender_service.py
index 39c543df..0a0bda95 100644
--- a/src/covid19/blueprints/rki_bundeslaender/rki_bundeslaender_service.py
+++ b/src/covid19/blueprints/rki_bundeslaender/rki_bundeslaender_service.py
@@ -76,3 +76,7 @@ class RkiBundeslaenderService:
     def update_fact_table_initial_only(self):
         self.service_update.update_fact_table_initial_only()
         return self
+
+    def update_fact_table_incremental_only(self):
+        self.service_update.update_fact_table_incremental_only()
+        return self
diff --git a/src/covid19/blueprints/rki_landkreise/rki_landkreise_service.py b/src/covid19/blueprints/rki_landkreise/rki_landkreise_service.py
index fccb4687..d1e1d19d 100644
--- a/src/covid19/blueprints/rki_landkreise/rki_landkreise_service.py
+++ b/src/covid19/blueprints/rki_landkreise/rki_landkreise_service.py
@@ -75,3 +75,7 @@ class RkiLandkreiseService:
     def update_fact_table_initial_only(self):
         self.service_update.update_fact_table_initial_only()
         return self
+
+    def update_fact_table_incremental_only(self):
+        self.service_update.update_fact_table_incremental_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 e802f0fd..0a4e119b 100644
--- a/src/covid19/blueprints/rki_vaccination/rki_vaccination_service.py
+++ b/src/covid19/blueprints/rki_vaccination/rki_vaccination_service.py
@@ -74,3 +74,7 @@ class RkiVaccinationService:
     def update_fact_table_initial_only(self):
         self.service_update.update_fact_table_initial_only()
         return self
+
+    def update_fact_table_incremental_only(self):
+        self.service_update.update_fact_table_incremental_only()
+        return self
diff --git a/src/covid19/blueprints/who/who_service.py b/src/covid19/blueprints/who/who_service.py
index 6300e0ef..9a9f6882 100644
--- a/src/covid19/blueprints/who/who_service.py
+++ b/src/covid19/blueprints/who/who_service.py
@@ -84,3 +84,7 @@ class WhoService:
     def update_fact_table_initial_only(self):
         self.service_update.update_fact_table_initial_only()
         return self
+
+    def update_fact_table_incremental_only(self):
+        self.service_update.update_fact_table_incremental_only()
+        return self
-- 
GitLab