AutoCat/AutoCat/Models/Filter.swift
Selim Mustafaev 7e0608b52e New filters
2020-09-26 22:34:14 +03:00

51 lines
1.3 KiB
Swift

import Foundation
struct Filter {
var searchString = ""
var brand: String?
var model: String?
var color: String?
var regions: [Int]?
var addedBy: AddedBy?
var fromDate: Date?
var toDate: Date?
mutating func clear() {
self.brand = nil
self.model = nil
self.color = nil
self.regions = nil
self.addedBy = nil
self.fromDate = nil
self.toDate = nil
}
func queryDictionary() -> [String: String] {
var dict: [String: String] = ["query": self.searchString]
if let brand = self.brand {
dict["brand"] = brand
}
if let model = self.model {
dict["model"] = model
}
if let color = self.color {
dict["color"] = color
}
if let regions = self.regions {
dict["regions"] = regions.map(String.init).joined(separator: ",")
}
if let addedBy = self.addedBy {
dict["addedBy"] = addedBy.rawValue
}
if let fromDate = self.fromDate {
dict["fromDate"] = String(fromDate.timeIntervalSince1970)
}
if let toDate = self.toDate {
dict["toDate"] = String(toDate.timeIntervalSince1970)
}
return dict
}
}