-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathRecipe+CoreDataProperties.swift
137 lines (108 loc) · 3.19 KB
/
Recipe+CoreDataProperties.swift
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
//
// Recipe+CoreDataProperties.swift
// recookApp
//
// Created by Jessica Wienadi on 31/03/22.
//
//
import Foundation
import CoreData
extension Recipe {
@nonobjc public class func fetchRequest() -> NSFetchRequest<Recipe> {
return NSFetchRequest<Recipe>(entityName: "Recipe")
}
@NSManaged public var category: String?
@NSManaged public var cook_time: Int64
@NSManaged public var image: Data?
@NSManaged public var note: String?
@NSManaged public var prep_time: Int64
@NSManaged public var source: String?
@NSManaged public var title: String?
@NSManaged public var yield: Int64
@NSManaged public var ingredients: NSSet?
@NSManaged public var steps: NSSet?
@NSManaged public var time_added: Date
public var wTitle: String {
title ?? "Unknown Title"
}
public var wSource: String {
source ?? "-"
}
public var wNote: String {
note ?? "-"
}
public var wCategory: String {
category ?? "No Category"
}
public var prepString: String {
timeToString(time: prep_time)
}
public var cookString: String {
timeToString(time: cook_time)
}
public var prepcookString: String {
timeToString(time: prep_time+cook_time)
}
func timeToString(time: Int64) -> String {
let hour = time / 60
let min = time % 60
if hour == 0 {
if min == 0{
// -
return "-"
} else {
// x min
return "\(min) Min"
}
} else {
if min == 0 {
// x h
return"\(hour) H"
} else {
// x h x min
return "\(hour) H \(min) Min"
}
}
}
// public var wImage: Data {
// guard let img = UIImage(named: "default") else { return }
// let data = img.jpegData(compressionQuality: 1)
// image ?? data
// }
public var ingredientArray: [Ingredient] {
let set = ingredients as? Set<Ingredient> ?? []
return set.sorted {
$0.order < $1.order
}
}
public var stepArray: [Step] {
let set = steps as? Set<Step> ?? []
return set.sorted {
$0.order < $1.order
}
}
}
// MARK: Generated accessors for ingredients
extension Recipe {
@objc(addIngredientsObject:)
@NSManaged public func addToIngredients(_ value: Ingredient)
@objc(removeIngredientsObject:)
@NSManaged public func removeFromIngredients(_ value: Ingredient)
@objc(addIngredients:)
@NSManaged public func addToIngredients(_ values: NSSet)
@objc(removeIngredients:)
@NSManaged public func removeFromIngredients(_ values: NSSet)
}
// MARK: Generated accessors for steps
extension Recipe {
@objc(addStepsObject:)
@NSManaged public func addToSteps(_ value: Step)
@objc(removeStepsObject:)
@NSManaged public func removeFromSteps(_ value: Step)
@objc(addSteps:)
@NSManaged public func addToSteps(_ values: NSSet)
@objc(removeSteps:)
@NSManaged public func removeFromSteps(_ values: NSSet)
}
extension Recipe : Identifiable {
}