У меня есть метод загрузки приложения для заказа. Вы можете получить цену из базы данных (harga) и сумму от пользователя, но я не могу получить общую сумму. Он всегда принимает значение 0.
Итак, вот мой код:
public void uploadImg() {
if (FilePathUri != null) {
progressDialog.setTitle("Process...");
progressDialog.show();
StorageReference storageReference2 = storageReference.child(System.currentTimeMillis() + "." + GetFileExtension(FilePathUri));
storageReference2.putFile(FilePathUri).addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
@Override
public void onSuccess(final UploadTask.TaskSnapshot taskSnapshot) {
final String ukuran = UkuranPasFoto.getSelectedItem().toString().trim();
final int jumlah = Integer.parseInt(JumlahPasFoto.getText().toString().trim());
final String catatan = inputCatatan.getText().toString().trim();
final int status = 0;
databaseHarga.child("harga").child("pasFoto").addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
int harga = dataSnapshot.child(ukuran).getValue(Integer.class);
int total = harga*jumlah;
progressDialog.dismiss();
Toast.makeText(getApplicationContext(),"Sucess !",Toast.LENGTH_LONG).show();
PesanPasFoto ImageUploadInfo = new PesanPasFoto(uid, ukuran, jumlah, catatan, total, status, taskSnapshot.getUploadSessionUri().toString());
String ImageUploadId = database.push().getKey();
database.child(ImageUploadId).setValue(ImageUploadInfo);
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
}
});
} else {
Toast.makeText(PasFotoActivity.this,"Please Select Image or Fill the blank",Toast.LENGTH_LONG).show();
}
}
вот моя база данных
введите описание изображения здесь
Как видите, значение «total» всегда равно 0, и в logcat нет ничего неправильного