Я пытаюсь получить конкретное значение из базы данных firebase. Сначала посмотрите на код.Это ссылка на базу данных
DatabaseReference databasedeposit= FirebaseDatabase.getInstance().getReference("Deposit");
totalb.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
databasedeposit.addListenerForSingleValueEvent (new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
abc.clear();
Integer total = 0;
for (DataSnapshot ds : dataSnapshot.getChildren()) {
ADeposit bazar = ds.getValue(ADeposit.class);
Integer cost = Integer.valueOf(bazar.getAmount());
total = total + cost;
abc.add(bazar);
}
Query queryn=databasedeposit.orderByChild("name").equalTo("Rabbani");
queryn.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
Integer n_total=0;
for (DataSnapshot ds : dataSnapshot.getChildren()) {
ADeposit bazar = ds.getValue(ADeposit.class);
Integer c = Integer.valueOf(bazar.getAmount());
n_total = n_total + c;
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
DepositList adapter = new DepositList(admininterface.this,abc);
deposit.setAdapter(adapter);
AlertDialog.Builder dialog1 = new AlertDialog.Builder(admininterface.this);
dialog1.setTitle("Notification");
dialog1.setMessage("Total Deposit : " +total );
dialog1.setIcon(R.drawable.ic_done_black_24dp);
dialog1.setNeutralButton(
"OK",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
dialog.dismiss();
}
});
dialog1.show();
}
@Override
public void onCancelled(DatabaseError databaseError) {}
}); ;
}
});
}
, теперь можно легко найти общую стоимость.но конкретные данные от пользователя, например, здесь "Rabbani" для получения его общей суммы, я создаю запрос, но я не могу получить доступ к значению n_total из части, подобной диалоговому окну.
Взгляните на структуру базы данных:
Теперь я хочу получить сумму от всей суммы от имени "Раббани", так же, как и для другого имени"Sobuj".этот процесс правильный?или есть какой-то другой процесс?получить общую сумму для отдельных пользователей?