【发布时间】:2021-07-02 03:59:37
【问题描述】:
我正在尝试在我的应用中制作优惠券系统。 当用户在文本字段中键入时,它应该寻找与文本匹配的优惠券。 我已经设法检索到正确的文档,但我不知道如何从购物车的小计中减去文档字段值“percentOff”。 这是一些代码:
我获取文档的代码:
func textFieldDidEndEditing(_ textField: UITextField) {
if textField == couponTxt {
let collectionRef = db.collection("coupons")
collectionRef.whereField("name", isEqualTo: couponTxt.text!).getDocuments { (snapshot, err) in
if let err = err {
print("Error getting document: \(err)")
} else {
for document in (snapshot?.documents)! {
if document == document {
let data = document.data()
let couponData = Coupon.init(data: data)
print(document.documentID)
}
}
}
}
}
}
这是我获取优惠券数据的模型:
init(data: [String: Any]) {
self.name = data["name"] as? String ?? ""
self.id = data["id"] as? String ?? ""
self.percentOff = data["percentOff"] as? Double ?? 0.0
self.kronerOff = data["kronerOff"] as? Double ?? 0.0
self.usageLeft = data["usageLeft"] as? Int ?? 0
}
来自我的 PaymentCart 类的代码 - 小计:
var subtotal: Int {
var amount = 0
for item in cartItem {
let priceOere = Int(item.price * 100)
amount += priceOere
}
return amount
}
所以我的问题是 - 现在我可以获得正确的文档,如何从 percentOff 中获取值并减去我当前的小计。 谢谢!
【问题讨论】:
标签: ios swift xcode google-cloud-firestore uitextfield