From 44d3497853593336cd5f9198eadf5a4cac47cd57 Mon Sep 17 00:00:00 2001 From: thomaswoehlke <thomas.woehlke@gmail.com> Date: Tue, 19 Jan 2021 16:31:20 +0100 Subject: [PATCH] ### 0.0.9 Release * Fixed #18 /europe/update: Download * Fixed #19 /europe/update: Import File to DB * Issue #20 /europe/update: Update DB * Issue #21 update_date_reported * Issue #22 update_continent * Issue #23 update_country * Issue #24 update_data * Issue #3 ORM: 3NF for ecdc_europa_data_import * Issue #4 data update for 3NF ecdc_europa_data_import --- org/woehlke/covid19/europe/europe_model.py | 10 ++++---- .../covid19/europe/europe_service_update.py | 25 ++++++++++++++++--- 2 files changed, 26 insertions(+), 9 deletions(-) diff --git a/org/woehlke/covid19/europe/europe_model.py b/org/woehlke/covid19/europe/europe_model.py index 8fab36c2..384b6d9b 100644 --- a/org/woehlke/covid19/europe/europe_model.py +++ b/org/woehlke/covid19/europe/europe_model.py @@ -18,7 +18,7 @@ class EuropeDataImportTable(db.Model): @classmethod def remove_all(cls): - db.session.execute("delete from " + cls.__tablename__) + db.session.execute("delete from " + cls.__tablename__ + " cascade") db.session.commit() return None @@ -81,7 +81,7 @@ class EuropeDateReported(db.Model): @classmethod def remove_all(cls): - db.session.execute("delete from " + cls.__tablename__) + db.session.execute("delete from " + cls.__tablename__ + " cascade") db.session.commit() return None @@ -106,7 +106,7 @@ class EuropeContinent(db.Model): @classmethod def remove_all(cls): - db.session.execute("delete from " + cls.__tablename__) + db.session.execute("delete from " + cls.__tablename__ + " cascade") db.session.commit() return None @@ -137,7 +137,7 @@ class EuropeCountry(db.Model): @classmethod def remove_all(cls): - db.session.execute("delete from " + cls.__tablename__) + db.session.execute("delete from " + cls.__tablename__ + " cascade") db.session.commit() return None @@ -170,7 +170,7 @@ class EuropeData(db.Model): @classmethod def remove_all(cls): - db.session.execute("delete from " + cls.__tablename__) + db.session.execute("delete from " + cls.__tablename__ + " cascade") db.session.commit() return None diff --git a/org/woehlke/covid19/europe/europe_service_update.py b/org/woehlke/covid19/europe/europe_service_update.py index a818f8bf..e89b26b1 100644 --- a/org/woehlke/covid19/europe/europe_service_update.py +++ b/org/woehlke/covid19/europe/europe_service_update.py @@ -2,7 +2,7 @@ import os import psycopg2 from database import db, app from org.woehlke.covid19.europe.europe_model import EuropeDataImportTable, \ - EuropeDateReported, EuropeContinent, EuropeCountry + EuropeDateReported, EuropeContinent, EuropeCountry, EuropeData class EuropeServiceUpdate: @@ -22,7 +22,6 @@ class EuropeServiceUpdate: def __update_date_reported(self): app.logger.info(" __update_date_reported [begin]") app.logger.info("------------------------------------------------------------") - EuropeDateReported.remove_all() result_date_rep = EuropeDataImportTable.get_date_rep() for result_item in result_date_rep: my_date_rep = result_item['date_rep'] @@ -41,7 +40,6 @@ class EuropeServiceUpdate: def __update_continent(self): app.logger.info(" __update_continent [begin]") app.logger.info("------------------------------------------------------------") - EuropeContinent.remove_all() result_continent = EuropeDataImportTable.get_continent() for result_item in result_continent: my_continent_exp = result_item['continent_exp'] @@ -58,7 +56,6 @@ class EuropeServiceUpdate: def __update_country(self): app.logger.info(" __update_country [begin]") app.logger.info("------------------------------------------------------------") - EuropeCountry.remove_all() all_continents = EuropeContinent.get_all() for my_continent in all_continents: result_countries_of_continent = EuropeDataImportTable.get_countries_of_continent(my_continent) @@ -83,9 +80,29 @@ class EuropeServiceUpdate: app.logger.info("------------------------------------------------------------") return self + def __delete_data(self): + EuropeData.remove_all() + return self + + def __delete_continent(self): + EuropeContinent.remove_all() + return self + + def __delete_country(self): + EuropeCountry.remove_all() + return self + + def __delete_date_reported(self): + EuropeDateReported.remove_all() + return self + def update_db(self): app.logger.info(" update_db [begin]") app.logger.info("------------------------------------------------------------") + self.__delete_data() + self.__delete_continent() + self.__delete_country() + self.__delete_date_reported() self.__update_date_reported() self.__update_continent() self.__update_country() -- GitLab