bookingDeleteV2 function

Future<String?> bookingDeleteV2(
  1. OrderDataCache item
)

Implementation

Future<String?> bookingDeleteV2(OrderDataCache item) async {
  if (currentOrder.id == item.id)
    currentOrder = OrderData.createEmpty();
  var t = currentOrder;
  var ret = await bookingGetItem(item);
  var _loadedOrder = currentOrder;
  currentOrder = t;
  if (ret != null)
    return ret;
  try{
    await FirebaseFirestore.instance.collection("booking").doc(_loadedOrder.id).set({
      "delete": true,
      "timeModify": DateTime.now().toUtc(),
    });
    await FirebaseFirestore.instance.collection("settings").doc("main")
        .set({"booking_count": FieldValue.increment(-1)}, SetOptions(merge:true));
    _loadedOrder.delete = true;
    await bookingSaveInCache(_loadedOrder);
  }catch(ex){
    return "bookingDelete " + ex.toString();
  }
  return null;
}