DailyStats.swift 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. import Foundation
  2. struct DailyStats: JSON, Equatable {
  3. var createdAt: Date
  4. var FAX_Build_Version: String
  5. var FAX_Build_Number: String
  6. var FAX_Branch: String
  7. var FAX_Build_Date: Date
  8. var Algorithm: String
  9. var AdjustmentFactor: Decimal
  10. var Pump: String
  11. var CGM: String
  12. var insulinType: String
  13. var peakActivityTime: Decimal
  14. var TDD: Decimal
  15. var Carbs_24h: Decimal
  16. var TIR: String
  17. var BG_Average: String
  18. var HbA1c: String
  19. init(
  20. createdAt: Date,
  21. FAX_Build_Version: String,
  22. FAX_Build_Number: String,
  23. FAX_Branch: String,
  24. FAX_Build_Date: Date,
  25. Algorithm: String,
  26. AdjustmentFactor: Decimal,
  27. Pump: String,
  28. CGM: String,
  29. insulinType: String,
  30. peakActivityTime: Decimal,
  31. TDD: Decimal,
  32. Carbs_24h: Decimal,
  33. TIR: String,
  34. BG_Average: String,
  35. HbA1c: String
  36. ) {
  37. self.createdAt = createdAt
  38. self.FAX_Build_Version = FAX_Build_Version
  39. self.FAX_Build_Number = FAX_Build_Number
  40. self.FAX_Branch = FAX_Branch
  41. self.FAX_Build_Date = FAX_Build_Date
  42. self.Algorithm = Algorithm
  43. self.AdjustmentFactor = AdjustmentFactor
  44. self.Pump = Pump
  45. self.CGM = CGM
  46. self.insulinType = insulinType
  47. self.peakActivityTime = peakActivityTime
  48. self.TDD = TDD
  49. self.Carbs_24h = Carbs_24h
  50. self.TIR = TIR
  51. self.BG_Average = BG_Average
  52. self.HbA1c = HbA1c
  53. }
  54. static func == (lhs: DailyStats, rhs: DailyStats) -> Bool {
  55. lhs.createdAt == rhs.createdAt
  56. }
  57. func hash(into hasher: inout Hasher) {
  58. hasher.combine(createdAt)
  59. }
  60. }
  61. extension DailyStats {
  62. private enum CodingKeys: String, CodingKey {
  63. case createdAt
  64. case FAX_Build_Version
  65. case FAX_Build_Number
  66. case FAX_Branch
  67. case FAX_Build_Date
  68. case Algorithm
  69. case AdjustmentFactor
  70. case Pump
  71. case CGM
  72. case insulinType
  73. case peakActivityTime
  74. case TDD
  75. case Carbs_24h
  76. case TIR
  77. case BG_Average
  78. case HbA1c
  79. }
  80. }