import mysql.connector from dotenv import load_dotenv import os load_dotenv() def connect_to_mysql(): return mysql.connector.connect( host=os.getenv("DB_HOST"), user=os.getenv("DB_USER"), password=os.getenv("DB_PASS"), database=os.getenv("DB_NAME") ) def get_latest_chaufferie(): conn = connect_to_mysql() cursor = conn.cursor(dictionary=True) query = """ SELECT Sonde, Temperature, Date, Topic FROM Sondes.Chaufferie WHERE Date >= NOW() - INTERVAL 5 MINUTE ORDER BY Date DESC """ cursor.execute(query) result = cursor.fetchall() cursor.close() conn.close() return result def get_history_by_sonde(sonde): conn = connect_to_mysql() cursor = conn.cursor(dictionary=True) query = """ SELECT Sonde, Temperature, Date FROM Sondes.Chaufferie WHERE Sonde = %s AND Date >= NOW() - INTERVAL 1 DAY """ cursor.execute(query, (sonde,)) result = cursor.fetchall() cursor.close() conn.close() return result def lire_alertes_sondes(): conn = connect_to_mysql() cursor = conn.cursor(dictionary=True) query = """ SELECT Id, Sonde, Debut_defaut, Etat FROM Sondes.Alertes_Chaufferie WHERE Etat != 'Acquitté' ORDER BY Debut_defaut DESC """ cursor.execute(query) result = cursor.fetchall() cursor.close() conn.close() return result def acquitter_alerte(id_alerte): conn = connect_to_mysql() cursor = conn.cursor() query = "UPDATE Sondes.Alertes_Chaufferie SET Etat = 'Acquitté' WHERE Id = %s" cursor.execute(query, (id_alerte,)) conn.commit() cursor.close() conn.close()