Initial commit

Made-with: Cursor
This commit is contained in:
Dusan Vojacek
2026-03-20 13:27:37 +01:00
commit 8b4af663d8
77 changed files with 13337 additions and 0 deletions

View File

@@ -0,0 +1,51 @@
-- =============================================================
-- V005__planning_curtailment.sql
-- EMS Platform rozšíření plánování o curtailment FVE pole A
-- a zelený bonus pole B
-- =============================================================
-- Přidat curtailment výsledek do planning_interval
ALTER TABLE ems.planning_interval
ADD COLUMN IF NOT EXISTS pv_a_curtailed_w INT NOT NULL DEFAULT 0;
COMMENT ON COLUMN ems.planning_interval.pv_a_curtailed_w IS
'Plánované omezení výroby FVE pole A v W rozhodnuté LP solverem. '
'0 = žádné omezení výroby. Hodnota > 0 znamená že Deye dostane příkaz '
'omezit Output Power Limit na (pv_a_forecast_w - pv_a_curtailed_w).';
-- Přidat zelený bonus do audit_interval pro správnou ekonomiku
ALTER TABLE ems.audit_interval
ADD COLUMN IF NOT EXISTS pv_b_production_wh NUMERIC(10,3),
ADD COLUMN IF NOT EXISTS green_bonus_czk NUMERIC(10,4);
COMMENT ON COLUMN ems.audit_interval.pv_b_production_wh IS
'Skutečná výroba FVE pole B v Wh za 15min interval. '
'Odvozena z telemetrie: celkový pv_power_w minus výroba pole A (pokud měřena odděleně). '
'Slouží pro výpočet nároku na zelený bonus.';
COMMENT ON COLUMN ems.audit_interval.green_bonus_czk IS
'Příjem ze zeleného bonusu za výrobu pole B v Kč. '
'Vypočteno jako pv_b_production_wh / 1000 * green_bonus_czk_kwh z site_market_config. '
'Zahrnovat do celkových nákladů/příjmů lokality.';
-- Rozšíření site_market_config o zelený bonus
ALTER TABLE ems.site_market_config
ADD COLUMN IF NOT EXISTS green_bonus_czk_kwh NUMERIC(8,4) NOT NULL DEFAULT 0,
ADD COLUMN IF NOT EXISTS green_bonus_asset_code TEXT;
COMMENT ON COLUMN ems.site_market_config.green_bonus_czk_kwh IS
'Výše zeleného bonusu (dotace) v Kč/kWh za vyrobenou elektřinu z FVE pole s dotací. '
'Bonus se vztahuje vždy na výrobu bez ohledu na cenu nebo způsob využití energie.';
COMMENT ON COLUMN ems.site_market_config.green_bonus_asset_code IS
'Kód FVE pole (asset_pv_array.code) na které se zelený bonus vztahuje. '
'Příklad: pv-b. NULL = bonus se nevztahuje na žádné konkrétní pole.';
-- Seed: doplnit zelený bonus pro home-01
-- (hodnota bonusu bude upřesněna dle smlouvy s OTE/ERU)
UPDATE ems.site_market_config
SET
green_bonus_czk_kwh = 1.20, -- TODO: doplnit skutečnou výši bonusu ze smlouvy
green_bonus_asset_code = 'pv-b'
WHERE site_id = (SELECT id FROM ems.site WHERE code = 'home-01')
AND valid_to IS NULL;