Я работаю над графической диаграммой, которая отслеживает целочисленные значения на протяжении 12 месяцев, иными словами, в самом приложении пользователь сам выбирает год, и на основе этого года столбчатая диаграмма показывает соответствующие значения (см.прикрепленные изображения ниже)
Это подколлекция History и поля, которые у нее есть:
И это предполагаемый ожидаемый результат:
Проблема:
Проблема в том, что я не могу понять, как обновить данные в подсборке «История» (в настоящее время я могу их получить) и избежать создания новых документовлогика, лежащая в основе всего этого, заключается в том, что при обновлении старых значений, содержащих один и тот же год и месяц, они стираются и заменяются новыми.
Пока это то, что я имею в своем коде:
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>
таким образом, чтобы он заменял предыдущее значение новым