Skip to content

EEG-Aufteilung auf der Energie-Seite - #45

Merged
SolarPower2024 merged 8 commits into
load-peak-featuresfrom
feature/eeg-energy
Oct 5, 2026
Merged

SolarPower2024 merged 8 commits into
load-peak-featuresfrom
feature/eeg-energy

Conversation

@SolarPower2024

Copy link
Copy Markdown
Owner

EEG-Aufteilung auf der Energie-Seite, jetzt auf dem echten evcc-Energie-UI (evcc PR 33989 ist im Master). Ersetzt PR 1, der auf dem Vorschau-Branch preview/energy-page stand.

Basis ist evcc-update/2026-10-05 (evcc-Master-Merge); nach dessen Merge geht dieser PR auf load-peak-features.

Was drin ist

  1. EEG-Aufteilung auf der Netz-Karte (unverändert aus PR 1): mit gesetztem EEG-Zähler wird die Einspeisung aufgeteilt – EEG als eigener hellerer Balken, beide Mengen in der Legende, Erlös für normale Einspeisung und EEG als getrennte Kacheln, auch ohne Netzpreis. Ohne Zähler bleibt die Seite wie bei evcc, ohne zusätzlichen Request.
  2. EEG-Zähler nicht noch einmal unter den Zählern (unverändert aus PR 1).
  3. README und Vertragstest: Abschnitt 15 und Touch-Point-Tabelle beschreiben die Anzeige; forkUiHooks prüft die Stellen in Energy.vue, GroupChart.vue, GridStats.vue.
  4. Upstream zuerst: /api/feedinsplit nimmt für from/to evcc's historyRange und für die Buckets evcc's aggregateStarts statt eigener Kopien (gleiches Verhalten).
  5. Fixes aus dem Code-Review: nach einem Netzzähler-Tausch (mehrere Netz-Serien in einem Bucket) wird der EEG-Anteil nur einmal abgezogen (vitest feedInEeg.test.ts); schlägt die Split-Abfrage fehl, bleibt nicht die Aufteilung des vorigen Zeitraums stehen.

Konflikte beim Umsetzen

Nur Energy.vue: evcc hat den Schalter für Preise im Diagramm entfernt, Preise kommen jetzt immer über chartPrices/gridPrices. Unsere Anpassung nutzt jetzt diese statt settings.energyGridPrices.

Tests

Lokal: Go ./core/ ./core/metrics/ ./server/ grün inkl. TestForkHooksInPlace; Frontend vue-tsc, Lint, i18n, vitest 232/232; Headless-UI im EEG-Szenario (Tag, Monat, Handy): EEG als eigener hellerer Balken, Legende getrennt, Kacheln Netzkosten / Einspeisevergütung / EEG-Vergütung passen zum Diagramm, EEG-Zähler nicht unter den Zählern, /api/feedinsplit 200 mit Daten und 400 bei ungültigem from.

Code-Review (medium) auf den Branch: 3 Funde, alle behoben (siehe 4 und 5).

Für das Add-on

CHANGELOG: „Energie-Seite: Einspeisung nach EEG und normalem Tarif aufgeteilt (Balken, Legende, getrennte Erlös-Kacheln), sobald ein EEG-Zähler eingerichtet ist.“
DOCS: „Energie-Seite (Einstellungen → Experimentell): mit EEG-Tarif und EEG-Zähler zeigt die Netz-Karte EEG-Einspeisung und -Erlös getrennt.“

🤖 Generated with Claude Code

SolarPower2024 and others added 8 commits October 5, 2026 17:18
With an EEG counter set, the grid card of the energy page splits the
export: the EEG part is stacked as its own lighter bar next to the
standard feed-in, the legend lists both, and the revenue tiles show the
standard feed-in and the EEG revenue separately, each priced slot by slot
by /api/feedinsplit, also without a grid price. Without a counter the page
is unchanged and makes no extra request.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
(cherry picked from commit eb49197)
The energy page's grid card already shows the EEG part, so its counter is
left out of the additional meters card. The collector is titled with its
name for that; the CSV download still contains it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
(cherry picked from commit c6bd35e)
README section 15 and the touch point table describe the display on the
energy page; forkUiHooks checks the mounts in Energy.vue, GroupChart.vue
and GridStats.vue.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
/api/feedinsplit parsed from and to itself because historyRange only
existed in evcc PR 33989; evcc has it now, same checks and errors.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
evcc PR 33989 brought aggregateStarts, the same local-time alignment as our
bucketStart; using it keeps /api/feedinsplit on the energy history's
buckets if evcc changes them.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
With several grid series in a bucket (grid meter swapped) the EEG part came
off each of them; now it is taken out once across them. A failed split
request no longer leaves the previous period's split on the page.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
evcc's aggregateStarts keeps the location of time.Unix, which the test's
time.Local = UTC swap makes a different pointer than time.UTC.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@SolarPower2024
SolarPower2024 changed the base branch from evcc-update/2026-10-05 to load-peak-features October 5, 2026 15:50
@SolarPower2024
SolarPower2024 merged commit 7ee2798 into load-peak-features Oct 5, 2026
6 checks passed
@SolarPower2024
SolarPower2024 deleted the feature/eeg-energy branch October 5, 2026 15:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant