import Foundation import GeneralUtils class ShootItem: Equatable, Mappable { var id: Int? var name: String? var willShoot: Int? var signboard: Int? var imgs: [ImgObj]? var date: Double? var note: String? var dateStr: String? init(id: Int? = nil, name: String? = nil, willShoot: Int? = nil) { self.id = id self.name = name self.willShoot = willShoot; } func addImg(img: ImgObj) { if imgs == nil { imgs = [ImgObj]() } imgs?.append(img) } func toDic() -> [String: Any] { var willShoot = (self.willShoot == nil) ? 0 : 1 var params: [String: Any] = ["name": name!, "willShoot": willShoot]; if let id = self.id { params["id"] = id; } return params; } // region: ========== Mappable init() {} required init?(map: Map) {} func mapping(map: Map) { id <- map["id"] name <- map["name"] willShoot <- map["willShoot"] imgs <- map["imgs"] dateStr <- map["date"] if let dateStr = dateStr { date = Double(dateStr); } note <- map["note"] } //endregion } func ==(lhs: ShootItem, rhs: ShootItem) -> Bool { if let lhsName = lhs.name, let rhsName = rhs.name { return lhsName == rhsName } return ObjectIdentifier(lhs) == ObjectIdentifier(rhs) }