MealsStored+helper.swift 928 B

123456789101112131415161718192021222324252627
  1. import CoreData
  2. import Foundation
  3. extension NSPredicate {
  4. static var fpusForChart: NSPredicate {
  5. let date = Date.oneDayAgo
  6. return NSPredicate(format: "fat > 0 AND protein > 0 AND isFPU == true AND date >= %@", date as NSDate)
  7. }
  8. static var carbsForChart: NSPredicate {
  9. let date = Date.oneDayAgo
  10. return NSPredicate(format: "carbs > 0 AND isFPU == false AND date >= %@", date as NSDate)
  11. }
  12. }
  13. extension MealsStored {
  14. static func fetch(_ predicate: NSPredicate = .predicateForOneDayAgo) -> NSFetchRequest<MealsStored> {
  15. let request = MealsStored.fetchRequest()
  16. request.sortDescriptors = [NSSortDescriptor(keyPath: \MealsStored.date, ascending: false)]
  17. request.fetchLimit = 100
  18. request.predicate = predicate
  19. // request.propertiesToFetch = ["date", "carbs"]
  20. // request.resultType = .dictionaryResultType
  21. return request
  22. }
  23. }