From ca84ac6bb5e4788ecb81d8ca8ddd9b69b6db5cc0 Mon Sep 17 00:00:00 2001 From: ISA Date: Fri, 11 Jul 2025 11:50:56 +0200 Subject: [PATCH] =?UTF-8?q?feat(api):=20Zeitraum=20und=20Eingang=20als=20P?= =?UTF-8?q?flichtparameter=20f=C3=BCr=20AnalogInputs-API=20eingef=C3=BChrt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - API-Handler für /api/cpl/getAnalogInputsHistory überarbeitet - `zeitraum` (DIA0, DIA1, DIA2) und `eingang` (1–8) sind jetzt Pflichtfelder - Bei fehlenden oder ungültigen Parametern strukturierte Fehlerantwort mit Beispielen - Daten werden nun gezielt pro Eingang und Zeitraum geladen (z. B. AE3 + DIA1) - Bessere Fehlerbehandlung bei nicht vorhandenen Dateien --- .env.development | 2 +- .env.production | 2 +- CHANGELOG.md | 11 +++++++++++ package-lock.json | 4 ++-- package.json | 2 +- pages/api/cpl/getAnalogInputsHandler.ts | 2 -- pages/api/cpl/getDigitalOutputsHandler.ts | 2 -- pages/api/cpl/updateAnalogInputsSettingsHandler.ts | 1 - redux/thunks/getAnalogInputsChartDataThunk.ts | 6 +++--- 9 files changed, 19 insertions(+), 13 deletions(-) diff --git a/.env.development b/.env.development index 689bea5..3aec692 100644 --- a/.env.development +++ b/.env.development @@ -6,6 +6,6 @@ NEXT_PUBLIC_USE_MOCK_BACKEND_LOOP_START=false NEXT_PUBLIC_EXPORT_STATIC=false NEXT_PUBLIC_USE_CGI=false # App-Versionsnummer -NEXT_PUBLIC_APP_VERSION=1.6.593 +NEXT_PUBLIC_APP_VERSION=1.6.594 NEXT_PUBLIC_CPL_MODE=json # json (Entwicklungsumgebung) oder jsSimulatedProd (CPL ->CGI-Interface-Simulator) oder production (CPL-> CGI-Interface Platzhalter) diff --git a/.env.production b/.env.production index e43dea8..2ba69e7 100644 --- a/.env.production +++ b/.env.production @@ -5,5 +5,5 @@ NEXT_PUBLIC_CPL_API_PATH=/CPL NEXT_PUBLIC_EXPORT_STATIC=true NEXT_PUBLIC_USE_CGI=true # App-Versionsnummer -NEXT_PUBLIC_APP_VERSION=1.6.593 +NEXT_PUBLIC_APP_VERSION=1.6.594 NEXT_PUBLIC_CPL_MODE=production \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 6a6be4b..71614f5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,14 @@ +## [1.6.594] – 2025-07-11 + +- feat(api): Zeitraum und Eingang als Pflichtparameter für AnalogInputs-API eingeführt + +- API-Handler für /api/cpl/getAnalogInputsHistory überarbeitet +- `zeitraum` (DIA0, DIA1, DIA2) und `eingang` (1–8) sind jetzt Pflichtfelder +- Bei fehlenden oder ungültigen Parametern strukturierte Fehlerantwort mit Beispielen +- Daten werden nun gezielt pro Eingang und Zeitraum geladen (z. B. AE3 + DIA1) +- Bessere Fehlerbehandlung bei nicht vorhandenen Dateien + +--- ## [1.6.593] – 2025-07-11 - fix: Von/Bis-Datum beim Schließen des DetailModals zurücksetzen diff --git a/package-lock.json b/package-lock.json index d127405..a0e0227 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "cpl-v4", - "version": "1.6.593", + "version": "1.6.594", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "cpl-v4", - "version": "1.6.593", + "version": "1.6.594", "dependencies": { "@fontsource/roboto": "^5.1.0", "@headlessui/react": "^2.2.4", diff --git a/package.json b/package.json index 661ea24..a5b03e6 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "cpl-v4", - "version": "1.6.593", + "version": "1.6.594", "private": true, "scripts": { "dev": "next dev", diff --git a/pages/api/cpl/getAnalogInputsHandler.ts b/pages/api/cpl/getAnalogInputsHandler.ts index 76a364b..eda6613 100644 --- a/pages/api/cpl/getAnalogInputsHandler.ts +++ b/pages/api/cpl/getAnalogInputsHandler.ts @@ -5,8 +5,6 @@ import fs from "fs"; import path from "path"; export default function handler(req: NextApiRequest, res: NextApiResponse) { - const mode = process.env.NEXT_PUBLIC_CPL_MODE; - try { const filePath = path.join( process.cwd(), diff --git a/pages/api/cpl/getDigitalOutputsHandler.ts b/pages/api/cpl/getDigitalOutputsHandler.ts index 469d025..4c53db7 100644 --- a/pages/api/cpl/getDigitalOutputsHandler.ts +++ b/pages/api/cpl/getDigitalOutputsHandler.ts @@ -8,8 +8,6 @@ export default async function handler( req: NextApiRequest, res: NextApiResponse ) { - const mode = process.env.NEXT_PUBLIC_CPL_MODE ?? "json"; - // Lese JSON-Datei z.B. digitalOutputsMockData.json const filePath = path.join( process.cwd(), diff --git a/pages/api/cpl/updateAnalogInputsSettingsHandler.ts b/pages/api/cpl/updateAnalogInputsSettingsHandler.ts index 1d6586a..9e56768 100644 --- a/pages/api/cpl/updateAnalogInputsSettingsHandler.ts +++ b/pages/api/cpl/updateAnalogInputsSettingsHandler.ts @@ -8,7 +8,6 @@ export default function handler(req: NextApiRequest, res: NextApiResponse) { return res.status(405).json({ error: "Method not allowed" }); } - const mode = process.env.NEXT_PUBLIC_CPL_MODE; const updates = req.body.updates; if (!Array.isArray(updates)) { diff --git a/redux/thunks/getAnalogInputsChartDataThunk.ts b/redux/thunks/getAnalogInputsChartDataThunk.ts index 8f9c115..2b31af5 100644 --- a/redux/thunks/getAnalogInputsChartDataThunk.ts +++ b/redux/thunks/getAnalogInputsChartDataThunk.ts @@ -6,15 +6,15 @@ export const getAnalogInputsChartDataThunk = createAsyncThunk( "analogInputsChart/fetchChartData", async (_, { getState }) => { const state = getState() as RootState; - const { zeitraum, vonDatum, bisDatum } = state.analogInputsChart; + //const { zeitraum, vonDatum, bisDatum } = state.analogInputsChart; const selectedInput = state.selectedAnalogInput; if (!selectedInput) return []; - const res = await fetch( + /* const res = await fetch( `/api/cpl/getAnalogInputsHistory?inputId=${selectedInput.id}&zeitraum=${zeitraum}&von=${vonDatum}&bis=${bisDatum}` ); const data = await res.json(); - return data; + return data; */ } );