خرید بک لینک

Vote count: 0

I would like to find all the users data and sum of their scores on particular questions and find the highest rank

I have multiple nodes with unique user id now I would like to find the sum of all the values inside the question node.

This is how I have created my POJO

private String id;
private String name;

private String contact;
private String email;
private String password;
private int score;
private String dob;
private String profession;
private String random;
private String status;
private String fbId;
private UserPuzzleDetails userPuzzleDetails;

public User() {
}

public User(String id, String name, String contact, String email, String password, int score,
            String dob, String profession, String random, String status, String facebookid, UserPuzzleDetails userPuzzleDetails1) {
    this.id = id;
    this.name = name;
    this.contact = contact;
    this.email = email;
    this.password = password;
    this.score = score;
    this.dob = dob;
    this.profession = profession;
    this.random = random;
    this.status = status;
    this.fbId = facebookid;
    this.userPuzzleDetails = userPuzzleDetails1;
}

public User(String id, String name, String contact, String email, String password, int score,
            String dob, String profession, String random, String status, String facebookid) {
    this.id = id;
    this.name = name;
    this.contact = contact;
    this.email = email;
    this.password = password;
    this.score = score;
    this.dob = dob;
    this.profession = profession;
    this.random = random;
    this.status = status;
    this.fbId = facebookid;

}

public User(String name) {
    this.name = name;
}

public String getId() {
    return id;
}

public void setId(String id) {
    this.id = id;
}

public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}

public String getEmail() {
    return email;
}


public String getPassword() {
    return password;
}


public int getScore() {
    return score;
}

public void setScore(int score) {
    this.score = score;
}

public String getContact() {
    return contact;
}

public String getDob() {
    return dob;
}


public String getProfession() {
    return profession;
}


public String getRandom() {
    return random;
}


public UserPuzzleDetails getUserPuzzleDetails() {
    return userPuzzleDetails;
}

public void setUserPuzzleDetails(UserPuzzleDetails questions) {
    this.userPuzzleDetails = questions;
}

public String getStatus() {
    return status;
}

public String getFbId() {
    return fbId;
}

public void setFbId(String fbId) {
    this.fbId = fbId;
}

Now I have used this function to retrieve the data but it is not logging. How should I go by this data iterate through it.

    private void getAllRank() {

    final DatabaseReference databaseReference = FirebaseDatabase.getInstance().getReference().child("users");
    final Query query = databaseReference.orderByChild("score").limitToLast(10);
    query.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {
            userlist = new ArrayList<>();
            for (DataSnapshot postSnapshot : dataSnapshot.getChildren()) {
                User score = postSnapshot.getValue(User.class);
                userlist.add(new User(score.getId(), score.getName(), score.getContact(), score.getEmail(),
                        score.getPassword(), score.getScore(), score.getProfession(), score.getDob(), score.getRandom(), score.getStatus(), score.getFbId(),score.getUserPuzzleDetails()));
                Log.e(TAG, "onDataChange: "+userlist );
            }


        }

        @Override
        public void onCancelled(DatabaseError databaseError) {

        }
    });
}
asked 34 secs ago

برچسب: نویسنده: استخدام کار تاريخ: چهارشنبه 30 فروردين 1396 ساعت: 12:43

صفحه بندی