From 847a25445e834f0fe047d809f77b4dd3e0ad9ee6 Mon Sep 17 00:00:00 2001 From: Claus Hagen Date: Sun, 16 Nov 2025 23:21:45 +0100 Subject: [PATCH 1/3] fix price display --- .../colors/source/src/assets/js/processMessages.ts | 4 ++-- .../source/src/components/powerGraph/PgToolTipItem.vue | 5 ++++- .../src/components/powerGraph/processDayGraphData.ts | 10 ++++------ .../src/components/priceChart/GlobalPriceChart.vue | 1 + .../source/src/components/priceChart/PriceChart.vue | 1 + .../src/components/priceChart/processMessages.ts | 8 +++----- 6 files changed, 15 insertions(+), 14 deletions(-) diff --git a/packages/modules/web_themes/colors/source/src/assets/js/processMessages.ts b/packages/modules/web_themes/colors/source/src/assets/js/processMessages.ts index b6fc744489..a3d2d16e03 100755 --- a/packages/modules/web_themes/colors/source/src/assets/js/processMessages.ts +++ b/packages/modules/web_themes/colors/source/src/assets/js/processMessages.ts @@ -39,7 +39,7 @@ const topicsToSubscribe = [ 'openWB/chargepoint/#', 'openWB/vehicle/#', 'openWB/general/chargemode_config/pv_charging/#', - 'openWB/optional/et/#', + 'openWB/optional/ep/#', 'openWB/system/#', 'openWB/LegacySmartHome/#', 'openWB/command/' + mqttClientId() + '/#', @@ -85,7 +85,7 @@ function processMqttMessage(topic: string, payload: Buffer) { processMonthGraphMessages(topic, message) } else if (topic.match(/^openwb\/log\/yearly\//i)) { processYearGraphMessages(topic, message) - } else if (topic.match(/^openwb\/optional\/et\//i)) { + } else if (topic.match(/^openwb\/optional\/ep\//i)) { processEtProviderMessages(topic, message) } else if (topic.match(/^openwb\/system\//i)) { processSystemMessages(topic, message) diff --git a/packages/modules/web_themes/colors/source/src/components/powerGraph/PgToolTipItem.vue b/packages/modules/web_themes/colors/source/src/components/powerGraph/PgToolTipItem.vue index 0776735073..2e2c384054 100755 --- a/packages/modules/web_themes/colors/source/src/components/powerGraph/PgToolTipItem.vue +++ b/packages/modules/web_themes/colors/source/src/components/powerGraph/PgToolTipItem.vue @@ -167,7 +167,10 @@ function devs() { } function counters() { return Object.entries(props.entry) - .filter(([k, v]) => k.startsWith('counter') && k != 'counters' && k.length > 2 && v > 0) + .filter( + ([k, v]) => + k.startsWith('counter') && k != 'counters' && k.length > 2 && v > 0, + ) .map(([k, v]) => { return { power: v, diff --git a/packages/modules/web_themes/colors/source/src/components/powerGraph/processDayGraphData.ts b/packages/modules/web_themes/colors/source/src/components/powerGraph/processDayGraphData.ts index 8e710cf8c3..312f5977b0 100755 --- a/packages/modules/web_themes/colors/source/src/components/powerGraph/processDayGraphData.ts +++ b/packages/modules/web_themes/colors/source/src/components/powerGraph/processDayGraphData.ts @@ -69,7 +69,7 @@ function transformRow(currentRow: RawDayGraphDataItem): GraphDataItem { currentItem.evuOut = 0 currentItem.evuIn = 0 currentItem.counters = 0 - + Object.entries(currentRow.counter).forEach(([id, values]) => { if (values.grid) { currentItem.evuOut += values.power_exported @@ -82,14 +82,12 @@ function transformRow(currentRow: RawDayGraphDataItem): GraphDataItem { registry.duplicateItem(id, counters.get(+id.slice(7))!) //registry.items.get(id)!.showInGraph = true } - const item : Counter = registry.items.get(id) as Counter + const item: Counter = registry.items.get(id) as Counter if (item._showInGraph) { currentItem.counters += values.power_imported ?? 0 currentItem[id] = values.power_imported ?? 0 - } } - }) if (currentItem.evuOut == 0 && currentItem.evuIn == 0) { // legacy mode @@ -171,8 +169,8 @@ function transformRow(currentRow: RawDayGraphDataItem): GraphDataItem { currentItem[id] = values.power_imported ?? 0 if (!registry.keys().includes(id)) { registry.duplicateItem(id, counters.get(+id.slice(7))!) - */ //registry.items.get(id)!.showInGraph = true - /* } + */ //registry.items.get(id)!.showInGraph = true + /* } const item : Counter = registry.items.get(id) as Counter if (item._showInGraph) { currentItem.counters += values.power_imported ?? 0 diff --git a/packages/modules/web_themes/colors/source/src/components/priceChart/GlobalPriceChart.vue b/packages/modules/web_themes/colors/source/src/components/priceChart/GlobalPriceChart.vue index 7f4552f9d2..6d03504bef 100755 --- a/packages/modules/web_themes/colors/source/src/components/priceChart/GlobalPriceChart.vue +++ b/packages/modules/web_themes/colors/source/src/components/priceChart/GlobalPriceChart.vue @@ -11,6 +11,7 @@ etData.etCurrentPriceString }} +
{{ etData.etProvider }}
diff --git a/packages/modules/web_themes/colors/source/src/components/priceChart/PriceChart.vue b/packages/modules/web_themes/colors/source/src/components/priceChart/PriceChart.vue index 89882f9dbd..b8fe8d7491 100755 --- a/packages/modules/web_themes/colors/source/src/components/priceChart/PriceChart.vue +++ b/packages/modules/web_themes/colors/source/src/components/priceChart/PriceChart.vue @@ -1,4 +1,5 @@

Anbieter: {{ etData.etProvider }}

diff --git a/packages/modules/web_themes/colors/source/src/components/priceChart/processMessages.ts b/packages/modules/web_themes/colors/source/src/components/priceChart/processMessages.ts index 5f2d81565d..a7803e27e7 100755 --- a/packages/modules/web_themes/colors/source/src/components/priceChart/processMessages.ts +++ b/packages/modules/web_themes/colors/source/src/components/priceChart/processMessages.ts @@ -3,12 +3,10 @@ import { etData } from './model' export function processEtProviderMessages(topic: string, message: string) { if (topic == 'openWB/optional/ep/configured') { + etData.active = message == 'true' + } else if (topic == 'openWB/optional/ep/flexible_tariff/provider') { const data = JSON.parse(message) - if (data.type == null) { - etData.active = false - } else { - etData.active = true - } + etData.etProvider = data.name if (data.configuration && data.configuration.country != null) { globalData.country = data.configuration.country } From ea23884ed4b655d7eda2f91377100cb3f23c02f6 Mon Sep 17 00:00:00 2001 From: Claus Hagen Date: Sun, 16 Nov 2025 23:31:05 +0100 Subject: [PATCH 2/3] fix counter display --- .../colors/source/src/assets/js/processMessages.ts | 3 ++- .../src/components/counterList/CounterSettings.vue | 10 +++++++--- .../colors/source/src/components/counterList/model.ts | 4 +--- .../colors/source/src/components/powerGraph/model.ts | 1 - 4 files changed, 10 insertions(+), 8 deletions(-) diff --git a/packages/modules/web_themes/colors/source/src/assets/js/processMessages.ts b/packages/modules/web_themes/colors/source/src/assets/js/processMessages.ts index a3d2d16e03..27babc633e 100755 --- a/packages/modules/web_themes/colors/source/src/assets/js/processMessages.ts +++ b/packages/modules/web_themes/colors/source/src/assets/js/processMessages.ts @@ -100,7 +100,8 @@ function processCounterMessages(topic: string, message: string) { if (id != undefined) { if (id == globalData.evuId) { processEvuMessages(topic, message) - } else if (!counters.has(id)) { + } + if (!counters.has(id)) { console.warn('Invalid counter index: ' + id) } else if (topic.match(/^openWB\/counter\/[0-9]+\/get\/power$/i)) { counters.get(id)!.power = +message diff --git a/packages/modules/web_themes/colors/source/src/components/counterList/CounterSettings.vue b/packages/modules/web_themes/colors/source/src/components/counterList/CounterSettings.vue index fd37c1d764..faf4c974f9 100644 --- a/packages/modules/web_themes/colors/source/src/components/counterList/CounterSettings.vue +++ b/packages/modules/web_themes/colors/source/src/components/counterList/CounterSettings.vue @@ -3,15 +3,19 @@ Zähler in den Diagrammen anzeigen:
- +
diff --git a/packages/modules/web_themes/colors/source/src/components/counterList/model.ts b/packages/modules/web_themes/colors/source/src/components/counterList/model.ts index 8c00176ddf..5156e2184f 100755 --- a/packages/modules/web_themes/colors/source/src/components/counterList/model.ts +++ b/packages/modules/web_themes/colors/source/src/components/counterList/model.ts @@ -48,14 +48,12 @@ export function addCounter(index: number, counterType: string, grid = false) { if (!counters.has(index)) { counters.set(index, new Counter(index)) counters.get(index)!.counterType = counterType + counters.get(index)!.grid = grid switch (counterType) { case 'counter': counters.get(index)!.color = grid ? 'var(--color-evu)' : 'var(--color-ctr' + (counters.size - 1) + ')' - /* if (grid) { - counters.get(index)!.showInGraph = false - } */ break case 'inverter': counters.get(index)!.color = 'var(--color-pv)' diff --git a/packages/modules/web_themes/colors/source/src/components/powerGraph/model.ts b/packages/modules/web_themes/colors/source/src/components/powerGraph/model.ts index a41b0b5170..86ffc3e994 100755 --- a/packages/modules/web_themes/colors/source/src/components/powerGraph/model.ts +++ b/packages/modules/web_themes/colors/source/src/components/powerGraph/model.ts @@ -165,7 +165,6 @@ export const dayGraph = reactive({ this.date.getDate().toString().padStart(2, '0') this.topic = 'openWB/log/daily/' + dateString - console.log(`Request data at ${Date.now()}`) mqttSubscribe(this.topic) if (erase) { graphData.data = [] From f74e204ef285190f919f4dc6a342b37519f354f7 Mon Sep 17 00:00:00 2001 From: Claus Hagen Date: Mon, 17 Nov 2025 18:05:14 +0100 Subject: [PATCH 3/3] fix soc display in middle graph --- .../colors/source/src/components/powerGraph/PgSoc.vue | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/modules/web_themes/colors/source/src/components/powerGraph/PgSoc.vue b/packages/modules/web_themes/colors/source/src/components/powerGraph/PgSoc.vue index 7f3804a636..5e441821da 100755 --- a/packages/modules/web_themes/colors/source/src/components/powerGraph/PgSoc.vue +++ b/packages/modules/web_themes/colors/source/src/components/powerGraph/PgSoc.vue @@ -1,5 +1,5 @@