2 orderby метод не работает корректно на firebase firestore android - PullRequest
0 голосов
/ 17 апреля 2019

Я хочу сделать этот сценарий.Java-объект (пусть называется Foo) имеет два поля.

  • одна "длинная" для метки времени
  • одна "int" для одинакового количества

Я хочу, чтобы метки времени были меньше сегодняшних, а затем закажите этистрок, как.

Вот мой код ...

CollectionReference collectionReference = FirebaseFirestore.getInstance().collection("object");

    collectionReference.whereLessThan("weddingDateTimeMillis", System.currentTimeMillis())
            .orderBy("weddingDateTimeMillis")
            .orderBy("like", Query.Direction.DESCENDING).get().
addOnSuccessListener(new OnSuccessListener<QuerySnapshot>() {

        @SuppressWarnings("ConstantConditions")
        @Override
        public void onSuccess(QuerySnapshot queryDocumentSnapshots) {

            //...

        }

    }).addOnFailureListener(new OnFailureListener() {

        @Override
        public void onFailure(@NonNull Exception e) {

            //...
        }
    });

Но код не работает, я надеюсь.«like orderBy» игнорируется, а список приходит только по временным меткам.

Я создал индекс автоматически, щелкнув ссылку в logcat.

Что с ними не так?Я не понимаю логику.

РЕДАКТИРОВАТЬ

Класс Java, пример веб-интерфейса json и firebase можно найти выше.Нет входных данных, необходимых для запроса.А данные ответа только по заказу "weddingDateTimeMillis".Я не хочу записывать выходные данные, потому что они будут слишком длинными.

Object.Java

public class Wedding  Serializable {


private String parseId;

private User bride;
private User groom;

private Long weddingDateTimeMillis;

private String weddingAddress;

private Double locationLatitude;
private Double locationLongitude;

private String mailAddress;

private int like;

//getters and setters

образец JSON для объекта

{
      "bride":{
         "name":"Many",
         "userType":"BRIDE"
      },
      "groom":{
         "name":"Long",
         "userType":"GROOM"
      },
      "like":32,
      "parseId":"04FFTYQwZbCAAXAn2W60",
      "weddingDateTimeMillis":1500118792847
   }

ЕслиВы хотите просмотреть все тестовые данные, вы можете посмотреть здесь: http://ardakaplan.com/test_json.txt

снимок экрана для веб-интерфейса в консоли Firebase enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...