bug fixing

feature/chart-progress-page
Bogdan Kotikov 2023-06-01 11:46:53 +02:00
parent 237e8ffa4e
commit b93bf41961
5 changed files with 22 additions and 16 deletions

View File

@ -9,11 +9,8 @@ class CardDataFoodComponent extends StatelessWidget {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return Container( return SizedBox(
height: 180, height: 180,
decoration: const BoxDecoration(
color: Colors.pink,
borderRadius: BorderRadius.all(Radius.circular(16))),
child: Padding( child: Padding(
padding: const EdgeInsets.symmetric(vertical: 8, horizontal: 8), padding: const EdgeInsets.symmetric(vertical: 8, horizontal: 8),
child: SingleChildScrollView( child: SingleChildScrollView(
@ -25,7 +22,15 @@ class CardDataFoodComponent extends StatelessWidget {
shrinkWrap: true, shrinkWrap: true,
itemCount: foods.length, itemCount: foods.length,
itemBuilder: (context, i) { itemBuilder: (context, i) {
return CardFoodItemComponent(foods[i]); return Column(
children: [
CardFoodItemComponent(foods[i]),
Divider(
color: Colors.grey.shade300,
thickness: 1.2,
)
],
);
}) })
], ],
), ),

View File

@ -1,10 +1,12 @@
import 'package:ernaehrung/android/config/statistics.dart'; import 'package:ernaehrung/android/config/statistics.dart';
import 'package:ernaehrung/android/models/user.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:hive/hive.dart';
import 'package:percent_indicator/circular_percent_indicator.dart'; import 'package:percent_indicator/circular_percent_indicator.dart';
class CircularLoadingComponent extends StatelessWidget { class CircularLoadingComponent extends StatelessWidget {
const CircularLoadingComponent({Key? key}) : super(key: key); CircularLoadingComponent({Key? key}) : super(key: key);
final int targetCaolries = 3500; // TODO get from user data final int? targetCaolries = Hive.box<User>("USER_BOX").get("USER")?.kalorien;
@override @override
Widget build(BuildContext context) {; Widget build(BuildContext context) {;
@ -12,7 +14,7 @@ class CircularLoadingComponent extends StatelessWidget {
return ValueListenableBuilder( return ValueListenableBuilder(
valueListenable: StatisticsService.instance.eatenCalories, valueListenable: StatisticsService.instance.eatenCalories,
builder: (context, value, child) { builder: (context, value, child) {
double progress = double.parse((value / targetCaolries).toStringAsFixed(1)); double progress = double.parse((value / targetCaolries!).toStringAsFixed(1));
progress = progress > 1.0 ? 1.0 : progress; progress = progress > 1.0 ? 1.0 : progress;
return Column( return Column(
@ -24,7 +26,7 @@ class CircularLoadingComponent extends StatelessWidget {
lineWidth: 5.0, lineWidth: 5.0,
percent: progress, percent: progress,
center: Text( center: Text(
"$value/$targetCaolries kcal", "$value/$targetCaolries Kcal",
textAlign: TextAlign.center, textAlign: TextAlign.center,
), ),
progressColor: Colors.lightGreen, progressColor: Colors.lightGreen,

View File

@ -1,7 +1,6 @@
import 'package:ernaehrung/android/components/circular/circular_component.dart'; import 'package:ernaehrung/android/components/circular/circular_component.dart';
import 'package:ernaehrung/android/components/circular/line_circular_with_text_component.dart'; import 'package:ernaehrung/android/components/circular/line_circular_with_text_component.dart';
import 'package:ernaehrung/android/config/statistics.dart'; import 'package:ernaehrung/android/config/statistics.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
class StatisticsPercentage extends StatelessWidget { class StatisticsPercentage extends StatelessWidget {
@ -11,7 +10,7 @@ class StatisticsPercentage extends StatelessWidget {
const StatisticsPercentage({Key? key}) : super(key: key); const StatisticsPercentage({Key? key}) : super(key: key);
@override @override
Widget build(BuildContext context) {; Widget build(BuildContext context) {
return Container( return Container(
decoration: decoration:
BoxDecoration(border: Border.all(width: 2.0, color: Colors.black)), BoxDecoration(border: Border.all(width: 2.0, color: Colors.black)),
@ -20,10 +19,10 @@ class StatisticsPercentage extends StatelessWidget {
child: Row( child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [ children: [
const Expanded( Expanded(
child: SizedBox( child: SizedBox(
child: Padding( child: Padding(
padding: EdgeInsets.symmetric(vertical: 0, horizontal: 8), padding: const EdgeInsets.symmetric(vertical: 0, horizontal: 8),
child: FittedBox( child: FittedBox(
child: CircularLoadingComponent(), child: CircularLoadingComponent(),
), ),
@ -34,6 +33,7 @@ class StatisticsPercentage extends StatelessWidget {
child: ValueListenableBuilder<List<double>>( child: ValueListenableBuilder<List<double>>(
valueListenable: StatisticsService.instance.ingredients, valueListenable: StatisticsService.instance.ingredients,
builder: (context, value, child) { builder: (context, value, child) {
print("value ${value}");
return Column( return Column(
mainAxisAlignment: MainAxisAlignment.spaceEvenly, mainAxisAlignment: MainAxisAlignment.spaceEvenly,
children: [ children: [

View File

@ -18,7 +18,7 @@ class StatisticsPercentComponent extends StatelessWidget {
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [ children: [
Text("$eaten gegessen"), Text("$eaten gegessen"),
const CircularLoadingComponent(), CircularLoadingComponent(),
Text("$calorienBurned verbrannt"), Text("$calorienBurned verbrannt"),
], ],
); );

View File

@ -2,7 +2,6 @@ import 'dart:math';
import 'package:ernaehrung/android/components/meal_page_text/days_component.dart'; import 'package:ernaehrung/android/components/meal_page_text/days_component.dart';
import 'package:ernaehrung/android/config/cast_helper.dart'; import 'package:ernaehrung/android/config/cast_helper.dart';
import 'package:fl_chart/fl_chart.dart'; import 'package:fl_chart/fl_chart.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:hive/hive.dart'; import 'package:hive/hive.dart';
import '../models/food.dart'; import '../models/food.dart';
@ -215,7 +214,7 @@ class StatisticsService {
carbs += food.carbohydrateg; carbs += food.carbohydrateg;
} }
} }
return [fat as double,protein as double,carbs as double]; return [fat.roundToDouble(),protein.roundToDouble(),carbs.roundToDouble()];
} }
void updateCalculationsAndNotfiyListenersForTodayStatistics(){ void updateCalculationsAndNotfiyListenersForTodayStatistics(){