TempTargetStored+Helper.swift 884 B

123456789101112131415161718192021222324252627282930
  1. import CoreData
  2. import Foundation
  3. extension NSPredicate {
  4. static var allTempTargetPresets: NSPredicate {
  5. NSPredicate(format: "isPreset == %@", true as NSNumber)
  6. }
  7. static var lastActiveTempTarget: NSPredicate {
  8. let date = Date.oneDayAgo
  9. return NSPredicate(
  10. format: "date >= %@ AND enabled == %@",
  11. date as NSDate,
  12. true as NSNumber
  13. )
  14. }
  15. }
  16. extension TempTargetStored {
  17. static func fetch(_ predicate: NSPredicate, ascending: Bool, fetchLimit: Int? = nil) -> NSFetchRequest<TempTargetStored> {
  18. let request = TempTargetStored.fetchRequest()
  19. request.sortDescriptors = [NSSortDescriptor(key: "date", ascending: ascending)]
  20. request.predicate = predicate
  21. if let fetchLimit = fetchLimit {
  22. request.fetchLimit = fetchLimit
  23. }
  24. return request
  25. }
  26. }