import mysql from "mysql"; const dbConfig = { host: process.env.DB_HOST, user: process.env.DB_USER, password: process.env.DB_PASSWORD, database: process.env.DB_NAME, port: process.env.DB_PORT, }; const connection = mysql.createConnection(dbConfig); connection.connect((err) => { if (err) { console.error("Fehler beim Verbinden:", err.stack); return; } console.log("Database connected successfully."); }); export default function handler(req, res) { const idMap = req.query.idMap; if (req.method !== "GET") { return res.status(405).json({ error: "Nur GET Methode erlaubt" }); } connection.query(` SELECT ld.idLD, dp.idDP, dp.name AS Na, dp.value AS Val, dp.unit AS Unit, mg.name AS Gr, ld.idLocation, area.Name AS Area_Name FROM location_device as ld LEFT JOIN location_coordinates AS co ON ld.idLocation = co.idLocation and co.idMaps = ${idMap} LEFT JOIN devices AS de ON de.idDevice = ld.idDevice LEFT JOIN datapoint AS dp ON ld.idLD = dp.idLD LEFT JOIN message_group AS mg ON dp.idmessage_group = mg.idmessage_group LEFT JOIN location AS loc ON ld.idLocation = loc.idLocation LEFT JOIN area AS area ON loc.idArea = area.idArea WHERE co.X > 0 AND dp.idmessage_group>0 AND length(dp.unit)> 0 AND length(dp.value)> 0 `, (error, results) => { if (error) { console.error("Fehler beim Abrufen der gis_lines:", error); return res .status(500) .json({ error: "Fehler beim Abrufen der gis_lines" }); } const response = { "Name": "Liste aller Messungen der Geraete", "Zeitstempel": new Date().toISOString(), "IdMap":idMap, "Statis": results.map((row) => ({ IdLD: row.idLD, IdDP: row.idDP, Na: row.Na, Val: row.Val, Unit: row.Unit, Gr: row.Gr, IdLocation: row.IdLocation, Area_Name: row.Area_Name, })), }; res.json(response); }); }