fix average duration var

This commit is contained in:
Romulus21
2024-08-19 22:11:09 +02:00
parent f01ab3aa6f
commit 44956a2657

View File

@@ -89,12 +89,13 @@ fn aggregate_values(conn: &mut PooledConn, date: NaiveDate) -> Result<(), Box<dy
Sensor::new("maison".to_string(), "bureau".to_string(), "tvoc".to_string()) Sensor::new("maison".to_string(), "bureau".to_string(), "tvoc".to_string())
]; ];
let average_duration = 15;
for sensor in &sensors { for sensor in &sensors {
let mut current_time = start_time; let mut current_time = start_time;
while current_time <= end_time { while current_time <= end_time {
let start_time_loop = current_time.to_string(); let start_time_loop = current_time.to_string();
let end_time_loop = (current_time + Duration::minutes(29) + Duration::seconds(59)).to_string(); let end_time_loop = (current_time + Duration::minutes(average_duration - 1) + Duration::seconds(59)).to_string();
let query = format!("SELECT * FROM donnees WHERE service = '{}' AND capteur = '{}' AND type = '{}' AND (date_donnee BETWEEN '{}' AND '{}');", sensor.service, sensor.capteur, sensor.type_donnee, start_time_loop, end_time_loop); let query = format!("SELECT * FROM donnees WHERE service = '{}' AND capteur = '{}' AND type = '{}' AND (date_donnee BETWEEN '{}' AND '{}');", sensor.service, sensor.capteur, sensor.type_donnee, start_time_loop, end_time_loop);
let selected_rows: Vec<Row> = conn.query(query)?; let selected_rows: Vec<Row> = conn.query(query)?;
@@ -127,7 +128,7 @@ fn aggregate_values(conn: &mut PooledConn, date: NaiveDate) -> Result<(), Box<dy
let query = "DELETE FROM donnees WHERE id IN (".to_owned() + &*ids.join(", ") + ");"; let query = "DELETE FROM donnees WHERE id IN (".to_owned() + &*ids.join(", ") + ");";
let _: Vec<Row> = conn.query(query)?; let _: Vec<Row> = conn.query(query)?;
} }
current_time = current_time + Duration::minutes(15); current_time = current_time + Duration::minutes(average_duration);
} }
} }