Closed WZYCX closed 1 year ago
SOLVED: Button action: ' let db = Firestore.firestore() var currentItem: [Item] = []
for i in Order.items{ //recalculates item stock quantities
for item in allitems.all{
if item.name == i.key{
currentItem.append(item)
}
}
let doc = db.collection("Items").document(currentItem[0].id)
doc.updateData([
"Stock": String(Int(currentItem[0].stock)! + Int(i.value)!)
]) { err in
if let err = err {
print("Error updating document: \(err)")
} else {
print("'Stock' in 'Items' successfully added back")
}
}
}
// update spent
let i = users.mainUser[0]
let doc = db.collection("Users").document(i.id)
doc.updateData([
"Spent": String(Double(i.spent)! - Double(Order.totalCost)!)
]) { err in
if let err = err {
print("Error updating document: \(err)")
} else {
print("'Spent' in 'Users' successfully restored")
}
}
// remove order from Firebase
db.collection("Orders").document(Order.id).delete() { err in
if let err = err {
print("Error removing document: \(err)")
} else {
print("Order successfully removed!")
}
}
'
When cancelling an order, it is removed from the orders but the stock and spend is not incremented back to its original value.