show kcal consumed vs planned, on meal tiles

This commit is contained in:
Dieter Plaetinck
2024-06-07 21:34:51 +03:00
parent 6b2a7e5e3b
commit b7a2830106
5 changed files with 11 additions and 1 deletions

View File

@@ -19,6 +19,7 @@
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:wger/models/nutrition/meal.dart';
import 'package:wger/models/nutrition/nutritional_values.dart';
import 'package:wger/widgets/core/core.dart';
@@ -49,3 +50,12 @@ String getShortNutritionValues(NutritionalValues values, BuildContext context) {
final f = '${loc.fatShort} ${loc.gValue(values.fat.toStringAsFixed(0))}';
return '$e / $p / $c / $f';
}
String getKcalConsumedVsPlanned(Meal meal, BuildContext context) {
final planned = meal.plannedNutritionalValues.energy;
final consumed =
meal.diaryEntriesToday.map((e) => e.nutritionalValues.energy).fold(0.0, (a, b) => a + b);
final loc = AppLocalizations.of(context);
return '${consumed.toStringAsFixed(0)} / ${planned.toStringAsFixed(0)} ${loc.kcal}';
}

View File

@@ -323,7 +323,7 @@ class MealHeader extends StatelessWidget {
),
if (_meal.isRealMeal)
Text(
getShortNutritionValues(_meal.plannedNutritionalValues, context),
getKcalConsumedVsPlanned(_meal, context),
style: Theme.of(context).textTheme.titleSmall,
),
],

Binary file not shown.

Before

Width:  |  Height:  |  Size: 69 KiB

After

Width:  |  Height:  |  Size: 65 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 64 KiB

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 63 KiB

After

Width:  |  Height:  |  Size: 61 KiB