mirror of
				https://github.com/Djeeberjr/fw-anwesenheit.git
				synced 2025-11-03 23:24:10 +00:00 
			
		
		
		
	added serde for serializing in the webserver
This commit is contained in:
		
							parent
							
								
									fabb14de86
								
							
						
					
					
						commit
						21480cef4f
					
				
							
								
								
									
										1
									
								
								Cargo.lock
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										1
									
								
								Cargo.lock
									
									
									
										generated
									
									
									
								
							@ -1062,6 +1062,7 @@ dependencies = [
 | 
			
		||||
 "heapless",
 | 
			
		||||
 "log",
 | 
			
		||||
 "picoserve",
 | 
			
		||||
 "serde",
 | 
			
		||||
 "smart-leds",
 | 
			
		||||
 "smoltcp",
 | 
			
		||||
 "static_cell",
 | 
			
		||||
 | 
			
		||||
@ -60,15 +60,13 @@ edge-nal = "0.5.0"
 | 
			
		||||
edge-nal-embassy = { version = "0.6.0", features = ["log"] }
 | 
			
		||||
picoserve = { version = "0.16.0", features = ["embassy", "log"] }
 | 
			
		||||
embassy-sync = { version = "0.7.0", features = ["log"] }
 | 
			
		||||
 | 
			
		||||
ds3231 = { version = "0.3.0", features = ["async", "temperature_f32"] }
 | 
			
		||||
chrono = { version = "0.4.41", default-features = false } 
 | 
			
		||||
dir-embed = "0.3.0"
 | 
			
		||||
embedded-sdmmc-dev = "0.8.2"
 | 
			
		||||
 | 
			
		||||
esp-hal-smartled = { git = "https://github.com/esp-rs/esp-hal-community.git", package = "esp-hal-smartled", branch = "main", features = ["esp32c6"]}
 | 
			
		||||
smart-leds = "0.4.0"
 | 
			
		||||
 | 
			
		||||
serde = { version = "1.0.219", default-features = false, features = ["derive", "alloc"] }
 | 
			
		||||
 | 
			
		||||
[profile.dev]
 | 
			
		||||
# Rust debug is too slow.
 | 
			
		||||
 | 
			
		||||
@ -17,6 +17,8 @@ use static_cell::make_static;
 | 
			
		||||
 | 
			
		||||
use crate::{store::TallyID, webserver::start_webserver};
 | 
			
		||||
 | 
			
		||||
extern crate alloc;
 | 
			
		||||
 | 
			
		||||
mod drivers;
 | 
			
		||||
mod feedback;
 | 
			
		||||
mod init;
 | 
			
		||||
 | 
			
		||||
@ -1,14 +1,15 @@
 | 
			
		||||
extern crate alloc;
 | 
			
		||||
 | 
			
		||||
use super::TallyID;
 | 
			
		||||
use alloc::collections::BTreeMap;
 | 
			
		||||
use alloc::string::String;
 | 
			
		||||
use serde::Serialize;
 | 
			
		||||
 | 
			
		||||
#[derive(Clone, Serialize)]
 | 
			
		||||
pub struct Name {
 | 
			
		||||
    pub first: String,
 | 
			
		||||
    pub last: String,
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#[derive(Clone, Serialize)]
 | 
			
		||||
pub struct IDMapping {
 | 
			
		||||
    id_map: BTreeMap<TallyID, Name>,
 | 
			
		||||
}
 | 
			
		||||
@ -28,4 +29,3 @@ impl IDMapping {
 | 
			
		||||
        self.id_map.insert(id, name);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1,11 +1,10 @@
 | 
			
		||||
extern crate alloc;
 | 
			
		||||
 | 
			
		||||
use super::Date;
 | 
			
		||||
use super::IDMapping;
 | 
			
		||||
use super::TallyID;
 | 
			
		||||
use alloc::collections::BTreeMap;
 | 
			
		||||
use alloc::vec::Vec;
 | 
			
		||||
 | 
			
		||||
#[derive(Clone)]
 | 
			
		||||
pub struct AttendanceDay {
 | 
			
		||||
    date: Date,
 | 
			
		||||
    ids: Vec<TallyID>,
 | 
			
		||||
@ -30,9 +29,10 @@ impl AttendanceDay {
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#[derive(Clone)]
 | 
			
		||||
pub struct IDStore {
 | 
			
		||||
    days: BTreeMap<Date, AttendanceDay>,
 | 
			
		||||
    mapping: IDMapping,
 | 
			
		||||
    pub days: BTreeMap<Date, AttendanceDay>,
 | 
			
		||||
    pub mapping: IDMapping,
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
impl IDStore {
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user