// /pages/api/talas5/webserviceMap/gisStationsMeasurementsSQL.js import getPool from "../../../../utils/mysqlPool"; // Singleton-Pool importieren export default function handler(req, res) { const pool = getPool(); // Singleton-Pool verwenden const idMap = req.query.idMap; if (req.method !== "GET") { return res.status(405).json({ error: "Nur GET Methode erlaubt" }); } const sqlQuery = ` 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 = ? 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 `; pool.query(sqlQuery, [idMap], (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); }); }