use of com.faltenreich.diaguard.feature.food.input.FoodInputView in project Diaguard by Faltenreich.
the class CalculatorFragment method storeValues.
private void storeValues(float mgDl, float carbohydrates, float bolus, float correction) {
DateTime now = DateTime.now();
Entry entry = new Entry();
entry.setDate(now);
EntryDao.getInstance().createOrUpdate(entry);
BloodSugar bloodSugar = new BloodSugar();
bloodSugar.setMgDl(mgDl);
bloodSugar.setEntry(entry);
MeasurementDao.getInstance(BloodSugar.class).createOrUpdate(bloodSugar);
List<FoodEaten> foodEatenList = new ArrayList<>();
if (carbohydrates > 0) {
FoodInputView foodInputView = getBinding().foodInputView;
foodEatenList.addAll(foodInputView.getFoodEatenList());
meal.setCarbohydrates(foodInputView.getInputCarbohydrates());
meal.setEntry(entry);
MeasurementDao.getInstance(Meal.class).createOrUpdate(meal);
for (FoodEaten foodEaten : foodEatenList) {
if (foodEaten.getAmountInGrams() > 0) {
foodEaten.setMeal(meal);
FoodEatenDao.getInstance().createOrUpdate(foodEaten);
}
}
}
if (bolus > 0 || correction > 0) {
Insulin insulin = new Insulin();
insulin.setBolus(bolus);
insulin.setCorrection(correction);
insulin.setEntry(entry);
MeasurementDao.getInstance(Insulin.class).createOrUpdate(insulin);
}
Events.post(new EntryAddedEvent(entry, null, foodEatenList));
openEntry(entry);
clearInput();
update();
}
Aggregations