next cahgnes
This commit is contained in:
@@ -48,7 +48,7 @@
|
||||
|
||||
## Read-model JSONB (`ems.fn_*`)
|
||||
|
||||
FastAPI endpointy pro dashboard a konfiguraci preferují **jedno volání** `select ems.fn_*(…)` vracející **jsonb** (pole řádků, agregace, merge locků), aby v Pythonu nezůstávaly ad-hoc `SELECT`/`JOIN`/`WITH`. Pomocník `app.db_json.fetch_json` vrací `dict`/`list`. Telemetrie a IO zůstávají v Pythonu; čisté agregace a sjednocení TZ patří do SQL. Opakované migrace: `db/routines/R__fn_*.sql`, `db/views/R__vw_*.sql`.
|
||||
FastAPI endpointy pro dashboard a konfiguraci preferují **jedno volání** `select ems.fn_*(…)` vracející **jsonb** (pole řádků, agregace, merge locků), aby v Pythonu nezůstávaly ad-hoc `SELECT`/`JOIN`/`WITH`. Pomocník `app.db_json.fetch_json` vrací `dict`/`list`. Telemetrie a IO zůstávají v Pythonu; čisté agregace a sjednocení TZ patří do SQL. Opakované migrace: `db/routines/R__NNN_fn_*.sql`, `db/views/R__NNN_vw_*.sql` (prefix `NNN` = pořadí závislostí pro Flyway).
|
||||
|
||||
## Komponenty
|
||||
|
||||
@@ -77,18 +77,18 @@ ems-platform/
|
||||
V002__timescale_hypertables.sql
|
||||
V003__seed_site_home01.sql
|
||||
routines/
|
||||
R__fn_effective_price.sql
|
||||
R__fn_cop_estimate.sql
|
||||
R__fn_baseline_consumption.sql
|
||||
R__fn_fill_audit_interval.sql
|
||||
R__003_fn_baseline_consumption.sql
|
||||
R__005_fn_cop_estimate.sql
|
||||
R__011_fn_effective_price.sql
|
||||
R__019_fn_fill_audit_interval.sql
|
||||
(historicky) R__fn_plan_day.sql – primární plánování je PuLP v Pythonu
|
||||
R__fn_create_planning_run.sql
|
||||
views/
|
||||
R__vw_site_effective_price.sql
|
||||
R__vw_latest_telemetry.sql
|
||||
R__vw_telemetry_15m_7d.sql
|
||||
R__061_vw_site_effective_price.sql
|
||||
R__058_vw_latest_telemetry.sql
|
||||
R__071_vw_telemetry_15m_7d.sql
|
||||
R__vw_actual_baseline.sql
|
||||
R__vw_audit_summary.sql
|
||||
R__053_vw_audit_summary.sql
|
||||
R__vw_heat_pump_cop_history.sql
|
||||
flyway.conf
|
||||
|
||||
|
||||
Reference in New Issue
Block a user