Session.cs 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. using System;
  2. using System.Collections.Generic;
  3. using System.IO;
  4. using System.Linq;
  5. using System.Security.Cryptography.X509Certificates;
  6. using System.Text;
  7. using System.Threading.Tasks;
  8. using Newtonsoft.Json;
  9. namespace FietsLibrary.JSONObjecten
  10. {
  11. [Serializable]
  12. public class Session
  13. {
  14. public int id { get; private set; }
  15. public List<Measurement> measurements { get; private set; }
  16. public bool isActive { get; private set; }
  17. public DateTime date { get; private set; }
  18. public string note { get; private set; }
  19. public Session()
  20. {
  21. if (!(Directory.Exists(@"JSON Files")))
  22. {
  23. Directory.CreateDirectory(@"JSON Files");
  24. }
  25. string[] fileEntries = Directory.GetFiles(@"JSON Files\");
  26. if (fileEntries.Length > 0)
  27. this.id = int.Parse(fileEntries[fileEntries.Length]);
  28. else
  29. this.id = 1;
  30. this.measurements = new List<Measurement>();
  31. this.isActive = true;
  32. this.date = DateTime.Now;
  33. this.note = "";
  34. }
  35. public void AddMeasurement(Measurement m)
  36. {
  37. measurements.Add(m);
  38. }
  39. public Measurement GetLastMeasurement()
  40. {
  41. return measurements.Last();
  42. }
  43. public void PrintAll()
  44. {
  45. Console.WriteLine("pulse" + "\t" + "rpm" + "\t" + "speed" + "\t" + " dist" + "\t" + "req pow" + "\t" + "energy" + "\t" + "time" + "\t\t" + "act pow");
  46. for (int i = 0; i < measurements.Count; i++)
  47. {
  48. Console.WriteLine(measurements[i].pulse + "\t" + measurements[i].rpm + "\t" + measurements[i].speed + "\t " + measurements[i].distance + "\t" + measurements[i].requestedPower + "\t" + measurements[i].energy + "\t" + measurements[i].time + "\t" + measurements[i].actualPower);
  49. }
  50. }
  51. }
  52. }