From a265e17d09869ac168fd20d7afa0a09b609522fb Mon Sep 17 00:00:00 2001 From: thomaswoehlke <thomas.woehlke@gmail.com> Date: Mon, 17 May 2021 23:31:44 +0200 Subject: [PATCH] Fixed #225 Add Issue Matrix to Gitlab --- data | 2 +- .../who/uml/who_domain_model_import.puml | 2 +- .../blueprints/ecdc/ecdc_model_import.py | 54 ++++++++---- .../blueprints/owid/owid_model_import.py | 82 +++++++++++++++++-- .../blueprints/rki_cases/rki_model_import.py | 42 ++++++++-- .../rki_vaccination_model_import.py | 47 +++++++++-- .../blueprints/who/who_model_import.py | 24 ++++++ 7 files changed, 211 insertions(+), 42 deletions(-) diff --git a/data b/data index 104a2b52..40c60a0a 160000 --- a/data +++ b/data @@ -1 +1 @@ -Subproject commit 104a2b522e4c9a82e232ae9de492c69d57c4f66a +Subproject commit 40c60a0accfbafe6825ff542afcb5a54d6206b54 diff --git a/docs/blueprints/who/uml/who_domain_model_import.puml b/docs/blueprints/who/uml/who_domain_model_import.puml index 6a72918b..599aa478 100644 --- a/docs/blueprints/who/uml/who_domain_model_import.puml +++ b/docs/blueprints/who/uml/who_domain_model_import.puml @@ -89,7 +89,7 @@ package covid19.blueprints.who.model_import { day_of_year: Integer day_of_week: Integer week_of_year: Integer - year_week: String + year_week: String day_of_week_str: String month_str: String location: String diff --git a/src/covid19/blueprints/ecdc/ecdc_model_import.py b/src/covid19/blueprints/ecdc/ecdc_model_import.py index fba66476..da403e80 100644 --- a/src/covid19/blueprints/ecdc/ecdc_model_import.py +++ b/src/covid19/blueprints/ecdc/ecdc_model_import.py @@ -6,9 +6,9 @@ class EcdcImport(db.Model): id = db.Column(db.Integer, primary_key=True) date_rep = db.Column(db.String(255), nullable=False) - date_rep_day = db.Column(db.String(255), nullable=False) - date_rep_month = db.Column(db.String(255), nullable=False) - date_rep_year = db.Column(db.String(255), nullable=False) + day = db.Column(db.String(255), nullable=False) + month = db.Column(db.String(255), nullable=False) + year = db.Column(db.String(255), nullable=False) cases = db.Column(db.String(255), nullable=False) deaths = db.Column(db.String(255), nullable=False) pop_data_2019 = db.Column(db.String(255), nullable=False) @@ -17,13 +17,6 @@ class EcdcImport(db.Model): country_territory_code = db.Column(db.String(255), nullable=False) continent_exp = db.Column(db.String(255), nullable=False) cumulative_number_for_14_days_of_covid19_cases_per_100000 = db.Column(db.String(255), nullable=False) - datum = db.Column(db.Date, nullable=False) - year = db.Column(db.Integer, nullable=False) - month = db.Column(db.Integer, nullable=False) - day_of_month = db.Column(db.Integer, nullable=False) - day_of_week = db.Column(db.Integer, nullable=False) - week_of_year = db.Column(db.Integer, nullable=False) - year_week = db.Column(db.String(255), nullable=False) @classmethod def remove_all(cls): @@ -38,18 +31,18 @@ class EcdcImport(db.Model): @classmethod def get_all_as_page(cls, page: int): return db.session.query(cls).order_by( - cls.date_rep_year, - cls.date_rep_month, - cls.date_rep_day, + cls.year, + cls.month, + cls.day, cls.countries_and_territories ).paginate(page, per_page=ITEMS_PER_PAGE) @classmethod def get_all(cls): return db.session.query(cls).order_by( - cls.date_rep_year, - cls.date_rep_month, - cls.date_rep_day, + cls.year, + cls.month, + cls.day, cls.countries_and_territories ).all() @@ -125,3 +118,32 @@ class EcdcImport(db.Model): return db.session.query(cls)\ .filter(cls.date_rep == p_edcd_date_reported_str) \ .all() + + +class EcdcFlat(db.Model): + __tablename__ = 'application__import__ecdc_flat' + + id = db.Column(db.Integer, primary_key=True) + date_reported_import_str = db.Column(db.String(255), nullable=False, unique=True) + year_week = db.Column(db.String(255), nullable=False) + datum = db.Column(db.Date, nullable=False, unique=True) + year = db.Column(db.Integer, nullable=False) + month = db.Column(db.Integer, nullable=False) + day_of_month = db.Column(db.Integer, nullable=False) + day_of_week = db.Column(db.Integer, nullable=False) + week_of_year = db.Column(db.Integer, nullable=False) + location = db.Column(db.String(255), nullable=False) + location_group = db.Column(db.String(255), nullable=False) + date_rep = db.Column(db.String(255), nullable=False) + day = db.Column(db.String(255), nullable=False) + # month = db.Column(db.String(255), nullable=False) + # year = db.Column(db.String(255), nullable=False) + cases = db.Column(db.String(255), nullable=False) + deaths = db.Column(db.String(255), nullable=False) + pop_data_2019 = db.Column(db.String(255), nullable=False) + countries_and_territories = db.Column(db.String(255), nullable=False) + geo_id = db.Column(db.String(255), nullable=False) + country_territory_code = db.Column(db.String(255), nullable=False) + continent_exp = db.Column(db.String(255), nullable=False) + cumulative_number_for_14_days_of_covid19_cases_per_100000 = db.Column(db.String(255), nullable=False) + diff --git a/src/covid19/blueprints/owid/owid_model_import.py b/src/covid19/blueprints/owid/owid_model_import.py index a187a3d1..3c78bb28 100644 --- a/src/covid19/blueprints/owid/owid_model_import.py +++ b/src/covid19/blueprints/owid/owid_model_import.py @@ -66,13 +66,6 @@ class OwidImport(db.Model): hospital_beds_per_thousand = db.Column(db.String(255), nullable=False) life_expectancy = db.Column(db.String(255), nullable=False) human_development_index = db.Column(db.String(255), nullable=False) - datum = db.Column(db.Date, nullable=False) - year = db.Column(db.Integer, nullable=False) - month = db.Column(db.Integer, nullable=False) - day_of_month = db.Column(db.Integer, nullable=False) - day_of_week = db.Column(db.Integer, nullable=False) - week_of_year = db.Column(db.Integer, nullable=False) - year_week = db.Column(db.String(255), nullable=False) @classmethod def remove_all(cls): @@ -285,3 +278,78 @@ class OwidImport(db.Model): cls.life_expectancy, cls.human_development_index ).distinct().one() + + +class OwidFlat(db.Model): + __tablename__ = 'application__import__owid_flat' + + id = db.Column(db.Integer, primary_key=True) + date_reported_import_str = db.Column(db.String(255), nullable=False, unique=True) + year_week = db.Column(db.String(255), nullable=False) + datum = db.Column(db.Date, nullable=False, unique=True) + year = db.Column(db.Integer, nullable=False) + month = db.Column(db.Integer, nullable=False) + day_of_month = db.Column(db.Integer, nullable=False) + day_of_week = db.Column(db.Integer, nullable=False) + week_of_year = db.Column(db.Integer, nullable=False) + location = db.Column(db.String(255), nullable=False) + location_group = db.Column(db.String(255), nullable=False) + iso_code = db.Column(db.String(255), nullable=False) + continent = db.Column(db.String(255), nullable=False) + location_import = db.Column(db.String(255), nullable=False) + date = db.Column(db.String(255), nullable=False) + total_cases = db.Column(db.String(255), nullable=False) + new_cases = db.Column(db.String(255), nullable=False) + new_cases_smoothed = db.Column(db.String(255), nullable=False) + total_deaths = db.Column(db.String(255), nullable=False) + new_deaths = db.Column(db.String(255), nullable=False) + new_deaths_smoothed = db.Column(db.String(255), nullable=False) + total_cases_per_million = db.Column(db.String(255), nullable=False) + new_cases_per_million = db.Column(db.String(255), nullable=False) + new_cases_smoothed_per_million = db.Column(db.String(255), nullable=False) + total_deaths_per_million = db.Column(db.String(255), nullable=False) + new_deaths_per_million = db.Column(db.String(255), nullable=False) + new_deaths_smoothed_per_million = db.Column(db.String(255), nullable=False) + reproduction_rate = db.Column(db.String(255), nullable=False) + icu_patients = db.Column(db.String(255), nullable=False) + icu_patients_per_million = db.Column(db.String(255), nullable=False) + hosp_patients = db.Column(db.String(255), nullable=False) + hosp_patients_per_million = db.Column(db.String(255), nullable=False) + weekly_icu_admissions = db.Column(db.String(255), nullable=False) + weekly_icu_admissions_per_million = db.Column(db.String(255), nullable=False) + weekly_hosp_admissions = db.Column(db.String(255), nullable=False) + weekly_hosp_admissions_per_million = db.Column(db.String(255), nullable=False) + new_tests = db.Column(db.String(255), nullable=False) + total_tests = db.Column(db.String(255), nullable=False) + total_tests_per_thousand = db.Column(db.String(255), nullable=False) + new_tests_per_thousand = db.Column(db.String(255), nullable=False) + new_tests_smoothed = db.Column(db.String(255), nullable=False) + new_tests_smoothed_per_thousand = db.Column(db.String(255), nullable=False) + positive_rate = db.Column(db.String(255), nullable=False) + tests_per_case = db.Column(db.String(255), nullable=False) + tests_units = db.Column(db.String(255), nullable=False) + total_vaccinations = db.Column(db.String(255), nullable=False) + people_vaccinated = db.Column(db.String(255), nullable=False) + people_fully_vaccinated = db.Column(db.String(255), nullable=False) + new_vaccinations = db.Column(db.String(255), nullable=False) + new_vaccinations_smoothed = db.Column(db.String(255), nullable=False) + total_vaccinations_per_hundred = db.Column(db.String(255), nullable=False) + people_vaccinated_per_hundred = db.Column(db.String(255), nullable=False) + people_fully_vaccinated_per_hundred = db.Column(db.String(255), nullable=False) + new_vaccinations_smoothed_per_million = db.Column(db.String(255), nullable=False) + stringency_index = db.Column(db.String(255), nullable=False) + population = db.Column(db.String(255), nullable=False) + population_density = db.Column(db.String(255), nullable=False) + median_age = db.Column(db.String(255), nullable=False) + aged_65_older = db.Column(db.String(255), nullable=False) + aged_70_older = db.Column(db.String(255), nullable=False) + gdp_per_capita = db.Column(db.String(255), nullable=False) + extreme_poverty = db.Column(db.String(255), nullable=False) + cardiovasc_death_rate = db.Column(db.String(255), nullable=False) + diabetes_prevalence = db.Column(db.String(255), nullable=False) + female_smokers = db.Column(db.String(255), nullable=False) + male_smokers = db.Column(db.String(255), nullable=False) + handwashing_facilities = db.Column(db.String(255), nullable=False) + hospital_beds_per_thousand = db.Column(db.String(255), nullable=False) + life_expectancy = db.Column(db.String(255), nullable=False) + human_development_index = db.Column(db.String(255), nullable=False) diff --git a/src/covid19/blueprints/rki_cases/rki_model_import.py b/src/covid19/blueprints/rki_cases/rki_model_import.py index 13a324de..d36f6933 100644 --- a/src/covid19/blueprints/rki_cases/rki_model_import.py +++ b/src/covid19/blueprints/rki_cases/rki_model_import.py @@ -23,14 +23,6 @@ class RkiImport(db.Model): anzahl_genesen = db.Column(db.String(255), nullable=False) ist_erkrankungsbeginn = db.Column(db.String(255), nullable=False) altersgruppe2 = db.Column(db.String(255), nullable=False) - # date_reported = db.Column(db.String(255), nullable=False) - # datum = db.Column(db.Date, nullable=False) - # year = db.Column(db.Integer, nullable=False) - # month = db.Column(db.Integer, nullable=False) - # day_of_month = db.Column(db.Integer, nullable=False) - # day_of_week = db.Column(db.Integer, nullable=False) - # week_of_year = db.Column(db.Integer, nullable=False) - # year_week = db.Column(db.String(255), nullable=False) @classmethod def remove_all(cls): @@ -62,3 +54,37 @@ class RkiImport(db.Model): @classmethod def get_new_aktualisierungen_as_array(cls): return [] + + +class RkiFlat(db.Model): + __tablename__ = 'application__import__rki_cases_flat' + + id = db.Column(db.Integer, primary_key=True) + date_reported_import_str = db.Column(db.String(255), nullable=False, unique=True) + year_week = db.Column(db.String(255), nullable=False) + datum = db.Column(db.Date, nullable=False, unique=True) + year = db.Column(db.Integer, nullable=False) + month = db.Column(db.Integer, nullable=False) + day_of_month = db.Column(db.Integer, nullable=False) + day_of_week = db.Column(db.Integer, nullable=False) + week_of_year = db.Column(db.Integer, nullable=False) + location = db.Column(db.String(255), nullable=False) + location_group = db.Column(db.String(255), nullable=False) + fid = db.Column(db.String(255), nullable=False) + id_bundesland = db.Column(db.String(255), nullable=False) + bundesland = db.Column(db.String(255), nullable=False) + landkreis = db.Column(db.String(255), nullable=False) + altersgruppe = db.Column(db.String(255), nullable=False) + geschlecht = db.Column(db.String(255), nullable=False) + anzahl_fall = db.Column(db.String(255), nullable=False) + anzahl_todesfall = db.Column(db.String(255), nullable=False) + meldedatum = db.Column(db.String(255), nullable=False) + id_landkreis = db.Column(db.String(255), nullable=False) + datenstand = db.Column(db.String(255), nullable=False) + neuer_fall = db.Column(db.String(255), nullable=False) + neuer_todesfall = db.Column(db.String(255), nullable=False) + ref_datum = db.Column(db.String(255), nullable=False) + neu_genesen = db.Column(db.String(255), nullable=False) + anzahl_genesen = db.Column(db.String(255), nullable=False) + ist_erkrankungsbeginn = db.Column(db.String(255), nullable=False) + altersgruppe2 = db.Column(db.String(255), nullable=False) diff --git a/src/covid19/blueprints/rki_vaccination/rki_vaccination_model_import.py b/src/covid19/blueprints/rki_vaccination/rki_vaccination_model_import.py index 5b7de89a..10486c44 100644 --- a/src/covid19/blueprints/rki_vaccination/rki_vaccination_model_import.py +++ b/src/covid19/blueprints/rki_vaccination/rki_vaccination_model_import.py @@ -5,6 +5,7 @@ class RkiVaccinationImport(db.Model): __tablename__ = 'application__import__rki_vaccination' id = db.Column(db.Integer, primary_key=True) + datum = db.Column(db.String(255), nullable=False) dosen_kumulativ = db.Column(db.Integer, nullable=False) dosen_differenz_zum_vortag = db.Column(db.Integer, nullable=False) dosen_biontech_kumulativ = db.Column(db.Integer, nullable=False) @@ -25,14 +26,6 @@ class RkiVaccinationImport(db.Model): indikation_beruf_voll = db.Column(db.Integer, nullable=False) indikation_medizinisch_voll = db.Column(db.Integer, nullable=False) indikation_pflegeheim_voll = db.Column(db.Integer, nullable=False) - date_reported = db.Column(db.String(255), nullable=False) - datum = db.Column(db.Date, nullable=False) - year = db.Column(db.Integer, nullable=False) - month = db.Column(db.Integer, nullable=False) - day_of_month = db.Column(db.Integer, nullable=False) - day_of_week = db.Column(db.Integer, nullable=False) - week_of_year = db.Column(db.Integer, nullable=False) - year_week = db.Column(db.String(255), nullable=False) @classmethod def remove_all(cls): @@ -125,4 +118,40 @@ class RkiVaccinationImport(db.Model): new_dates = [] for item, in db.session.execute(sql_query): new_dates.append(item) - return new_dates \ No newline at end of file + return new_dates + + +class RkiVaccinationFlat(db.Model): + __tablename__ = 'application__import__rki_vaccination_flat' + + id = db.Column(db.Integer, primary_key=True) + date_reported_import_str = db.Column(db.String(255), nullable=False, unique=True) + year_week = db.Column(db.String(255), nullable=False) + datum = db.Column(db.Date, nullable=False, unique=True) + year = db.Column(db.Integer, nullable=False) + month = db.Column(db.Integer, nullable=False) + day_of_month = db.Column(db.Integer, nullable=False) + day_of_week = db.Column(db.Integer, nullable=False) + week_of_year = db.Column(db.Integer, nullable=False) + location = db.Column(db.String(255), nullable=False) + location_group = db.Column(db.String(255), nullable=False) + dosen_kumulativ = db.Column(db.Integer, nullable=False) + dosen_differenz_zum_vortag = db.Column(db.Integer, nullable=False) + dosen_biontech_kumulativ = db.Column(db.Integer, nullable=False) + dosen_moderna_kumulativ = db.Column(db.Integer, nullable=False) + personen_erst_kumulativ = db.Column(db.Integer, nullable=False) + personen_voll_kumulativ = db.Column(db.Integer, nullable=False) + impf_quote_erst = db.Column(db.Float, nullable=False) + impf_quote_voll = db.Column(db.Float, nullable=False) + indikation_alter_dosen = db.Column(db.Integer, nullable=False) + indikation_beruf_dosen = db.Column(db.Integer, nullable=False) + indikation_medizinisch_dosen = db.Column(db.Integer, nullable=False) + indikation_pflegeheim_dosen = db.Column(db.Integer, nullable=False) + indikation_alter_erst = db.Column(db.Integer, nullable=False) + indikation_beruf_erst = db.Column(db.Integer, nullable=False) + indikation_medizinisch_erst = db.Column(db.Integer, nullable=False) + indikation_pflegeheim_erst = db.Column(db.Integer, nullable=False) + indikation_alter_voll = db.Column(db.Integer, nullable=False) + indikation_beruf_voll = db.Column(db.Integer, nullable=False) + indikation_medizinisch_voll = db.Column(db.Integer, nullable=False) + indikation_pflegeheim_voll = db.Column(db.Integer, nullable=False) diff --git a/src/covid19/blueprints/who/who_model_import.py b/src/covid19/blueprints/who/who_model_import.py index ac099e8d..da8c5806 100644 --- a/src/covid19/blueprints/who/who_model_import.py +++ b/src/covid19/blueprints/who/who_model_import.py @@ -170,3 +170,27 @@ class WhoImport(db.Model): if not item in dates_reported: dates_reported.append(item) return dates_reported + + +class WhoFlat(db.Model): + __tablename__ = 'application__import__who_flat' + + id = db.Column(db.Integer, primary_key=True) + date_reported_import_str = db.Column(db.String(255), nullable=False, unique=True) + year_week = db.Column(db.String(255), nullable=False) + datum = db.Column(db.Date, nullable=False, unique=True) + year = db.Column(db.Integer, nullable=False) + month = db.Column(db.Integer, nullable=False) + day_of_month = db.Column(db.Integer, nullable=False) + day_of_week = db.Column(db.Integer, nullable=False) + week_of_year = db.Column(db.Integer, nullable=False) + location = db.Column(db.String(255), nullable=False) + location_group = db.Column(db.String(255), nullable=False) + new_cases = db.Column(db.String(255), nullable=False) + cumulative_cases = db.Column(db.String(255), nullable=False) + new_deaths = db.Column(db.String(255), nullable=False) + cumulative_deaths = db.Column(db.String(255), nullable=False) + country_code = db.Column(db.String(255), nullable=False) + country = db.Column(db.String(255), nullable=False) + who_region = db.Column(db.String(255), nullable=False) + date_reported = db.Column(db.String(255), nullable=False) -- GitLab