Получить посещаемость из базы данных Firebase в режиме реального времени - PullRequest
0 голосов
/ 07 января 2019

Ниже моя firebase структура. Я хочу получить посещаемость класса (выберите из spinner) и предмета (выберите из счетчика). Я не хочу получать данные из firebase. То, что я хочу, это количество подарков и отсутствий каждого студента по каждому предмету. Пожалуйста, проверьте изображение, которое я хочу получить.
Я хочу такой результат.

"attendance":{  
"01-01-19":{  
  "BSCS 1st_A":{  
     "c++":{  
        "std1":{  
           "attendance":"absent",
           "id":"std1"
        },
        "std12":{  
           "attendance":"present",
           "id":"std12"
        },
        "std2":{  
           "attendance":"present",
           "id":"std2"
        },
        "std3":{  
           "attendance":"present",
           "id":"std3"
        },
        "std4":{  
           "attendance":"absent",
           "id":"std4"
        }
     },
     "software engineering":{  
        "std1":{  
           "attendance":"present",
           "id":"std1"
        },
        "std12":{  
           "attendance":"present",
           "id":"std12"
        },
        "std2":{  
           "attendance":"present",
           "id":"std2"
        },
        "std3":{  
           "attendance":"absent",
           "id":"std3"
        },
        "std4":{  
           "attendance":"absent",
           "id":"std4"
        }
     }
  }
},
"05-01-19":{  
  "BSCS 1st_A":{  
     "calculus":{  
        "std1":{  
           "attendance":"present",
           "id":"std1"
        },
        "std12":{  
           "attendance":"present",
           "id":"std12"
        },
        "std2":{  
           "attendance":"present",
           "id":"std2"
        },
        "std3":{  
           "attendance":"absent",
           "id":"std3"
        },
        "std4":{  
           "attendance":"present",
           "id":"std4"
        }
     }
  }
}

1 Ответ

0 голосов
/ 07 января 2019

Вы можете запросить базу данных firebase следующим образом:

final DatabaseReference dinosaursRef;
dinosaursRef.child("01-01-19").child("BSCS 1st_A").child("c++").whereEqualTo("attendance", "present")
            .get()
            .addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
                @Override
                public void onComplete(@NonNull Task<QuerySnapshot> task) {
                    if (task.isSuccessful()) {
                        QuerySnapshot querySnapshot = task.getResult();
                        int totalPresent= querySnapshot.size();
                    } else {
                        Log.d(TAG, "Error getting documents: ", task.getException());
                    }
                }
            });

Этот фрагмент кода даст вам число presents в BSCS 1st_A и c++ классе. Вы можете изменить его в соответствии с вашими потребностями, чтобы получить другие presents, absent s и classes.

Надеюсь, это поможет:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...