import chnage

profile
Enzo 2 years ago
parent 64f6d5de0b
commit d8dbf8dd61

@ -1,8 +1,7 @@
import 'dart:math';
import 'dart:ui' as ui; import 'dart:ui' as ui;
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'package:smartfit_app_mobile/Modele/user.dart'; import 'package:smartfit_app_mobile/modele/user.dart';
import 'package:smartfit_app_mobile/common/colo_extension.dart'; import 'package:smartfit_app_mobile/common/colo_extension.dart';
class Graph extends StatelessWidget { class Graph extends StatelessWidget {
@ -30,8 +29,6 @@ class _GraphAreaState extends State<GraphArea>
with SingleTickerProviderStateMixin { with SingleTickerProviderStateMixin {
late AnimationController _animationController; late AnimationController _animationController;
@override @override
void initState() { void initState() {
super.initState(); super.initState();
@ -48,7 +45,9 @@ class _GraphAreaState extends State<GraphArea>
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
List<DataPoint> vitesseSecondes = Provider.of<User>(context, listen: false).listActivity[0].getSpeedWithTimeActivity(); List<DataPoint> vitesseSecondes = Provider.of<User>(context, listen: false)
.listActivity[0]
.getSpeedWithTimeActivity();
return GestureDetector( return GestureDetector(
onTap: () { onTap: () {
@ -98,7 +97,6 @@ class GraphPainter extends CustomPainter {
var cx = 0.0; var cx = 0.0;
for (int i = 0; i < data.length; i++) { for (int i = 0; i < data.length; i++) {
var y = size.height - (data[i].speed * yRatio * _size.value); var y = size.height - (data[i].speed * yRatio * _size.value);
offsets.add(Offset(cx, y)); offsets.add(Offset(cx, y));
@ -163,7 +161,8 @@ class GraphPainter extends CustomPainter {
canvas.drawPath(linePath, linePaint); canvas.drawPath(linePath, linePaint);
int maxIndex = 0; int maxIndex = 0;
double maxY = offsets[0].dy; // Supposons que la première coordonnée est la plus grande double maxY = offsets[0]
.dy; // Supposons que la première coordonnée est la plus grande
for (int i = 1; i < offsets.length; i++) { for (int i = 1; i < offsets.length; i++) {
if (offsets[i].dy < maxY) { if (offsets[i].dy < maxY) {

@ -7,14 +7,14 @@ class Info extends StatelessWidget {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
String distance= Provider.of<User>(context, listen: false).listActivity[0].getTotalDistance(); String distance = Provider.of<User>(context, listen: false)
.listActivity[0]
.getTotalDistance();
return Row( return Row(
mainAxisAlignment: MainAxisAlignment.spaceAround, mainAxisAlignment: MainAxisAlignment.spaceAround,
children: [ children: [
Stats(value: distance, unit: 'm', label: 'Distance'), Stats(value: distance, unit: 'm', label: 'Distance'),
], ],
); );
} }

@ -1,6 +1,6 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'package:smartfit_app_mobile/Modele/user.dart'; import 'package:smartfit_app_mobile/modele/user.dart';
import 'package:smartfit_app_mobile/common/colo_extension.dart'; import 'package:smartfit_app_mobile/common/colo_extension.dart';
class Stats extends StatelessWidget { class Stats extends StatelessWidget {
@ -8,9 +8,15 @@ class Stats extends StatelessWidget {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
String calories= Provider.of<User>(context, listen: false).listActivity[0].getTotalCalorie(); String calories = Provider.of<User>(context, listen: false)
String heartrate= Provider.of<User>(context, listen: false).listActivity[0].getTotalAvgHeartRate(); .listActivity[0]
String time= Provider.of<User>(context, listen: false).listActivity[0].getTotalTime(); .getTotalCalorie();
String heartrate = Provider.of<User>(context, listen: false)
.listActivity[0]
.getTotalAvgHeartRate();
String time = Provider.of<User>(context, listen: false)
.listActivity[0]
.getTotalTime();
return Column( return Column(
children: [ children: [
@ -46,7 +52,7 @@ class Stats extends StatelessWidget {
iconBackground: Color(0xff6131AD), iconBackground: Color(0xff6131AD),
time: '+5s', time: '+5s',
label: 'Time', label: 'Time',
value: time+' s', value: time + ' s',
), ),
SizedBox(width: 15), SizedBox(width: 15),
InfoStat( InfoStat(
@ -55,7 +61,7 @@ class Stats extends StatelessWidget {
iconBackground: Color(0xff6131AD), iconBackground: Color(0xff6131AD),
time: '+5s', time: '+5s',
label: 'Heart Rate', label: 'Heart Rate',
value: heartrate+" BPM", value: heartrate + " BPM",
), ),
SizedBox(width: 15), SizedBox(width: 15),
InfoStat( InfoStat(
@ -64,7 +70,7 @@ class Stats extends StatelessWidget {
iconBackground: Color(0xff6131AD), iconBackground: Color(0xff6131AD),
time: '+5s', time: '+5s',
label: 'Energy', label: 'Energy',
value: calories+" kCal", value: calories + " kCal",
), ),
SizedBox(width: 30), SizedBox(width: 30),
], ],

@ -1,6 +1,5 @@
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'package:smartfit_app_mobile/Modele/user.dart'; import 'package:smartfit_app_mobile/modele/user.dart';
import 'package:smartfit_app_mobile/common_widget/helpers.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
class Steps extends StatelessWidget { class Steps extends StatelessWidget {
@ -10,7 +9,9 @@ class Steps extends StatelessWidget {
Widget build(BuildContext context) { Widget build(BuildContext context) {
print("lhwaa"); print("lhwaa");
String steps = Provider.of<User>(context, listen: false).listActivity[0].getTotalSteps(); String steps = Provider.of<User>(context, listen: false)
.listActivity[0]
.getTotalSteps();
return Padding( return Padding(
padding: const EdgeInsets.symmetric(vertical: 20), padding: const EdgeInsets.symmetric(vertical: 20),
child: Column( child: Column(

@ -1,17 +1,17 @@
import 'package:flutter_svg/svg.dart'; import 'package:flutter_svg/svg.dart';
import 'package:provider/provider.dart';
import 'package:smartfit_app_mobile/Modele/activity.dart';
import 'package:smartfit_app_mobile/Modele/user.dart';
import 'package:smartfit_app_mobile/View/activity/activity.dart';
import 'package:smartfit_app_mobile/common/colo_extension.dart'; import 'package:smartfit_app_mobile/common/colo_extension.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:simple_animation_progress_bar/simple_animation_progress_bar.dart';
class WorkoutRow extends StatelessWidget { class WorkoutRow extends StatelessWidget {
final Map wObj; final Map wObj;
final VoidCallback onDelete; final VoidCallback onDelete;
final VoidCallback onClick; final VoidCallback onClick;
const WorkoutRow({Key? key, required this.wObj, required this.onDelete, required this.onClick}) : super(key: key); const WorkoutRow(
{Key? key,
required this.wObj,
required this.onDelete,
required this.onClick})
: super(key: key);
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {

@ -1,12 +1,7 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'package:smartfit_app_mobile/Modele/user.dart'; import 'package:smartfit_app_mobile/modele/user.dart';
import 'package:smartfit_app_mobile/View/activity/list_activity.dart'; import 'package:smartfit_app_mobile/view/main_tab/main_tab_view.dart';
import 'package:smartfit_app_mobile/View/home/home_view.dart';
import 'package:smartfit_app_mobile/View/login/login_view.dart';
import 'package:smartfit_app_mobile/View/login/signup_view.dart';
import 'package:smartfit_app_mobile/View/main_tab/main_tab_view.dart';
import 'package:smartfit_app_mobile/View/page_test.dart';
import 'package:smartfit_app_mobile/common/colo_extension.dart'; import 'package:smartfit_app_mobile/common/colo_extension.dart';
void main() { void main() {

@ -1,5 +1,3 @@
import 'dart:ffi';
import 'package:fl_chart/fl_chart.dart'; import 'package:fl_chart/fl_chart.dart';
import 'package:smartfit_app_mobile/common_widget/graph.dart'; import 'package:smartfit_app_mobile/common_widget/graph.dart';
@ -58,19 +56,21 @@ class ActivityOfUser {
} }
return result; return result;
} }
List<FlSpot> getCalories() { List<FlSpot> getCalories() {
List<FlSpot> result = List.empty(growable: true); List<FlSpot> result = List.empty(growable: true);
int firtTimeStamp = 0; int firtTimeStamp = 0;
for (List<dynamic> ligne in _contentActivity) { for (List<dynamic> ligne in _contentActivity) {
if (ligne.length >= 39 &&
if (ligne.length >= 39 && ligne[0] == "Data" && ligne[39] == "total_calories") { ligne[0] == "Data" &&
ligne[39] == "total_calories") {
print(ligne[39]); print(ligne[39]);
if (firtTimeStamp == 0) { if (firtTimeStamp == 0) {
firtTimeStamp = ligne[4]; firtTimeStamp = ligne[4];
} }
//result.add([(ligne[4] - firtTimeStamp) ~/ 100, ligne[7].toInt()]); //result.add([(ligne[4] - firtTimeStamp) ~/ 100, ligne[7].toInt()]);
result result.add(
.add(FlSpot((ligne[4] - firtTimeStamp) / 100, ligne[40].toDouble())); FlSpot((ligne[4] - firtTimeStamp) / 100, ligne[40].toDouble()));
} }
} }
return result; return result;
@ -80,37 +80,47 @@ class ActivityOfUser {
List<FlSpot> result = List.empty(growable: true); List<FlSpot> result = List.empty(growable: true);
print(_contentActivity.length); print(_contentActivity.length);
for (int i = 0; i < _contentActivity[_contentActivity.length-3].length; i++){ for (int i = 0;
print ( _contentActivity[_contentActivity.length-3][i]); i < _contentActivity[_contentActivity.length - 3].length;
i++) {
print(_contentActivity[_contentActivity.length - 3][i]);
if ( _contentActivity[_contentActivity.length-3][i] == "total_strides"){ if (_contentActivity[_contentActivity.length - 3][i] == "total_strides") {
return _contentActivity[_contentActivity.length-3][i+1].toString(); return _contentActivity[_contentActivity.length - 3][i + 1].toString();
} }
} }
return "NAN"; return "NAN";
} }
String getTotalCalorie() { String getTotalCalorie() {
List<FlSpot> result = List.empty(growable: true); List<FlSpot> result = List.empty(growable: true);
print(_contentActivity.length); print(_contentActivity.length);
for (int i = 0; i < _contentActivity[_contentActivity.length-3].length; i++){ for (int i = 0;
print ( _contentActivity[_contentActivity.length-3][i]); i < _contentActivity[_contentActivity.length - 3].length;
i++) {
print(_contentActivity[_contentActivity.length - 3][i]);
if ( _contentActivity[_contentActivity.length-3][i] == "total_calories"){ if (_contentActivity[_contentActivity.length - 3][i] ==
return _contentActivity[_contentActivity.length-3][i+1].toString(); "total_calories") {
return _contentActivity[_contentActivity.length - 3][i + 1].toString();
} }
} }
return "NAN"; return "NAN";
} }
String getTotalAvgHeartRate() { String getTotalAvgHeartRate() {
List<FlSpot> result = List.empty(growable: true); List<FlSpot> result = List.empty(growable: true);
print(_contentActivity.length); print(_contentActivity.length);
for (int i = 0; i < _contentActivity[_contentActivity.length-3].length; i++){ for (int i = 0;
print ( _contentActivity[_contentActivity.length-3][i]); i < _contentActivity[_contentActivity.length - 3].length;
i++) {
print(_contentActivity[_contentActivity.length - 3][i]);
if ( _contentActivity[_contentActivity.length-3][i] == "total_calories"){ if (_contentActivity[_contentActivity.length - 3][i] ==
return _contentActivity[_contentActivity.length-3][i+1].toString(); "total_calories") {
return _contentActivity[_contentActivity.length - 3][i + 1].toString();
} }
} }
return "NAN"; return "NAN";
@ -120,30 +130,36 @@ class ActivityOfUser {
List<FlSpot> result = List.empty(growable: true); List<FlSpot> result = List.empty(growable: true);
print(_contentActivity.length); print(_contentActivity.length);
for (int i = 0; i < _contentActivity[_contentActivity.length-3].length; i++){ for (int i = 0;
print ( _contentActivity[_contentActivity.length-3][i]); i < _contentActivity[_contentActivity.length - 3].length;
i++) {
print(_contentActivity[_contentActivity.length - 3][i]);
if ( _contentActivity[_contentActivity.length-3][i] == "total_elapsed_time"){ if (_contentActivity[_contentActivity.length - 3][i] ==
return _contentActivity[_contentActivity.length-3][i+1].toString(); "total_elapsed_time") {
return _contentActivity[_contentActivity.length - 3][i + 1].toString();
} }
} }
return "NAN"; return "NAN";
} }
String getTotalDistance() { String getTotalDistance() {
List<FlSpot> result = List.empty(growable: true); List<FlSpot> result = List.empty(growable: true);
print(_contentActivity.length); print(_contentActivity.length);
for (int i = 0; i < _contentActivity[_contentActivity.length-3].length; i++){ for (int i = 0;
print ( _contentActivity[_contentActivity.length-3][i]); i < _contentActivity[_contentActivity.length - 3].length;
i++) {
print(_contentActivity[_contentActivity.length - 3][i]);
if ( _contentActivity[_contentActivity.length-3][i] == "total_distance"){ if (_contentActivity[_contentActivity.length - 3][i] ==
return _contentActivity[_contentActivity.length-3][i+1].toString(); "total_distance") {
return _contentActivity[_contentActivity.length - 3][i + 1].toString();
} }
} }
return "NAN"; return "NAN";
} }
List<FlSpot> getAltitudeWithTime() { List<FlSpot> getAltitudeWithTime() {
List<FlSpot> result = List.empty(growable: true); List<FlSpot> result = List.empty(growable: true);
int firtTimeStamp = 0; int firtTimeStamp = 0;
@ -197,6 +213,7 @@ class ActivityOfUser {
} }
return result; return result;
} }
List<DataPoint> getSpeedWithTimeActivity() { List<DataPoint> getSpeedWithTimeActivity() {
List<DataPoint> result = List.empty(growable: true); List<DataPoint> result = List.empty(growable: true);
int firtTimeStamp = 0; int firtTimeStamp = 0;
@ -206,15 +223,17 @@ class ActivityOfUser {
if (firtTimeStamp == 0) { if (firtTimeStamp == 0) {
firtTimeStamp = ligne[4]; firtTimeStamp = ligne[4];
} }
result.add( result.add(DataPoint(
DataPoint(((ligne[4] - firtTimeStamp) / 100), ligne[19].toDouble(), )); ((ligne[4] - firtTimeStamp) / 100),
ligne[19].toDouble(),
));
} }
if (ligne[0] == "Data" && ligne[1] == 2) { if (ligne[0] == "Data" && ligne[1] == 2) {
if (firtTimeStamp == 0) { if (firtTimeStamp == 0) {
firtTimeStamp = ligne[4]; firtTimeStamp = ligne[4];
} }
result.add( result.add(DataPoint(
DataPoint( ((ligne[4] - firtTimeStamp)/ 100), ligne[25].toDouble())); ((ligne[4] - firtTimeStamp) / 100), ligne[25].toDouble()));
} }
} }
return result; return result;

@ -1,7 +1,7 @@
import 'dart:convert'; import 'dart:convert';
import 'dart:io'; import 'dart:io';
import 'package:smartfit_app_mobile/Modele/Api/i_data_strategy.dart'; import 'package:smartfit_app_mobile/modele/api/i_data_strategy.dart';
import 'package:http/http.dart' as http; import 'package:http/http.dart' as http;
import 'package:tuple/tuple.dart'; import 'package:tuple/tuple.dart';

@ -1,5 +1,5 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:smartfit_app_mobile/Modele/activity.dart'; import 'package:smartfit_app_mobile/modele/activity.dart';
class User extends ChangeNotifier { class User extends ChangeNotifier {
String? username; String? username;

@ -2,14 +2,13 @@ import 'dart:convert';
import 'dart:io'; import 'dart:io';
import 'package:crypto/crypto.dart'; import 'package:crypto/crypto.dart';
import 'package:dotted_dashed_line/dotted_dashed_line.dart';
import 'package:file_picker/file_picker.dart'; import 'package:file_picker/file_picker.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'package:smartfit_app_mobile/Modele/Api/i_data_strategy.dart'; import 'package:smartfit_app_mobile/modele/api/i_data_strategy.dart';
import 'package:smartfit_app_mobile/Modele/Api/request_api.dart'; import 'package:smartfit_app_mobile/modele/api/request_api.dart';
import 'package:smartfit_app_mobile/Modele/activity.dart'; import 'package:smartfit_app_mobile/modele/activity.dart';
import 'package:smartfit_app_mobile/Modele/manager_file.dart'; import 'package:smartfit_app_mobile/modele/manager_file.dart';
import 'package:smartfit_app_mobile/Modele/user.dart'; import 'package:smartfit_app_mobile/modele/user.dart';
import 'package:smartfit_app_mobile/View/home/home_view.dart'; import 'package:smartfit_app_mobile/View/home/home_view.dart';
import 'package:smartfit_app_mobile/View/main_tab/main_tab_view.dart'; import 'package:smartfit_app_mobile/View/main_tab/main_tab_view.dart';
import 'package:smartfit_app_mobile/common_widget/round_button.dart'; import 'package:smartfit_app_mobile/common_widget/round_button.dart';
@ -46,7 +45,8 @@ class _ListActivityState extends State<ListActivity> {
print("test22"); print("test22");
print(ActivityOfUser(nom, result).getHeartRateWithTime()); print(ActivityOfUser(nom, result).getHeartRateWithTime());
print("test33"); print("test33");
Provider.of<User>(context, listen: false).addActivity(ActivityOfUser(nom, result)); Provider.of<User>(context, listen: false)
.addActivity(ActivityOfUser(nom, result));
//print(x.getDistanceWithTime(ActivityOfUser(result))); //print(x.getDistanceWithTime(ActivityOfUser(result)));
//print(x.getDistance(ActivityOfUser(result))); //print(x.getDistance(ActivityOfUser(result)));
//print(x.getAltitudeWithTime(ActivityOfUser(result))); //print(x.getAltitudeWithTime(ActivityOfUser(result)));
@ -148,13 +148,10 @@ class _ListActivityState extends State<ListActivity> {
List lastWorkoutArr = []; List lastWorkoutArr = [];
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
var media = MediaQuery.of(context).size; var media = MediaQuery.of(context).size;
return Scaffold( return Scaffold(
backgroundColor: TColor.white, backgroundColor: TColor.white,
body: SingleChildScrollView( body: SingleChildScrollView(
@ -168,7 +165,6 @@ class _ListActivityState extends State<ListActivity> {
Row( Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [ children: [
Text( Text(
"List Activités", "List Activités",
style: TextStyle( style: TextStyle(
@ -185,7 +181,6 @@ class _ListActivityState extends State<ListActivity> {
for (var element in result!.files) { for (var element in result!.files) {
readFile(element.name); readFile(element.name);
print(element.name); print(element.name);
} }
} }
}, },
@ -212,29 +207,38 @@ class _ListActivityState extends State<ListActivity> {
fontStyle: FontStyle.italic, fontStyle: FontStyle.italic,
fontWeight: FontWeight.w400, fontWeight: FontWeight.w400,
), ),
)]) )
: ])
ListView.builder( : ListView.builder(
padding: EdgeInsets.zero, padding: EdgeInsets.zero,
physics: const NeverScrollableScrollPhysics(), physics: const NeverScrollableScrollPhysics(),
shrinkWrap: true, shrinkWrap: true,
itemCount: Provider.of<User>(context, listen: true).listActivity.length, itemCount: Provider.of<User>(context, listen: true)
.listActivity
.length,
itemBuilder: (context, index) { itemBuilder: (context, index) {
var activityObj = Provider.of<User>(context, listen: true).listActivity[index] as ActivityOfUser; var activityObj =
Provider.of<User>(context, listen: true)
.listActivity[index] as ActivityOfUser;
var activityMap = activityObj.toMap(); var activityMap = activityObj.toMap();
return InkWell( return InkWell(
onTap: () { onTap: () {
Provider.of<User>(context, listen: false).removeActivity(activityObj); Provider.of<User>(context, listen: false)
Provider.of<User>(context, listen: false).insertActivity(0, activityObj); .removeActivity(activityObj);
Provider.of<User>(context, listen: false)
.insertActivity(0, activityObj);
}, },
child: WorkoutRow( child: WorkoutRow(
wObj: activityMap, wObj: activityMap,
onDelete: () { onDelete: () {
Provider.of<User>(context, listen: false).removeActivity(activityObj); Provider.of<User>(context, listen: false)
.removeActivity(activityObj);
}, },
onClick: () { onClick: () {
Provider.of<User>(context, listen: false).removeActivity(activityObj); Provider.of<User>(context, listen: false)
Provider.of<User>(context, listen: false).insertActivity(0, activityObj); .removeActivity(activityObj);
Provider.of<User>(context, listen: false)
.insertActivity(0, activityObj);
}, },
)); ));
}), }),
@ -246,8 +250,6 @@ class _ListActivityState extends State<ListActivity> {
), ),
), ),
), ),
); );
} }
} }

@ -1,7 +1,6 @@
import 'package:dotted_dashed_line/dotted_dashed_line.dart'; import 'package:dotted_dashed_line/dotted_dashed_line.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'package:smartfit_app_mobile/Modele/manager_file.dart'; import 'package:smartfit_app_mobile/modele/user.dart';
import 'package:smartfit_app_mobile/Modele/user.dart';
import 'package:smartfit_app_mobile/common_widget/round_button.dart'; import 'package:smartfit_app_mobile/common_widget/round_button.dart';
import 'package:fl_chart/fl_chart.dart'; import 'package:fl_chart/fl_chart.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
@ -21,8 +20,6 @@ class HomeView extends StatefulWidget {
State<HomeView> createState() => _HomeViewState(); State<HomeView> createState() => _HomeViewState();
} }
class _HomeViewState extends State<HomeView> { class _HomeViewState extends State<HomeView> {
List<FlSpot> bpmSecondes = [FlSpot(0, 30)]; List<FlSpot> bpmSecondes = [FlSpot(0, 30)];
List<FlSpot> bpmSecondes2 = []; List<FlSpot> bpmSecondes2 = [];
@ -49,6 +46,7 @@ class _HomeViewState extends State<HomeView> {
liste[i] = FlSpot(liste[i].x, liste[i].y * normalisationFactor); liste[i] = FlSpot(liste[i].x, liste[i].y * normalisationFactor);
} }
} }
List lastWorkoutArr = [ List lastWorkoutArr = [
{ {
"name": "Full Body Workout", "name": "Full Body Workout",
@ -91,26 +89,25 @@ class _HomeViewState extends State<HomeView> {
var media = MediaQuery.of(context).size; var media = MediaQuery.of(context).size;
print("test3"); print("test3");
if (Provider.of<User>(context, listen: true).listActivity.isNotEmpty) { if (Provider.of<User>(context, listen: true).listActivity.isNotEmpty) {
print("rempli"); print("rempli");
bpmSecondes = Provider.of<User>(context).listActivity[0].getHeartRateWithTime(); bpmSecondes =
vitesseSecondes = Provider.of<User>(context).listActivity[0].getSpeedWithTime(); Provider.of<User>(context).listActivity[0].getHeartRateWithTime();
altitudeSecondes = Provider.of<User>(context).listActivity[0].getAltitudeWithTime(); vitesseSecondes =
Provider.of<User>(context).listActivity[0].getSpeedWithTime();
altitudeSecondes =
Provider.of<User>(context).listActivity[0].getAltitudeWithTime();
calories = Provider.of<User>(context).listActivity[0].getCalories()[0].y; calories = Provider.of<User>(context).listActivity[0].getCalories()[0].y;
normaliserDeuxiemeElement(vitesseSecondes); normaliserDeuxiemeElement(vitesseSecondes);
normaliserDeuxiemeElement(altitudeSecondes); normaliserDeuxiemeElement(altitudeSecondes);
bpmSecondes2 = List.from(bpmSecondes) ; bpmSecondes2 = List.from(bpmSecondes);
normaliserDeuxiemeElement(bpmSecondes2); normaliserDeuxiemeElement(bpmSecondes2);
} else { } else {
print("vide"); print("vide");
} }
print("test4"); print("test4");
final lineBarsData = [ final lineBarsData = [
LineChartBarData( LineChartBarData(
spots: bpmSecondes, spots: bpmSecondes,
@ -344,10 +341,10 @@ class _HomeViewState extends State<HomeView> {
fontWeight: FontWeight.w700, fontWeight: FontWeight.w700,
fontSize: 18), fontSize: 18),
decoration: InputDecoration( decoration: InputDecoration(
border: InputBorder.none, // Ajoutez cette ligne pour supprimer la bordure border: InputBorder
.none, // Ajoutez cette ligne pour supprimer la bordure
), ),
), ),
], ],
), ),
), ),
@ -414,7 +411,8 @@ class _HomeViewState extends State<HomeView> {
touchTooltipData: LineTouchTooltipData( touchTooltipData: LineTouchTooltipData(
tooltipBgColor: TColor.secondaryColor1, tooltipBgColor: TColor.secondaryColor1,
tooltipRoundedRadius: 20, tooltipRoundedRadius: 20,
getTooltipItems: (List<LineBarSpot> lineBarsSpot) { getTooltipItems:
(List<LineBarSpot> lineBarsSpot) {
return lineBarsSpot.map((lineBarSpot) { return lineBarsSpot.map((lineBarSpot) {
bpmController.text = "${lineBarSpot.y} BPM"; bpmController.text = "${lineBarSpot.y} BPM";
return LineTooltipItem( return LineTooltipItem(
@ -729,7 +727,7 @@ class _HomeViewState extends State<HomeView> {
), ),
child: FittedBox( child: FittedBox(
child: Text( child: Text(
'${200-calories.toInt()} kCal\n restantes', '${200 - calories.toInt()} kCal\n restantes',
textAlign: TextAlign.center, textAlign: TextAlign.center,
style: TextStyle( style: TextStyle(
color: TColor.white, color: TColor.white,
@ -742,7 +740,8 @@ class _HomeViewState extends State<HomeView> {
backStrokeWidth: 10, backStrokeWidth: 10,
progressColors: TColor.primaryG, progressColors: TColor.primaryG,
backColor: Colors.grey.shade100, backColor: Colors.grey.shade100,
valueNotifier: ValueNotifier(calories/200*100), valueNotifier: ValueNotifier(
calories / 200 * 100),
startAngle: -180, startAngle: -180,
), ),
], ],
@ -842,7 +841,7 @@ class _HomeViewState extends State<HomeView> {
getTooltipItems: (List<LineBarSpot> lineBarsSpot) { getTooltipItems: (List<LineBarSpot> lineBarsSpot) {
return lineBarsSpot.map((lineBarSpot) { return lineBarsSpot.map((lineBarSpot) {
return LineTooltipItem( return LineTooltipItem(
"Seconde ${lineBarSpot.x.toInt()/10} ", "Seconde ${lineBarSpot.x.toInt() / 10} ",
const TextStyle( const TextStyle(
color: Colors.white, color: Colors.white,
fontSize: 10, fontSize: 10,
@ -898,8 +897,6 @@ class _HomeViewState extends State<HomeView> {
); );
} }
List<PieChartSectionData> showingSections() { List<PieChartSectionData> showingSections() {
return List.generate( return List.generate(
2, 2,
@ -974,8 +971,7 @@ class _HomeViewState extends State<HomeView> {
belowBarData: BarAreaData( belowBarData: BarAreaData(
show: false, show: false,
), ),
spots: bpmSecondes2 spots: bpmSecondes2,
,
); );
SideTitles get rightTitles => SideTitles( SideTitles get rightTitles => SideTitles(
@ -1021,7 +1017,7 @@ class _HomeViewState extends State<HomeView> {
SideTitles get bottomTitles => SideTitles( SideTitles get bottomTitles => SideTitles(
showTitles: true, showTitles: true,
reservedSize: 50, reservedSize: 50,
interval:1, interval: 1,
getTitlesWidget: bottomTitleWidgets, getTitlesWidget: bottomTitleWidgets,
); );

@ -2,12 +2,10 @@ import 'dart:convert';
import 'package:crypto/crypto.dart'; import 'package:crypto/crypto.dart';
import 'package:flutter_svg/svg.dart'; import 'package:flutter_svg/svg.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'package:smartfit_app_mobile/Modele/Api/i_data_strategy.dart'; import 'package:smartfit_app_mobile/modele/api/i_data_strategy.dart';
import 'package:smartfit_app_mobile/Modele/Api/request_api.dart'; import 'package:smartfit_app_mobile/modele/api/request_api.dart';
import 'package:smartfit_app_mobile/Modele/user.dart'; import 'package:smartfit_app_mobile/modele/user.dart';
import 'package:smartfit_app_mobile/View/activity/list_activity.dart'; import 'package:smartfit_app_mobile/view/main_tab/main_tab_view.dart';
import 'package:smartfit_app_mobile/View/main_tab/main_tab_view.dart';
import 'package:smartfit_app_mobile/View/page_test.dart';
import 'package:smartfit_app_mobile/common/colo_extension.dart'; import 'package:smartfit_app_mobile/common/colo_extension.dart';
import 'package:smartfit_app_mobile/common_widget/round_button.dart'; import 'package:smartfit_app_mobile/common_widget/round_button.dart';
import 'package:smartfit_app_mobile/common_widget/round_text_field.dart'; import 'package:smartfit_app_mobile/common_widget/round_text_field.dart';

@ -1,9 +1,9 @@
import 'dart:convert'; import 'dart:convert';
import 'package:crypto/crypto.dart'; import 'package:crypto/crypto.dart';
import 'package:flutter_svg/svg.dart'; import 'package:flutter_svg/svg.dart';
import 'package:smartfit_app_mobile/Modele/Api/i_data_strategy.dart'; import 'package:smartfit_app_mobile/modele/api/i_data_strategy.dart';
import 'package:smartfit_app_mobile/Modele/Api/request_api.dart'; import 'package:smartfit_app_mobile/modele/api/request_api.dart';
import 'package:smartfit_app_mobile/View/login/login_view.dart'; import 'package:smartfit_app_mobile/view/login/login_view.dart';
import 'package:smartfit_app_mobile/common/colo_extension.dart'; import 'package:smartfit_app_mobile/common/colo_extension.dart';
import 'package:smartfit_app_mobile/common_widget/round_button.dart'; import 'package:smartfit_app_mobile/common_widget/round_button.dart';
import 'package:smartfit_app_mobile/common_widget/round_text_field.dart'; import 'package:smartfit_app_mobile/common_widget/round_text_field.dart';

@ -1,11 +1,10 @@
import 'package:smartfit_app_mobile/View/activity/list_activity.dart'; import 'package:smartfit_app_mobile/view/activity/list_activity.dart';
import 'package:smartfit_app_mobile/common/colo_extension.dart'; import 'package:smartfit_app_mobile/common/colo_extension.dart';
import 'package:smartfit_app_mobile/common_widget/tab_button.dart'; import 'package:smartfit_app_mobile/common_widget/tab_button.dart';
import 'package:smartfit_app_mobile/view/activity/activity.dart'; import 'package:smartfit_app_mobile/view/activity/activity.dart';
import 'package:smartfit_app_mobile/view/home/home_view.dart'; import 'package:smartfit_app_mobile/view/home/home_view.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:smartfit_app_mobile/view/map/my_map.dart'; import 'package:smartfit_app_mobile/view/map/my_map.dart';
import 'package:smartfit_app_mobile/view/page_test.dart';
import 'package:smartfit_app_mobile/view/profile/profile_view.dart'; import 'package:smartfit_app_mobile/view/profile/profile_view.dart';
class MainTabView extends StatefulWidget { class MainTabView extends StatefulWidget {

@ -7,12 +7,9 @@ import 'package:path_provider/path_provider.dart';
import 'package:file_picker/file_picker.dart'; import 'package:file_picker/file_picker.dart';
import 'dart:io'; import 'dart:io';
import 'package:provider/provider.dart'; import 'package:smartfit_app_mobile/modele/api/i_data_strategy.dart';
import 'package:smartfit_app_mobile/Modele/Api/i_data_strategy.dart'; import 'package:smartfit_app_mobile/modele/api/request_api.dart';
import 'package:smartfit_app_mobile/Modele/Api/request_api.dart'; import 'package:smartfit_app_mobile/modele/manager_file.dart';
import 'package:smartfit_app_mobile/Modele/activity.dart';
import 'package:smartfit_app_mobile/Modele/manager_file.dart';
import 'package:smartfit_app_mobile/Modele/user.dart';
import 'package:tuple/tuple.dart'; import 'package:tuple/tuple.dart';
// ----------- File --------------- // // ----------- File --------------- //
@ -83,7 +80,6 @@ class _TestPage extends State<TestPage> {
File f = File(await x.localPath + "/fit2.csv"); File f = File(await x.localPath + "/fit2.csv");
f.createSync(); f.createSync();
await f.writeAsString(csv); await f.writeAsString(csv);
} }
} }
@ -211,8 +207,7 @@ class _TestPage extends State<TestPage> {
onPressed: createUser, child: const Text("Create User")), onPressed: createUser, child: const Text("Create User")),
ElevatedButton( ElevatedButton(
onPressed: deleteUser, child: const Text("Delete User")), onPressed: deleteUser, child: const Text("Delete User")),
ElevatedButton( ElevatedButton(onPressed: readFile, child: const Text("ReadFile")),
onPressed: readFile, child: const Text("ReadFile")),
ElevatedButton(onPressed: getFiles, child: const Text("getFiles")), ElevatedButton(onPressed: getFiles, child: const Text("getFiles")),
ElevatedButton( ElevatedButton(
onPressed: modifAttribut, child: const Text("modif attribut")), onPressed: modifAttribut, child: const Text("modif attribut")),

Loading…
Cancel
Save