Отслеживание данных с помощью Firebase и Android - PullRequest
2 голосов
/ 02 июня 2019

Я работаю над графической диаграммой, которая отслеживает целочисленные значения на протяжении 12 месяцев, иными словами, в самом приложении пользователь сам выбирает год, и на основе этого года столбчатая диаграмма показывает соответствующие значения (см.прикрепленные изображения ниже)

Это подколлекция History и поля, которые у нее есть: enter image description here

И это предполагаемый ожидаемый результат: enter image description here

Проблема:

Проблема в том, что я не могу понять, как обновить данные в подсборке «История» (в настоящее время я могу их получить) и избежать создания новых документовлогика, лежащая в основе всего этого, заключается в том, что при обновлении старых значений, содержащих один и тот же год и месяц, они стираются и заменяются новыми.

Пока это то, что я имею в своем коде:

Calendar calendar = Calendar.getInstance();
int yyyy = Calendar.YEAR;
int mm = Calendar.MONTH;

valuesList.set(mm, value);

History history = new History(yyyy, valuestListChart);
myRef.update(history);

/*This is another method I am trying so it doesn't create another document instead 
of overriding the existing one but I don't know how to go from there*/
myRef.whereEqualTo("year", 2019).get()
    .addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
        @Override
        public void onComplete(@NonNull Task<QuerySnapshot> task) {
            if (task.isSuccessful()) {
                //update logic goes here...maybe?!
            }
        }
    });

ОБНОВЛЕНИЕ

Я хочу обновить ArrayList<month, value> таким образом, чтобы он заменял предыдущее значение новым

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