no message
This commit is contained in:
@@ -307,10 +307,25 @@ private function AddMeterToPDFRow($meter, $tariffs, $from, $to, $type)
|
||||
}
|
||||
|
||||
// 2️⃣ Zeitstempel konvertieren und sortieren
|
||||
foreach ($filteredTariffs as &$t) {
|
||||
foreach ($filteredTariffs as &$t) {// --- Fix: falls Start/End als verschachteltes JSON vorliegen ---
|
||||
if (is_string($t['start']) && str_starts_with(trim($t['start']), '{')) {
|
||||
$startObj = json_decode($t['start'], true);
|
||||
if (is_array($startObj)) {
|
||||
$t['start'] = sprintf('%04d-%02d-%02d 00:00:00', $startObj['year'], $startObj['month'], $startObj['day']);
|
||||
}
|
||||
}
|
||||
if (is_string($t['end']) && str_starts_with(trim($t['end']), '{')) {
|
||||
$endObj = json_decode($t['end'], true);
|
||||
if (is_array($endObj)) {
|
||||
$t['end'] = sprintf('%04d-%02d-%02d 23:59:59', $endObj['year'], $endObj['month'], $endObj['day']);
|
||||
}
|
||||
}
|
||||
|
||||
// --- danach wie bisher ---
|
||||
$t['start_ts'] = is_numeric($t['start']) ? intval($t['start']) : strtotime($t['start']);
|
||||
$t['end_ts'] = is_numeric($t['end']) ? intval($t['end']) : strtotime($t['end']);
|
||||
|
||||
|
||||
if (!$t['start_ts'] || !$t['end_ts']) {
|
||||
IPS_LogMessage('Abrechnung', "⚠ Ungültiger Tarifzeitraum in Tarifdefinition: " . json_encode($t));
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user