import { updateValues } from "../../../../store/variablesSlice"; const handleSave = ({ ids, bezeichnungen, isolationsgrenzwerte, verzoegerung, untereSchleifenGrenzwerte, obereSchleifenGrenzwerte, schleifenintervall, originalValues, slot, dispatch, onModulNameChange, onClose, }) => { const changes = {}; // Überprüfen, ob Änderungen gegenüber den Originalwerten vorliegen if (ids[slot] !== originalValues.ids[slot]) { changes.KID = ids[slot]; } if (bezeichnungen[slot] !== originalValues.bezeichnungen[slot]) { changes.KIA = bezeichnungen[slot]; } if ( isolationsgrenzwerte[slot] !== originalValues.isolationsgrenzwerte[slot] ) { changes.KL_ = isolationsgrenzwerte[slot]; } if (verzoegerung[slot] !== originalValues.verzoegerung[slot]) { changes.KD_ = verzoegerung[slot]; } if ( untereSchleifenGrenzwerte[slot] !== originalValues.untereSchleifenGrenzwerte[slot] ) { changes.KR_ = untereSchleifenGrenzwerte[slot]; } if ( obereSchleifenGrenzwerte[slot] !== originalValues.obereSchleifenGrenzwerte[slot] ) { changes.KRO_ = obereSchleifenGrenzwerte[slot]; } if (schleifenintervall[slot] !== originalValues.schleifenintervall[slot]) { changes.KRI = schleifenintervall[slot]; } if (Object.keys(changes).length > 0) { let url = `/cpl?/kabelueberwachung.html&slot=${slot}`; Object.keys(changes).forEach((paramKey) => { url += `&${paramKey}${slot}=${encodeURIComponent(changes[paramKey])}`; }); fetch(url, { method: "GET" }) .then((response) => { if (response.ok) { alert("Daten erfolgreich gespeichert!"); onModulNameChange(ids[slot]); // Aktualisiere Redux-Store mit neuen Werten dispatch( updateValues({ ids: [...ids], bezeichnungen: [...bezeichnungen], isolationsgrenzwerte: [...isolationsgrenzwerte], verzoegerung: [...verzoegerung], untereSchleifenGrenzwerte: [...untereSchleifenGrenzwerte], obereSchleifenGrenzwerte: [...obereSchleifenGrenzwerte], schleifenintervall: [...schleifenintervall], }) ); } else { alert("Fehler beim Speichern der Daten!"); } }) .catch((error) => { console.error("Fehler:", error); //alert("Fehler beim Senden der Daten!"); }); } else { alert("Keine Änderungen vorgenommen."); } onClose(); };