initBookings function

Future<String?> initBookings(
  1. String listen,
  2. String userEmail
)

Implementation

Future<String?> initBookings(String listen, String userEmail) async{
  User? user = FirebaseAuth.instance.currentUser;
  if (user == null)
    return "not register";

  String providerId = "";
  if (listen == "providerId")
    providerId = await getProviderId(userEmail);
  if (listen == "customerId")
    providerId = user.uid;

  newBookingCount = 0;
  await _getLocal();
  bool _localLoad = false;
  if (bookings.isEmpty) {
    var ret = await _load(listen, providerId);
    if (ret != null)
      return ret;
  }else
    _localLoad = true;

  bookings.sort((a, b) => b.time.compareTo(a.time));
  bookings.sort((a, b) => b.timeModify.compareTo(a.timeModify));
  if (bookings.isEmpty)
    _last = DateTime.now();
  else
    _last = bookings[0].timeModify; //timeUtc;

  if (!_localLoad)
    _saveLocal(_last);

  // dprint("booking init bookingsCount=${bookings.length}");
  return await _listen(listen, providerId);
}