Я использую базу данных реального времени. Java. Проблема в том, что я не могу получить созданный ID. У меня есть пользователь, который создает заказ:
Созданный заказ заносится в базу данных
Содержит информацию, идентификатор отправителя, а также должен иметь собственный идентификатор, показанный на скриншоте, с чем у меня проблема.
Код создания заказа ниже
private EditText mDateField, mModelField, mProblemField, mAdressField;
private Button mConfirm;
private FirebaseUser fuser;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_order);
mDateField = findViewById(R.id.date);
mModelField = findViewById(R.id.model);
mProblemField= findViewById(R.id.problem_desc);
mAdressField = findViewById(R.id.adress);
mConfirm = findViewById(R.id.confirm);
fuser = FirebaseAuth.getInstance().getCurrentUser();
final String userID = fuser.getUid();
final String orderid = "";
mConfirm.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String date = mDateField.getText().toString();
String model = mModelField.getText().toString();
String adress = mAdressField.getText().toString();
String problem = mProblemField.getText().toString();
saveOrderInformation(orderid,userID,date,model,adress,problem);
finish();
AppUtilities.showToast(OrderActivity.this,"Order");
}
});
}
private void saveOrderInformation(String id, String sender, String date, String model, String adress, String problem){
DatabaseReference reference = FirebaseDatabase.getInstance().getReference();
HashMap<String,Object> hashMap = new HashMap<>();
hashMap.put("id",id);
hashMap.put("sender",sender);
hashMap.put("date",date);
hashMap.put("model",model);
hashMap.put("adress",adress);
hashMap.put("problem",problem);
reference.child("Orders").push().setValue(hashMap);
}
}