// // Account.swift // SHECommunity // // Created by 林 on 2024/11/27. // import Foundation import SwiftyUserDefaults import ObjectMapper extension DefaultsKeys { var userConfig: DefaultsKey { .init("UserConfig") } var loginToken: DefaultsKey { .init("LoginToken") } var searchHistory: DefaultsKey<[String: [String]]?> { .init("searchHistory") } var locationHistory: DefaultsKey<[String: [[String: Any]]]?> { .init("locationHistory") } var searchShopHistory: DefaultsKey<[String]> { .init("searchShopHistory", defaultValue: []) } var searchOrderHistory: DefaultsKey<[String]> { .init("searchOrderHistory", defaultValue: []) } } struct Account: Mappable { var token: String? var phone: String? var name: String? init?(map: Map) { } init(token: String, phone: String, name: String) { self.token = token self.phone = phone self.name = name } mutating func mapping(map: Map) { token <- map["sn"] phone <- map["phone"] name <- map["name"] } } struct LocationHistoryModel: Mappable { var latitude: CGFloat? var longitude: CGFloat? var placemark: String? init(latitude: CGFloat, longitude: CGFloat, placemark: String) { self.latitude = latitude self.longitude = longitude self.placemark = placemark } init?(map: Map) { } mutating func mapping(map: Map) { latitude <- map["latitude"] longitude <- map["longitude"] placemark <- map["placemark"] } }