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_PASSWORD"), 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 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 Chaufferie WHERE Sonde = %s AND Date >= NOW() - INTERVAL 1 DAY ORDER BY Date ASC """ 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 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 Alertes_Chaufferie SET Etat = 'Acquitté' WHERE Id = %s" cursor.execute(query, (id_alerte,)) conn.commit() cursor.close() conn.close()