// services/fetchAnalogInputsHistoryService.ts export async function fetchAnalogInputsHistoryService(): Promise< Record > { const today = new Date(); const yesterday = new Date(today); yesterday.setDate(today.getDate() - 1); const formatDate = (date: Date) => `${date.getFullYear()};${String(date.getMonth() + 1).padStart( 2, "0" )};${String(date.getDate()).padStart(2, "0")}`; const fromDate = formatDate(yesterday); const toDate = formatDate(today); const result: Record = {}; const isDev = process.env.NODE_ENV === "development"; for (let i = 0; i < 8; i++) { const inputNumber = i + 1; // 1–8 const sourceId = 99 + inputNumber; // 100–107 für AE1–AE8 try { let data: any[]; if (isDev) { // ⬇️ Lädt lokale Mock-Dateien (z. B. /api/cpl/fetchAnalogInputsHistory) const response = await fetch( `/apiMockData/analogInputsHistoryData/analogInput${inputNumber}.json` ); if (!response.ok) throw new Error("Mock-Daten nicht verfügbar"); data = await response.json(); } else { // ⬇️ Holt Live-Daten über CPL-HTTP-Endpunkt const url = `${window.location.origin}/CPL?Service/empty.acp&DIA0=${fromDate};${toDate};${sourceId};1`; const response = await fetch(url); if (!response.ok) throw new Error(`Fehler bei AE${inputNumber}: ${response.status}`); data = await response.json(); } result[sourceId] = data; } catch (error) { console.error(`❌ Fehler beim Laden von AE${inputNumber}:`, error); result[sourceId] = []; } } return result; }