using InnovEnergy.App.Backend.DataTypes; namespace InnovEnergy.App.Backend.Database; public static partial class Db { //We can execute the updates manually for each table, but we prefer the abstract way using Connection.Update method //We pass an object as an argument and the Connection will connect this object with the corresponding table. //The update is being done based on the primary id of the object. private static Boolean Update(Object obj) { var success = Connection.Update(obj) > 0; if(success) Backup(); return success; } public static Boolean Update(Folder folder) { return Update(obj: folder); } public static Boolean Update(Error error) { return Update(obj: error); } public static Boolean Update(Warning warning) { return Update(obj: warning); } public static Boolean Update(Installation installation) { return Update(obj: installation); } public static Boolean Update(User user) { var originalUser = GetUserById(user.Id); if (originalUser is null) return false; // these columns must not be modified! user.ParentId = originalUser.ParentId; user.Name = originalUser.Name; return Update(obj: user); } public static void UpdateAction(UserAction updatedAction) { var existingAction = UserActions.FirstOrDefault(action => action.Id == updatedAction.Id); if (existingAction != null) { Update(updatedAction); } } }