fix(energy-pie): represent indeterminate shares and preserve prepared styling
Tests / test (push) Successful in 50s
Tests / test (push) Successful in 50s
This commit is contained in:
@@ -25,6 +25,7 @@ class Energiediagramm extends IPSModule
|
||||
$this->RegisterPropertyInteger('NetzbezugZaehlerID', 0);
|
||||
$this->RegisterPropertyInteger('VerbrauchZaehlerID', 0);
|
||||
$this->RegisterPropertyFloat('Zaehlerfaktor', 1.0);
|
||||
$this->RegisterPropertyBoolean('EnergieanteileBerechenbar', true);
|
||||
$this->RegisterPropertyString('Standardzeitraum', 'day');
|
||||
$this->RegisterPropertyInteger('Aktualisierungsintervall', 60);
|
||||
$this->RegisterPropertyString('FarbeEigenverbrauch', self::COLOR_SELF_CONSUMPTION);
|
||||
@@ -253,6 +254,7 @@ class Energiediagramm extends IPSModule
|
||||
$customStart,
|
||||
$customEnd
|
||||
);
|
||||
$sharesAvailable = $this->ReadPropertyBoolean('EnergieanteileBerechenbar');
|
||||
|
||||
$payload = [
|
||||
'range' => $range,
|
||||
@@ -263,6 +265,9 @@ class Energiediagramm extends IPSModule
|
||||
'tEnd' => $end,
|
||||
'hasData' => false,
|
||||
'noDataHint' => 'Energiezähler konfigurieren.',
|
||||
'sharesAvailable' => $sharesAvailable,
|
||||
'attributionHint' => $sharesAvailable ? ''
|
||||
: 'Eigenverbrauch und Autarkie sind bei unterschiedlichen Messgrenzen nicht eindeutig bestimmbar. Die Energiesummen bleiben separat sichtbar.',
|
||||
'colors' => [
|
||||
'selfConsumption' => EnergyChartCalculator::normalizeColor(
|
||||
$this->ReadPropertyString('FarbeEigenverbrauch'),
|
||||
@@ -273,7 +278,7 @@ class Energiediagramm extends IPSModule
|
||||
self::COLOR_AUTARKY
|
||||
),
|
||||
],
|
||||
'values' => EnergyChartCalculator::metrics(0.0, 0.0, 0.0),
|
||||
'values' => EnergyChartCalculator::metrics(0.0, 0.0, 0.0, null, $sharesAvailable),
|
||||
];
|
||||
|
||||
if (!$this->configurationIsValid()) {
|
||||
@@ -329,7 +334,8 @@ class Energiediagramm extends IPSModule
|
||||
$production['value'] * $factor,
|
||||
$feedIn['value'] * $factor,
|
||||
$grid['value'] * $factor,
|
||||
$consumption
|
||||
$consumption,
|
||||
$sharesAvailable
|
||||
);
|
||||
|
||||
if (!$payload['hasData']) {
|
||||
|
||||
Reference in New Issue
Block a user