diff --git a/HauptManager/module.php b/HauptManager/module.php index 45ad3b5..d8b3fed 100644 --- a/HauptManager/module.php +++ b/HauptManager/module.php @@ -77,7 +77,7 @@ class HauptManager extends IPSModule $remainingPower = $Peakleistung - $Netzbezug; $Is_Peak_Shaving = true; } - + $resultArray = []; // Alle Energieverbraucher auslesen und dekodieren if (empty($Verbraucher_Liste_Korr[0]["User"])) { @@ -175,7 +175,7 @@ class HauptManager extends IPSModule } - $resultArray = []; + IPS_LogMessage("Hauptmanager", "Eintrag gtupoed user: ".print_r($groupedUsers)); // Jetzt werden die energien pro gruppe verteilt (Immer alle pro prio in einer gruppe miteinander) foreach ($groupedUsers as $priority => $users) { @@ -183,6 +183,8 @@ class HauptManager extends IPSModule $samePriorityUsers = isset($groupedUsers[$priority]) ? $groupedUsers[$priority] : []; + + IPS_LogMessage("Hauptmanager", "Eintrag samepriouser: ".print_r($samePriorityUsers)); // Wenn keine Verbraucher mit gleicher Priorität vorhanden sind, überspringen if (empty($samePriorityUsers)) { @@ -198,6 +200,11 @@ class HauptManager extends IPSModule $withoutZero[] = $entry; } } + + IPS_LogMessage("Hauptmanager", "Eintrag withZero: ".print_r($withZero)); + IPS_LogMessage("Hauptmanager", "Eintrag withoutZero: ".print_r($withoutZero)); + + // Verbraucher die nicht 0 annhemen können erhalten nun den minimalwert if (!empty($withoutZero)) { foreach ($withoutZero as $entry) { @@ -232,8 +239,7 @@ class HauptManager extends IPSModule ]; } } - IPS_LogMessage("Hauptmanager", "Eintrag allsteps: ". print_r($allSteps)); - IPS_LogMessage("Hauptmanager", "Eintrag allsteps: ". print_r($resultArray)); + // Sortiere die Schritte nach Größe usort($allSteps, function ($a, $b) { @@ -245,9 +251,7 @@ class HauptManager extends IPSModule $user = $entry["user"]; $manager = $entry["Writeback"]; $powerstep = $entry["step"]; - IPS_LogMessage("Hauptmanager", "Eintrag userenergyprov: ".$user ." ". $manager); - IPS_LogMessage("Hauptmanager", "Eintrag userenergyprov: ".print_r($userEnergyProv)); - IPS_LogMessage("Hauptmanager", "Eintrag entry: ".print_r($entry)); + $aktleistung = array_filter($userEnergyProv["user"], function($entry2) use ($user, $manager) { return $entry2["user"] == $user && $entry2["Writeback"] == $manager; diff --git a/library.json b/library.json index a2dc0df..d702628 100644 --- a/library.json +++ b/library.json @@ -6,7 +6,7 @@ "compatibility": { "version": "7.1" }, - "version": "1.183", + "version": "1.184", "build": 0, "date": 0 } \ No newline at end of file