From 6409096acc7cddf0048d735d2ab3df291e60dcf1 Mon Sep 17 00:00:00 2001 From: Lutz Bender Date: Thu, 21 Apr 2022 10:56:01 +0200 Subject: [PATCH] add daily graph labels --- src/main.js | 2 +- src/views/DailyGraph.vue | 88 ++++++++++++++++++++++++++++++++++------ 2 files changed, 76 insertions(+), 14 deletions(-) diff --git a/src/main.js b/src/main.js index 8e8da6b8..c035e2c0 100644 --- a/src/main.js +++ b/src/main.js @@ -40,7 +40,7 @@ requireComponent.keys().forEach((fileName) => { ) ); - console.debug("global registering of component", componentName); + // console.debug("global registering of component", componentName); vApp.component( componentName, // Look for the component options on `.default`, which will diff --git a/src/views/DailyGraph.vue b/src/views/DailyGraph.vue index ec595956..8e121eb9 100644 --- a/src/views/DailyGraph.vue +++ b/src/views/DailyGraph.vue @@ -27,7 +27,7 @@ Es konnten keine Einträge für dieses Datum gefunden werden. - + @@ -75,6 +75,9 @@ export default { mqttTopicsToSubscribe: [ "openWB/general/extern", "openWB/log/daily/#", + "openWB/system/device/+/component/+/config", + "openWB/chargepoint/+/config", + "openWB/vehicle/+/name", ], currentDay: "", dailyGraphRequestData: { @@ -292,6 +295,7 @@ export default { // color: fontColor }, grid: { + display: false, // color: gridSocColor, }, ticks: { @@ -478,32 +482,87 @@ export default { }, }, methods: { + getDatasetLabel(baseObject, objectKey, elementKey, datasetKey) { + // console.log( + // "getDatasetLabel", + // baseObject, + // objectKey, + // elementKey, + // datasetKey + // ); + var label = "*" + datasetKey; + if (objectKey == "all") { + switch (baseObject) { + case "pv": + label = "PV Summe"; + break; + case "bat": + label = "Speicher "; + switch (elementKey) { + case "power": + label += "Summe"; + break; + case "soc": + label += "SoC Summe"; + break; + } + break; + case "cp": + label = "Ladepunkte Summe"; + break; + } + } else { + var objectId = objectKey.match(/\d+$/); + var topic = ""; + switch (baseObject) { + case "cp": + topic = "openWB/chargepoint/" + objectId + "/config"; + break; + case "ev": + topic = "openWB/vehicle/" + objectId + "/name"; + break; + default: + topic = + "openWB/system/device/+/component/" + + objectId + + "/config"; + } + var objectTopic = Object.keys(this.getWildcardTopics(topic))[0]; + switch (baseObject) { + case "pv": + case "counter": + case "bat": + case "cp": + label = this.$store.state.mqtt[objectTopic].name; + if (elementKey == "soc") { + label += " SoC"; + } + break; + case "ev": + label = this.$store.state.mqtt[objectTopic]; + break; + } + } + return label; + }, getDatasetIndex(datasetKey) { let index = this.chartDatasets.datasets.findIndex((dataset) => { return dataset.jsonKey == datasetKey; }); if (index != -1) { - console.debug( - "index for dataset '" + datasetKey + "': " + index - ); return index; } - console.debug("no index found for '" + datasetKey + "'"); return; }, addDataset(baseObject, objectKey, elementKey, datasetKey) { - console.log( + console.debug( "adding new dataset", baseObject, objectKey, elementKey, datasetKey ); - // var datasetTemplate = datasetId.replace(/\d/g, ""); var datasetTemplate = baseObject + "-" + elementKey; - console.debug( - "template name: " + datasetTemplate + " key: " + datasetKey - ); if (this.datasetTemplates[datasetTemplate]) { var newDataset = JSON.parse( JSON.stringify(this.datasetTemplates[datasetTemplate]) @@ -511,8 +570,12 @@ export default { newDataset.parsing.yAxisKey = datasetKey; newDataset.jsonKey = datasetKey; newDataset.data = this.chartDataObject; - newDataset.label = datasetKey; - console.log("adding new dataset", newDataset); + newDataset.label = this.getDatasetLabel( + baseObject, + objectKey, + elementKey, + datasetKey + ); return this.chartDatasets.datasets.push(newDataset) - 1; } else { console.warn( @@ -543,7 +606,6 @@ export default { return; } else { this.chartDatasets.datasets = []; - console.log(this.dailyGraphRequestData); this.$emit("sendCommand", { command: "getDailyLog", data: this.commandData,