Я пытаюсь создать запрос с условием оператора if / else, основанный на преподавательском составе, программе и семестре. Пример, если студент учился на факультете компьютерных и творческих технологий и обучается по программе бакалавриата компьютерных наук (с отличием) и в настоящее время в семестре 2 / год. Как получить все курсы в семестре 2 / год1 для зачисления на курсы?
Здесь это изображение базы данных
А вот код для извлечения courseID и CourseName на основе преподавательского состава, программы и семестра (на самом деле я не знаю, как это сделать).
я не показываю все свое кодирование, потому что я просто показываю, в чем проблема. Надеюсь, вы понимаете, что я пытаюсь сказать. Спасибо
```dbCourse = FirebaseDatabase.getInstance().getReference().child("Faculty");
if(tvProgramme.equals("Bachelor Of Computer Sciences (Hons)")){
if(tvSemester.equals("semester1/year1")){
final Query query = FirebaseDatabase.getInstance().getReference("Faculty").child("Faculty of Computing and Creative Technology").child("Programme")
.child("Bachelor of Computer Sciences (Hons)").child("Year 1").child("Semester 1");
query.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
courseList= new ArrayList<CourseModel>();
for(DataSnapshot dataSnapshot1: dataSnapshot.getChildren())
{
CourseModel p = dataSnapshot1.getValue(CourseModel.class);
courseList.add(p);
}
adapter = new RegisterCourseAdapter(courseList);
recyclerView.setAdapter(adapter);
}
@Override
public void onCancelled(DatabaseError databaseError) {
Toast.makeText(RegisterCourseActivity.this, "There is an error occur. Please try again.", Toast.LENGTH_LONG).show();
}
});
}
else if(tvSemester.equals("semester2/year1")){
final Query query = FirebaseDatabase.getInstance().getReference("Faculty").child("Faculty of Computing and Creative Technology").child("Programme")
.child("Bachelor of Computer Sciences (Hons)").child("Year 1").child("Semester 2");
query.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
courseList= new ArrayList<CourseModel>();
for(DataSnapshot dataSnapshot1: dataSnapshot.getChildren())
{
CourseModel p = dataSnapshot1.getValue(CourseModel.class);
courseList.add(p);
}
adapter = new RegisterCourseAdapter(courseList);
recyclerView.setAdapter(adapter);
}
@Override
public void onCancelled(DatabaseError databaseError) {
Toast.makeText(RegisterCourseActivity.this, "There is an error occur. Please try again.", Toast.LENGTH_LONG).show();
}
});
}
else if(tvSemester.equals("semester3/year1")){
final Query query = FirebaseDatabase.getInstance().getReference("Faculty").child("Faculty of Computing and Creative Technology").child("Programme")
.child("Bachelor of Computer Sciences (Hons)").child("Year 1").child("Semester 3");
query.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
courseList= new ArrayList<CourseModel>();
for(DataSnapshot dataSnapshot1: dataSnapshot.getChildren())
{
CourseModel p = dataSnapshot1.getValue(CourseModel.class);
courseList.add(p);
}
adapter = new RegisterCourseAdapter(courseList);
recyclerView.setAdapter(adapter);
}
@Override
public void onCancelled(DatabaseError databaseError) {
Toast.makeText(RegisterCourseActivity.this, "There is an error occur. Please try again.", Toast.LENGTH_LONG).show();
}
});
}
}```