Skip to content
Snippets Groups Projects
Commit 1cf778bc authored by thomaswoehlke's avatar thomaswoehlke
Browse files

working on: 0.0.34 Release

parent eaa8d5dd
No related branches found
No related tags found
No related merge requests found
docs/blueprints/all/uml_requirements/all_domain_model.png

68.2 KiB

@startuml
interface AllImport {
{classifier} download_file()
{classifier} import_file()
{classifier} update_dimension_tables()
{classifier} update_fact_table()
{classifier} update_star_schema()
}
interface AllImportIncrement {
{classifier} download_file()
{classifier} import_file()
{classifier} full_update_dimension_tables()
{classifier} full_update_fact_table()
{classifier} full_update_star_schema()
}
entity DataImport {
datum_reported: Date
location: String
location_group: String
{classifier} download_file()
{classifier} import_file()
{classifier} full_update_dimension_tables()
{classifier} full_update_fact_table()
{classifier} full_update_star_schema()
{classifier} update_dimension_tables()
{classifier} update_fact_table()
{classifier} update_star_schema()
}
entity WhoImport {
id: Integer
date_reported: String
country_code: String
country: String
who_region: String
new_cases: String
cumulative_cases: String
new_deaths: String
cumulative_deaths: String
{classifier} download_file()
{classifier} import_file()
{classifier} full_update_dimension_tables()
{classifier} full_update_fact_table()
{classifier} full_update_star_schema()
{classifier} update_dimension_tables()
{classifier} update_fact_table()
{classifier} update_star_schema()
}
entity EcdcImport {
id: Integer
date_rep: String
date_rep_day: String
date_rep_month: String
date_rep_year: String
cases: String
deaths: String
pop_data_2019: String
countries_and_territories: String
geo_id: String
country_territory_code: String
continent_exp: String
cumulative_number_for_14_days_of_covid19_cases_per_100000: String
{classifier} download_file()
{classifier} import_file()
{classifier} full_update_dimension_tables()
{classifier} full_update_fact_table()
{classifier} full_update_star_schema()
{classifier} update_dimension_tables()
{classifier} update_fact_table()
{classifier} update_star_schema()
}
entity RkiVaccinationImport {
id: Integer
dosen_kumulativ: Integer
dosen_differenz_zum_vortag: Integer
dosen_biontech_kumulativ: Integer
dosen_moderna_kumulativ: Integer
personen_erst_kumulativ: Integer
personen_voll_kumulativ: Integer
impf_quote_erst: Float
impf_quote_voll: Float
indikation_alter_dosen: Integer
indikation_beruf_dosen: Integer
indikation_medizinisch_dosen: Integer
indikation_pflegeheim_dosen: Integer
indikation_alter_erst: Integer
indikation_beruf_erst: Integer
indikation_medizinisch_erst: Integer
indikation_pflegeheim_erst: Integer
indikation_alter_voll: Integer
indikation_beruf_voll: Integer
indikation_medizinisch_voll: Integer
indikation_pflegeheim_voll: Integer
date_reported: String
{classifier} download_file()
{classifier} import_file()
{classifier} full_update_dimension_tables()
{classifier} full_update_fact_table()
{classifier} full_update_star_schema()
{classifier} update_dimension_tables()
{classifier} update_fact_table()
{classifier} update_star_schema()
}
entity RkiCasesImport {
id: Integer
fid: String
id_bundesland: String
bundesland: String
landkreis: String
altersgruppe: String
geschlecht: String
anzahl_fall: String
anzahl_todesfall: String
meldedatum: String
id_landkreis: String
datenstand: String
neuer_fall: String
neuer_todesfall: String
ref_datum: String
neu_genesen: String
anzahl_genesen: String
ist_erkrankungsbeginn: String
altersgruppe2: String
{classifier} download_file()
{classifier} import_file()
{classifier} full_update_dimension_tables()
{classifier} full_update_fact_table()
{classifier} full_update_star_schema()
{classifier} update_dimension_tables()
{classifier} update_fact_table()
{classifier} update_star_schema()
}
entity OwidImport {
id: Integer
iso_code: String
continent: String
location: String
date: String
total_cases: String
new_cases: String
new_cases_smoothed: String
total_deaths: String
new_deaths: String
new_deaths_smoothed: String
total_cases_per_million: String
new_cases_per_million: String
new_cases_smoothed_per_million: String
total_deaths_per_million: String
new_deaths_per_million: String
new_deaths_smoothed_per_million: String
reproduction_rate: String
icu_patients: String
icu_patients_per_million: String
hosp_patients: String
hosp_patients_per_million: String
weekly_icu_admissions: String
weekly_icu_admissions_per_million: String
weekly_hosp_admissions: String
weekly_hosp_admissions_per_million: String
new_tests: String
total_tests: String
total_tests_per_thousand: String
new_tests_per_thousand: String
new_tests_smoothed: String
new_tests_smoothed_per_thousand: String
positive_rate: String
tests_per_case: String
tests_units: String
total_vaccinations: String
people_vaccinated: String
people_fully_vaccinated: String
new_vaccinations: String
new_vaccinations_smoothed: String
total_vaccinations_per_hundred: String
people_vaccinated_per_hundred: String
people_fully_vaccinated_per_hundred: String
new_vaccinations_smoothed_per_million: String
stringency_index: String
population: String
population_density: String
median_age: String
aged_65_older: String
aged_70_older: String
gdp_per_capita: String
extreme_poverty: String
cardiovasc_death_rate: String
diabetes_prevalence: String
female_smokers: String
male_smokers: String
handwashing_facilities: String
hospital_beds_per_thousand: String
life_expectancy: String
human_development_index: String
{classifier} download_file()
{classifier} import_file()
{classifier} full_update_dimension_tables()
{classifier} full_update_fact_table()
{classifier} full_update_star_schema()
{classifier} update_dimension_tables()
{classifier} update_fact_table()
{classifier} update_star_schema()
}
AllImportIncrement <|-- DataImport
AllImport <|-- DataImport
DataImport <|-- WhoImport
DataImport <|-- OwidImport
DataImport <|-- EcdcImport
DataImport <|-- RkiVaccinationImport
DataImport <|-- RkiCasesImport
@enduml
@startuml
entity ApplicationDateReported {
id: Integer
date_reported: String
year_week: String
datum: Date
year: Integer
month: Integer
day_of_month: Integer
day_of_week: Integer
week_of_year: Integer
get_name_for_weekday()
{classifier} get_names_for_weekday()
{classifier} get_datum_parts(my_date_rep: String)
{classifier} get_datum(my_year: Integer, my_month: Integer, my_day: Integer)
{classifier} get_datum_as_str(my_year: Integer, my_month: Integer, my_day: Integer)
{classifier} my_year_week(my_iso_year: Integer, week_number: Integer)
{classifier} create_new_object_factory(my_date_rep: String)
}
entity ApplicationRegion {
id: Integer
continent: String
{classifier} remove_all()
{classifier} get_all_as_page(page: Integer)
{classifier} get_all()
{classifier} get_all_as_dict()
{classifier} get_by_id(other_id: Integer)
{classifier} find_by_id(other_id: Integer)
}
entity RkiDateReported {
id: Integer
date_reported: String
year_week: String
datum: Date
year: Integer
month: Integer
day_of_month: Integer
day_of_week: Integer
week_of_year: Integer
get_name_for_weekday()
{classifier} get_names_for_weekday()
{classifier} get_datum_parts(my_date_rep: String)
{classifier} get_datum(my_year: Integer, my_month: Integer, my_day: Integer)
{classifier} get_datum_as_str(my_year: Integer, my_month: Integer, my_day: Integer)
{classifier} my_year_week(my_iso_year: Integer, week_number: Integer)
{classifier} create_new_object_factory(my_date_rep: String)
}
class ApplicationPage << (T,#FF7700) Transient >> {
title: String
subtitle: String
subtitle_info: String
}
class ApplicationServiceConfig << (T,#FF7700) Transient >> {
limit_nr: Integer
data_path: String
slug: String
category: String
sub_category: String
tablename: String
cvsfile_name: String
url_src: String
cvsfile_path: String
msg_job: String
msg_ok: String
msg_error: String
create_config_for_who()
create_config_for_rki_vaccination()
create_config_for_owid()
create_config_for_ecdc()
create_config_for_rki_bundeslaender()
create_config_for_rki_landkreise()
}
class ApplicationServiceDownload << (S,red) Service >> {
-log_error()
-log_success()
-prepare_download()
-download_with_wget()
-download_with_subprocess_and_os_native_wget()
download_file()
}
class database << (S,#FF7700) Singleton >> {
{static} int port
{static} bool run_run_with_debug
{static} int ITEMS_PER_PAGE
app: Flask
db: SQLAlchemy
admin: Admin
app_cors: CORS
app_bootstrap: Bootstrap
create_app()
create_db(my_app)
create_db_test(my_app)
create_celery(my_app)
create_admin(my_app)
}
class application_workers << (B,orchid) Boundary >> {
run_mq(my_app, my_celery)
run_app(my_app)
}
class application_views << (B,orchid) Boundary >> {
url_home()
url_root()
}
class application_services << (P,yellow) Proxy >> {
}
class ApplicationService << (S,red) Service >> {
}
class AdminService << (S,red) Service >> {
}
class WhoService << (S,red) Service >> {
}
class EcdcService << (S,red) Service >> {
}
class RkiVaccinationService << (S,red) Service >> {
}
class RkiBundeslaenderService << (S,red) Service >> {
}
class RkiLandkreiseService << (S,red) Service >> {
}
class OwidService << (S,red) Service >> {
}
ApplicationDateReported <|-- RkiDateReported
ApplicationServiceDownload "*" --> "1" ApplicationServiceConfig: cfg
application_workers "1" --> "1" application_services: application_services
application_views "1" --> "1" application_services: application_services
application_views "*" --> "1" ApplicationPage: page_info
application_services "*" --> "1" ApplicationService: application_service
application_services "*" --> "1" AdminService: admin_service
application_services "*" --> "1" WhoService: who_service
application_services "*" --> "1" EcdcService: ecdc_service
application_services "*" --> "1" RkiVaccinationService: rki_vaccination_service
application_services "*" --> "1" RkiBundeslaenderService: rki_service_bundeslaender
application_services "*" --> "1" RkiLandkreiseService: rki_service_landkreise
application_services "*" --> "1" OwidService: owid_service
ApplicationService "*" --> "1" database
ApplicationServiceDownload "*" --> "1" database
AdminService "*" --> "1" database
WhoService "*" --> "1" database
EcdcService "*" --> "1" database
RkiBundeslaenderService "*" --> "1" database
RkiLandkreiseService "*" --> "1" database
RkiVaccinationService "*" --> "1" database
OwidService "*" --> "1" database
ApplicationService : SQLAlchemy database
ApplicationServiceDownload : SQLAlchemy database
AdminService : SQLAlchemy database
WhoService : SQLAlchemy database
EcdcService : SQLAlchemy database
RkiBundeslaenderService : SQLAlchemy database
RkiLandkreiseService : SQLAlchemy database
RkiVaccinationService : SQLAlchemy database
OwidService : SQLAlchemy database
@enduml
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment