示例#1
0
 public static void GetServicesFromAllResponsibles(Delegates.GetAllServicesProvided success)
 {
     success += (mresponsibles) => responsibles = mresponsibles;
     FireBaseManager.GetFireBaseInstance().UpdateServicesFromAllResponsibles(responsibles, success, delegate(string error) {
         Debug.LogError("Erro ao pegar os servicos: " + error);
     });
 }
示例#2
0
 void GetAllServices()
 {
     Delegates.GetAllServicesProvided getAllResponsiblesWithServices = CallbackGetAllServices;
     DataManager.GetServicesFromAllResponsibles(getAllResponsiblesWithServices);
 }
示例#3
0
    public void UpdateServicesFromAllResponsibles(List <ResponsibleModel> responsibles, Delegates.GetAllServicesProvided success, Delegates.GeneralListenerFail fail)
    {
        int count = 0;
        List <ResponsibleModel> responsiblesWithServices = responsibles;

        foreach (var responsible in responsibles)
        {
            FirebaseDatabase.DefaultInstance.GetReference(DBTable.Responsible.ToString()).Child(responsible.userID).Child(Parameters.servicesProvided.ToString())
            .GetValueAsync().ContinueWith(task => {
                if (task.IsFaulted)
                {
                    fail(task.Exception.ToString());
                }
                else if (task.IsCompleted)
                {
                    DataSnapshot snapshot = task.Result;
                    List <ServicesProvidedModel> services = new List <ServicesProvidedModel> ();
                    foreach (var service in snapshot.Children)
                    {
                        string json = service.GetRawJsonValue();
                        ServicesProvidedModel mservice = JsonUtility.FromJson <ServicesProvidedModel> (json);
                        services.Add(mservice);
                    }
                    responsiblesWithServices [count].servicesProvided = services.ToDictionary(x => x.serviceID, x => (object)x);
                    count++;
                    if (count >= responsibles.Count)
                    {
                        success(responsiblesWithServices);
                    }
                }
            });
        }
    }