root / GES_PAC / Model / SerieAnimal.cs @ 42456640
Historique | Voir | Annoter | Télécharger (1,778 ko)
1 | 65ad7e66 | Lucas Bihannic | |
---|---|---|---|
2 | 9fd69a0e | lbihannic | using Microsoft.Maui.Layouts; |
3 | |||
4 | 65ad7e66 | Lucas Bihannic | namespace GES_PAC.Model |
5 | { |
||
6 | public class SerieAnimal |
||
7 | { |
||
8 | public long Id { get; set; } |
||
9 | public int NumeroBoite { get; set; } |
||
10 | public double Poids { get; set; } |
||
11 | ba296a27 | lbihannic | public DateTime DatePesee { get; set; } |
12 | 65ad7e66 | Lucas Bihannic | public string RFID { get; set; } |
13 | public List<Mesure> Mesures { get; set; } |
||
14 | public List<Comportement> Comportements { get; set; } |
||
15 | 9fd69a0e | lbihannic | public bool IsOut { get; set; } = false; |
16 | ba296a27 | lbihannic | |
17 | public SerieAnimal(int numeroBoite, double poids, DateTime datePesee, string rFID) |
||
18 | { |
||
19 | NumeroBoite = numeroBoite; |
||
20 | Poids = poids; |
||
21 | DatePesee = datePesee; |
||
22 | RFID = rFID; |
||
23 | Mesures = []; |
||
24 | Comportements = []; |
||
25 | } |
||
26 | fff89fc5 | lbihannic | |
27 | public int GetMeasureCount() |
||
28 | { |
||
29 | return Mesures.Count(); |
||
30 | } |
||
31 | |||
32 | internal void AddMeasure(Mesure newMeasure) |
||
33 | { |
||
34 | Mesures.Add(newMeasure); |
||
35 | } |
||
36 | 1019554c | lbihannic | |
37 | public Mesure GetLastMeasure() |
||
38 | { |
||
39 | return Mesures.Last(); |
||
40 | } |
||
41 | e837cdf1 | lbihannic | public Mesure GetFirstMeasure() |
42 | { |
||
43 | return Mesures.First(); |
||
44 | } |
||
45 | 9fd69a0e | lbihannic | |
46 | public void AddBehaviour(Comportement newBehaviour) |
||
47 | { |
||
48 | Comportements.Add(newBehaviour); |
||
49 | } |
||
50 | |||
51 | public bool HasBehaviour() |
||
52 | { |
||
53 | e837cdf1 | lbihannic | return Comportements.Count != 0; |
54 | } |
||
55 | public string GetTimeInChamber() |
||
56 | { |
||
57 | if (Mesures.Count == 0) |
||
58 | return ""; |
||
59 | |||
60 | TimeSpan timeInChamber; |
||
61 | if (IsOut) |
||
62 | timeInChamber = GetLastMeasure().Time - GetFirstMeasure().Time; |
||
63 | else |
||
64 | timeInChamber = DateTime.Now - GetFirstMeasure().Time; |
||
65 | |||
66 | return $"{timeInChamber.Hours:00}:{timeInChamber.Minutes:00}"; |
||
67 | 9fd69a0e | lbihannic | } |
68 | 65ad7e66 | Lucas Bihannic | } |
69 | } |