Рейтинг запросов к базе данных Firebase для нескольких пользователей и Foods - PullRequest
0 голосов
/ 23 апреля 2019

У меня проблема с написанием правильного рейтингового запроса для нескольких пользователей и нескольких приложений для Android.

Это данные Firebase в форме json:

"Rating" : {
  "1234555" : {
    "14" : {
      "comment" : "KKK",
      "foodId" : "14",
      "rateValue" : "4",
      "userPhone" : "1234555"
    }
  }
}

"1234555" - это UserID, а "14" - это FoodId

private void getRatingFood(String foodId) {
   Query foodRating=Ratings.child(foodId).orderByChild("foodId").equalTo(foodId);

    foodRating.addValueEventListener(new ValueEventListener() {
        int count=0,sum=0;
        @Override
        public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
            for(DataSnapshot postSnapShot:dataSnapshot.getChildren()){
                Rating item=postSnapShot.getValue(Rating.class);
              sum+=Integer.parseInt(item.getRateValue());
              count++;

            }

            if(count!=0){
                float avg=sum/count;
                ratingBar.setRating(avg);
            }
    }

        @Override
        public void onCancelled(@NonNull DatabaseError databaseError) {

        }
    });
}

Я думаю, что мой запросоператор неверен, потому что не может получить доступ к внутренним атрибутам.

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