root / GES_PAC / Model / Serie.cs @ 1019554c
Historique | Voir | Annoter | Télécharger (1,872 ko)
1 | 65ad7e66 | Lucas Bihannic | |
---|---|---|---|
2 | namespace GES_PAC.Model |
||
3 | { |
||
4 | public class Serie |
||
5 | { |
||
6 | ba296a27 | lbihannic | #region Propriétés |
7 | 65ad7e66 | Lucas Bihannic | public long Id { get; set; } |
8 | public DateTime Time { get; set; } |
||
9 | public DateTime MiseAJeun { get; set; } |
||
10 | public double Temperature { get; set; } |
||
11 | public double Humidite { get; set; } |
||
12 | public double Pression { get; set; } |
||
13 | 1019554c | lbihannic | public List<SerieAnimal> SeriesAnimales { get; set; } = []; |
14 | ba296a27 | lbihannic | #endregion |
15 | 09d4a0de | lbihannic | |
16 | ba296a27 | lbihannic | #region Constructeurs |
17 | 09d4a0de | lbihannic | public Serie(DateTime Time, DateTime MiseAJeun, double Temperature, double Humidite, double Pression) |
18 | { |
||
19 | this.Time = Time; |
||
20 | this.MiseAJeun = MiseAJeun; |
||
21 | this.Temperature = Temperature; |
||
22 | this.Humidite = Humidite; |
||
23 | this.Pression = Pression; |
||
24 | SeriesAnimales = []; |
||
25 | } |
||
26 | ba296a27 | lbihannic | #endregion |
27 | |||
28 | #region Méthodes |
||
29 | public void AddSerieAnimal(SerieAnimal serieAnimal) |
||
30 | { |
||
31 | 1019554c | lbihannic | var existing = SeriesAnimales.FirstOrDefault(s => s.NumeroBoite == serieAnimal.NumeroBoite); |
32 | if (existing != null) |
||
33 | SeriesAnimales.Remove(existing); |
||
34 | ba296a27 | lbihannic | SeriesAnimales.Add(serieAnimal); |
35 | } |
||
36 | fff89fc5 | lbihannic | |
37 | public Dictionary<int, int> GetMeasureNumber() |
||
38 | { |
||
39 | return SeriesAnimales.ToDictionary(sa => sa.NumeroBoite, sa => sa.GetMeasureCount()); |
||
40 | } |
||
41 | |||
42 | 1019554c | lbihannic | public Mesure? GetLastMeasureByNumeroBoite(int numeroBoite) |
43 | { |
||
44 | var serieAnimal = SeriesAnimales.FirstOrDefault(sa => sa.NumeroBoite == numeroBoite); |
||
45 | if (serieAnimal == null || !serieAnimal.Mesures.Any()) |
||
46 | return null; |
||
47 | return serieAnimal.GetLastMeasure(); |
||
48 | } |
||
49 | |||
50 | fff89fc5 | lbihannic | internal void AddMeasure(Mesure newMeasure, int numBoite) |
51 | { |
||
52 | SeriesAnimales.Select(sa => sa).Where(sa => sa.NumeroBoite == numBoite).First().AddMeasure(newMeasure); |
||
53 | } |
||
54 | ba296a27 | lbihannic | #endregion |
55 | 65ad7e66 | Lucas Bihannic | } |
56 | } |