From 370625c52ed054f28f659ba6621bd444181363ec Mon Sep 17 00:00:00 2001 From: thomaswoehlke <thomas.woehlke@gmail.com> Date: Sat, 8 May 2021 21:08:48 +0200 Subject: [PATCH] working on: 0.0.34 Release --- .../blueprints/ecdc/ecdc_model_import.py | 13 +++++++++--- .../blueprints/ecdc/ecdc_service_import.py | 20 ++++++++++++++----- .../blueprints/owid/owid_model_import.py | 7 +++++++ .../blueprints/owid/owid_service_import.py | 12 ++++++++++- .../blueprints/rki_cases/rki_model_import.py | 8 ++++++++ .../rki_vaccination_model_import.py | 9 ++++++++- .../rki_vaccination_service_import.py | 15 ++++++++++++-- .../blueprints/who/who_model_import.py | 16 ++++++++++----- .../blueprints/who/who_service_import.py | 20 ++++++++++++++----- 9 files changed, 98 insertions(+), 22 deletions(-) diff --git a/src/covid19/blueprints/ecdc/ecdc_model_import.py b/src/covid19/blueprints/ecdc/ecdc_model_import.py index 20d1afa7..4eafae3c 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) - day = db.Column(db.String(255), nullable=False) - month = db.Column(db.String(255), nullable=False) - year = 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) 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,6 +17,13 @@ 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): diff --git a/src/covid19/blueprints/ecdc/ecdc_service_import.py b/src/covid19/blueprints/ecdc/ecdc_service_import.py index 6ef12059..6c19fca0 100644 --- a/src/covid19/blueprints/ecdc/ecdc_service_import.py +++ b/src/covid19/blueprints/ecdc/ecdc_service_import.py @@ -3,6 +3,7 @@ import psycopg2 from database import db, app from covid19.blueprints.app_all.all_service_config import ApplicationServiceConfig +from covid19.blueprints.ecdc.ecdc_model import EcdcDateReported from covid19.blueprints.ecdc.ecdc_model_import import EcdcImport @@ -27,11 +28,13 @@ class EcdcServiceImport: with open(self.cfg.cvsfile_path, newline='') as csv_file: file_reader = csv.DictReader(csv_file, delimiter=',', quotechar='"') for row in file_reader: + date_rep = row['dateRep'] + d = EcdcDateReported.create_new_object_factory(my_date_rep=date_rep) o = EcdcImport( - date_rep=row['dateRep'], - day=row['day'], - month=row['month'], - year=row['year'], + date_rep=date_rep, + date_rep_day=row['day'], + date_rep_month=row['month'], + date_rep_year=row['year'], cases=row['cases'], deaths=row['deaths'], countries_and_territories=row['countriesAndTerritories'], @@ -40,7 +43,14 @@ class EcdcServiceImport: pop_data_2019=row['popData2019'], continent_exp=row['continentExp'], cumulative_number_for_14_days_of_covid19_cases_per_100000 - =row['Cumulative_number_for_14_days_of_COVID-19_cases_per_100000'] + =row['Cumulative_number_for_14_days_of_COVID-19_cases_per_100000'], + datum=d.datum, + year=d.year, + month=d.month, + day_of_month=d.day_of_month, + day_of_week=d.day_of_week, + week_of_year=d.day_of_week, + year_week=d.year_week ) db.session.add(o) k = k + 1 diff --git a/src/covid19/blueprints/owid/owid_model_import.py b/src/covid19/blueprints/owid/owid_model_import.py index 3e9b2090..a187a3d1 100644 --- a/src/covid19/blueprints/owid/owid_model_import.py +++ b/src/covid19/blueprints/owid/owid_model_import.py @@ -66,6 +66,13 @@ 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): diff --git a/src/covid19/blueprints/owid/owid_service_import.py b/src/covid19/blueprints/owid/owid_service_import.py index 2f395440..66f06de3 100644 --- a/src/covid19/blueprints/owid/owid_service_import.py +++ b/src/covid19/blueprints/owid/owid_service_import.py @@ -2,6 +2,7 @@ import csv import psycopg2 from database import db, app from covid19.blueprints.app_all.all_service_config import ApplicationServiceConfig +from covid19.blueprints.owid.owid_model import OwidDateReported from covid19.blueprints.owid.owid_model_import import OwidImport @@ -27,11 +28,13 @@ class OwidServiceImport: file_reader = csv.DictReader(csv_file, delimiter=',', quotechar='"') k = 0 for row in file_reader: + date_reported = row['date'], + d = OwidDateReported.create_new_object_factory(my_date_rep=date_reported) o = OwidImport( iso_code=row['iso_code'], continent=row['continent'], location=row['location'], - date=row['date'], + date=date_reported, total_cases=row['total_cases'], new_cases=row['new_cases'], new_cases_smoothed=row['new_cases_smoothed'], @@ -87,6 +90,13 @@ class OwidServiceImport: hospital_beds_per_thousand=row['hospital_beds_per_thousand'], life_expectancy=row['life_expectancy'], human_development_index=row['human_development_index'], + datum=d.datum, + year=d.year, + month=d.month, + day_of_month=d.day_of_month, + day_of_week=d.day_of_week, + week_of_year=d.day_of_week, + year_week=d.year_week ) db.session.add(o) k += 1 diff --git a/src/covid19/blueprints/rki_cases/rki_model_import.py b/src/covid19/blueprints/rki_cases/rki_model_import.py index 6964f27a..13a324de 100644 --- a/src/covid19/blueprints/rki_cases/rki_model_import.py +++ b/src/covid19/blueprints/rki_cases/rki_model_import.py @@ -23,6 +23,14 @@ 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): 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 47ac63bf..5b7de89a 100644 --- a/src/covid19/blueprints/rki_vaccination/rki_vaccination_model_import.py +++ b/src/covid19/blueprints/rki_vaccination/rki_vaccination_model_import.py @@ -5,7 +5,6 @@ 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) @@ -26,6 +25,14 @@ 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): diff --git a/src/covid19/blueprints/rki_vaccination/rki_vaccination_service_import.py b/src/covid19/blueprints/rki_vaccination/rki_vaccination_service_import.py index ba7a61a2..44966df6 100644 --- a/src/covid19/blueprints/rki_vaccination/rki_vaccination_service_import.py +++ b/src/covid19/blueprints/rki_vaccination/rki_vaccination_service_import.py @@ -2,6 +2,8 @@ import csv import psycopg2 from database import db, app + +from covid19.blueprints.rki_vaccination.rki_vaccination_model import RkiVaccinationDateReported from covid19.blueprints.rki_vaccination.rki_vaccination_model_import import RkiVaccinationImport from covid19.blueprints.app_all.all_service_config import ApplicationServiceConfig @@ -34,8 +36,9 @@ class RkiVaccinationServiceImport: with open(src_cvsfile_name, newline='\n') as csv_file: file_reader = csv.DictReader(csv_file, delimiter='\t', quotechar='"') for row in file_reader: + date_reported = row['date'] + d = RkiVaccinationDateReported.create_new_object_factory(my_date_rep=date_reported) o = RkiVaccinationImport( - datum=row['date'], dosen_kumulativ=self.__int(row['dosen_kumulativ']), dosen_differenz_zum_vortag=self.__int(row['dosen_differenz_zum_vortag']), dosen_biontech_kumulativ=self.__int(row['dosen_biontech_kumulativ']), @@ -55,7 +58,15 @@ class RkiVaccinationServiceImport: indikation_alter_voll=self.__int(row['indikation_alter_voll']), indikation_beruf_voll=self.__int(row['indikation_beruf_voll']), indikation_medizinisch_voll=self.__int(row['indikation_medizinisch_voll']), - indikation_pflegeheim_voll=self.__int(row['indikation_pflegeheim_voll']) + indikation_pflegeheim_voll=self.__int(row['indikation_pflegeheim_voll']), + date_reported=date_reported, + datum=d.datum, + year=d.year, + month=d.month, + day_of_month=d.day_of_month, + day_of_week=d.day_of_week, + week_of_year=d.day_of_week, + year_week=d.year_week ) db.session.add(o) k += 1 diff --git a/src/covid19/blueprints/who/who_model_import.py b/src/covid19/blueprints/who/who_model_import.py index 4db10ce7..ac099e8d 100644 --- a/src/covid19/blueprints/who/who_model_import.py +++ b/src/covid19/blueprints/who/who_model_import.py @@ -1,19 +1,25 @@ from sqlalchemy.orm import Bundle from database import db, ITEMS_PER_PAGE - class WhoImport(db.Model): __tablename__ = 'application__import__who' id = db.Column(db.Integer, primary_key=True) - date_reported = 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) 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) + 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): diff --git a/src/covid19/blueprints/who/who_service_import.py b/src/covid19/blueprints/who/who_service_import.py index 03c0041f..2e30a877 100644 --- a/src/covid19/blueprints/who/who_service_import.py +++ b/src/covid19/blueprints/who/who_service_import.py @@ -2,6 +2,7 @@ import sys import csv import psycopg2 from database import db, app +from covid19.blueprints.who.who_model import WhoDateReported from covid19.blueprints.who.who_model_import import WhoImport from covid19.blueprints.app_all.all_service_config import ApplicationServiceConfig @@ -32,15 +33,24 @@ class WhoServiceImport: file_reader = csv.DictReader(csv_file, delimiter=',', quotechar='"') k = 0 for row in file_reader: + date_reported = row[keyDate_reported] + d = WhoDateReported.create_new_object_factory(my_date_rep=date_reported) o = WhoImport( - date_reported=row[keyDate_reported], - country_code=row['Country_code'], - country=row['Country'], - who_region=row['WHO_region'], new_cases=row['New_cases'], cumulative_cases=row['Cumulative_cases'], new_deaths=row['New_deaths'], - cumulative_deaths=row['Cumulative_deaths'] + cumulative_deaths=row['Cumulative_deaths'], + country_code=row['Country_code'], + country=row['Country'], + who_region=row['WHO_region'], + date_reported=row[keyDate_reported], + datum=d.datum, + year=d.year, + month=d.month, + day_of_month=d.day_of_month, + day_of_week=d.day_of_week, + week_of_year=d.day_of_week, + year_week=d.year_week ) db.session.add(o) k += 1 -- GitLab