В настоящее время я могу перечислить все мои встречи, сделанные врачами, для просмотра всеми пациентами. Но я должен установить, чтобы пациенты, которые в настоящее время входят в систему, могли видеть только его назначение только с его именем. Как мне сделать запрос? Я использую базу данных Firebase в реальном времени и Android Studio.
Мой код для просмотра назначения для пациента:
package com.example.myapplication;
import android.os.Bundle;
import android.app.Activity;
import android.support.annotation.NonNull;
import android.support.v7.widget.RecyclerView;
import android.widget.SearchView;
import android.widget.Toast;
import com.google.firebase.database.DataSnapshot;
import com.google.firebase.database.DatabaseError;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.google.firebase.database.ValueEventListener;
import java.util.ArrayList;
public class patapp extends Activity {
DatabaseReference ref;
ArrayList<Booking> list1;
RecyclerView recyclerView;
SearchView searchView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_patapp);
ref = FirebaseDatabase.getInstance().getReference().child("Bookings");
recyclerView = findViewById(R.id.rvpat);
searchView = findViewById(R.id.svp);
}
@Override
protected void onStart() {
super.onStart();
if (ref != null)
{
ref.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
if (dataSnapshot.exists())
{
list1 = new ArrayList<>();
for (DataSnapshot ds : dataSnapshot.getChildren())
{
list1.add(ds.getValue(Booking.class));
}
adapterclass1 Adapterclass = new adapterclass1(patapp.this,list1);
//
//
//
recyclerView.setAdapter(Adapterclass);
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
Toast.makeText(patapp.this, databaseError.getMessage(),Toast.LENGTH_SHORT).show();
}
});
}
if (searchView != null)
{
searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String s) {
return false;
}
@Override
public boolean onQueryTextChange(String s) {
search(s);
return true;
}
});
}
}
private void search(String str)
{
ArrayList<Booking> myList = new ArrayList<>();
for (Booking object : list1)
{
if (object.getPatname().toLowerCase().contains(str.toLowerCase()))
{
myList.add(object);
}
}
adapterclass1 Adapterclass = new adapterclass1(patapp.this,myList);
//
//
//
recyclerView.setAdapter(Adapterclass);
}
}