From 5d05b0934588790f9abf2ac32568888b5f67c735 Mon Sep 17 00:00:00 2001 From: Elham Rababh Date: Tue, 3 Aug 2021 15:44:51 +0300 Subject: [PATCH] PAP-712 : fixes on Blood sugar --- .../my_trackers/blood_suger/BloodMonthly.dart | 64 +++++++++++++------ .../my_trackers/blood_suger/BloodYeaPage.dart | 26 ++++---- .../blood_suger/blood_sugar_home_page.dart | 5 +- .../blood_suger/blood_sugar_weekly_page.dart | 21 +++--- .../my_trackers/widget/LineChartCurved.dart | 21 ++++-- .../widget/MonthCurvedChartBloodPressure.dart | 12 ++-- lib/uitl/translations_delegate_base.dart | 1 + 7 files changed, 94 insertions(+), 56 deletions(-) diff --git a/lib/pages/medical/my_trackers/blood_suger/BloodMonthly.dart b/lib/pages/medical/my_trackers/blood_suger/BloodMonthly.dart index 1294c5dd..a0f37c83 100644 --- a/lib/pages/medical/my_trackers/blood_suger/BloodMonthly.dart +++ b/lib/pages/medical/my_trackers/blood_suger/BloodMonthly.dart @@ -1,6 +1,7 @@ import 'package:diplomaticquarterapp/core/model/my_trakers/blood_sugar/DiabtecPatientResult.dart'; import 'package:diplomaticquarterapp/core/model/my_trakers/chartData/WeekChartDate.dart'; import 'package:diplomaticquarterapp/core/model/my_trakers/chartData/YearMonthlyChartDate.dart'; +import 'package:diplomaticquarterapp/core/viewModels/medical/blood_sugar_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart'; import 'package:diplomaticquarterapp/pages/medical/my_trackers/widget/LineChartCurved.dart'; import 'package:diplomaticquarterapp/pages/medical/my_trackers/widget/MonthLineChartCurved.dart'; @@ -17,25 +18,32 @@ import 'package:provider/provider.dart'; class BloodMonthlyPage extends StatelessWidget { final List diabtecPatientResult; - final List timeSeriesData ; + final List timeSeriesData; + final BloodSugarViewMode bloodSugarViewMode; - const BloodMonthlyPage({Key key, this.diabtecPatientResult, this.timeSeriesData}) + + const BloodMonthlyPage( + {Key key, this.diabtecPatientResult, this.timeSeriesData, this.bloodSugarViewMode}) : super(key: key); + @override Widget build(BuildContext context) { ProjectViewModel projectViewModel = Provider.of(context); return AppScaffold( - body: timeSeriesData.isEmpty?Container(child: Center(child: Texts(TranslationBase.of(context).noDataAvailable),),): ListView( + baseViewModel: bloodSugarViewMode, + body: ListView( children: [ Container( + margin: EdgeInsets.only(top: 12, left: 8, right: 8), width: double.maxFinite, color: Colors.white, child: MonthLineChartCurved( - title: 'Sugar', - timeSeries: timeSeriesData, + title: '${TranslationBase.of(context).bloodSugar}', + timeSeries: timeSeriesData.isEmpty + ? [TimeSeriesSales3(0, 0.0)] + : timeSeriesData, indexes: timeSeriesData.length ~/ 5.5, - ) - ), + )), SizedBox( height: 12, ), @@ -49,12 +57,20 @@ class BloodMonthlyPage extends StatelessWidget { child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - Table( - border: TableBorder.symmetric( - inside: BorderSide(width: 2.0, color: Colors.grey[300]), - ), - children: fullData(context,projectViewModel), - ), + timeSeriesData.isEmpty + ? Container( + child: Center( + child: Texts( + TranslationBase.of(context).noDataAvailable), + ), + ) + : Table( + border: TableBorder.symmetric( + inside: + BorderSide(width: 2.0, color: Colors.grey[300]), + ), + children: fullData(context, projectViewModel), + ), ], ), ) @@ -63,7 +79,8 @@ class BloodMonthlyPage extends StatelessWidget { ); } - List fullData(BuildContext context,ProjectViewModel projectViewModel) { + List fullData( + BuildContext context, ProjectViewModel projectViewModel) { List tableRow = []; tableRow.add( TableRow( @@ -73,8 +90,12 @@ class BloodMonthlyPage extends StatelessWidget { decoration: BoxDecoration( color: Theme.of(context).primaryColor, borderRadius: BorderRadius.only( - topLeft: projectViewModel.isArabic? Radius.circular(0.0):Radius.circular(10.0), - topRight: projectViewModel.isArabic? Radius.circular(10.0):Radius.circular(0.0), + topLeft: projectViewModel.isArabic + ? Radius.circular(0.0) + : Radius.circular(10.0), + topRight: projectViewModel.isArabic + ? Radius.circular(10.0) + : Radius.circular(0.0), ), ), child: Center( @@ -120,8 +141,12 @@ class BloodMonthlyPage extends StatelessWidget { decoration: BoxDecoration( color: Theme.of(context).primaryColor, borderRadius: BorderRadius.only( - topLeft: projectViewModel.isArabic? Radius.circular(10.0):Radius.circular(0.0), - topRight: projectViewModel.isArabic? Radius.circular(0.0):Radius.circular(10.0), + topLeft: projectViewModel.isArabic + ? Radius.circular(10.0) + : Radius.circular(0.0), + topRight: projectViewModel.isArabic + ? Radius.circular(0.0) + : Radius.circular(10.0), ), ), child: Center( @@ -133,7 +158,6 @@ class BloodMonthlyPage extends StatelessWidget { ), height: 40), ), - ], ), ); @@ -149,7 +173,7 @@ class BloodMonthlyPage extends StatelessWidget { color: Colors.white, child: Center( child: Texts( - '${projectViewModel.isArabic ? DateUtil.getMonthDayYearDateFormattedAr(diabtec.dateChart):DateUtil.getMonthDayYearDateFormatted(diabtec.dateChart)} ', + '${projectViewModel.isArabic ? DateUtil.getMonthDayYearDateFormattedAr(diabtec.dateChart) : DateUtil.getMonthDayYearDateFormatted(diabtec.dateChart)} ', textAlign: TextAlign.center, fontSize: 12, ), diff --git a/lib/pages/medical/my_trackers/blood_suger/BloodYeaPage.dart b/lib/pages/medical/my_trackers/blood_suger/BloodYeaPage.dart index 2f654526..a11b3b14 100644 --- a/lib/pages/medical/my_trackers/blood_suger/BloodYeaPage.dart +++ b/lib/pages/medical/my_trackers/blood_suger/BloodYeaPage.dart @@ -1,5 +1,6 @@ import 'package:diplomaticquarterapp/core/model/my_trakers/blood_sugar/DiabtecPatientResult.dart'; import 'package:diplomaticquarterapp/core/model/my_trakers/chartData/WeekChartDate.dart'; +import 'package:diplomaticquarterapp/core/viewModels/medical/blood_sugar_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart'; import 'package:diplomaticquarterapp/pages/medical/my_trackers/widget/LineChartCurved.dart'; import 'package:diplomaticquarterapp/uitl/date_uitl.dart'; @@ -16,27 +17,24 @@ import 'package:provider/provider.dart'; class BloodYearPage extends StatelessWidget { final List diabtecPatientResult; final List timeSeriesData; + final BloodSugarViewMode bloodSugarViewMode; - const BloodYearPage({Key key, this.diabtecPatientResult, this.timeSeriesData}) : super(key: key); + const BloodYearPage({Key key, this.diabtecPatientResult, this.timeSeriesData, this.bloodSugarViewMode}) : super(key: key); @override Widget build(BuildContext context) { ProjectViewModel projectViewModel = Provider.of(context); return AppScaffold( - body: timeSeriesData.isEmpty - ? Container( - child: Center( - child: Texts(TranslationBase.of(context).noDataAvailable), - ), - ) - : ListView( + baseViewModel: bloodSugarViewMode, + body: ListView( children: [ Container( + margin: EdgeInsets.only(top: 12, left: 8, right: 8), width: double.maxFinite, color: Colors.white, child: LineChartCurved( - title: 'Sugar', - timeSeries: timeSeriesData, + title: '${TranslationBase.of(context).bloodSugar}', + timeSeries: timeSeriesData.isEmpty?[TimeSeriesSales2(DateTime.now(),0.0)]:timeSeriesData, indexes: timeSeriesData.length ~/ 5.5 ?? 0, )), SizedBox( @@ -52,7 +50,13 @@ class BloodYearPage extends StatelessWidget { child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - Table( + timeSeriesData.isEmpty + ? Container( + child: Center( + child: Texts(TranslationBase.of(context).noDataAvailable), + ), + ) + :Table( border: TableBorder.symmetric( inside: BorderSide(width: 2.0, color: Colors.grey[300]), ), diff --git a/lib/pages/medical/my_trackers/blood_suger/blood_sugar_home_page.dart b/lib/pages/medical/my_trackers/blood_suger/blood_sugar_home_page.dart index 7abbcceb..29989e53 100644 --- a/lib/pages/medical/my_trackers/blood_suger/blood_sugar_home_page.dart +++ b/lib/pages/medical/my_trackers/blood_suger/blood_sugar_home_page.dart @@ -75,7 +75,7 @@ class _BloodSugarHomePageState extends State ),], isShowAppBar: true, appBarTitle: TranslationBase.of(context).bloodSugar, - baseViewModel: model, + // baseViewModel: model, body: Scaffold( extendBodyBehindAppBar: true, appBar: TabBarWidget(tabController: _tabController,), @@ -93,11 +93,12 @@ class _BloodSugarHomePageState extends State ), BloodMonthlyPage( timeSeriesData: model.monthTimeSeriesData, - diabtecPatientResult: model.monthDiabtecPatientResult, + diabtecPatientResult: model.monthDiabtecPatientResult, bloodSugarViewMode: model, ), BloodYearPage( timeSeriesData: model.yearTimeSeriesData, diabtecPatientResult: model.yearDiabtecPatientResult, + bloodSugarViewMode: model, ) ], ), diff --git a/lib/pages/medical/my_trackers/blood_suger/blood_sugar_weekly_page.dart b/lib/pages/medical/my_trackers/blood_suger/blood_sugar_weekly_page.dart index 328ac246..6e1ff71b 100644 --- a/lib/pages/medical/my_trackers/blood_suger/blood_sugar_weekly_page.dart +++ b/lib/pages/medical/my_trackers/blood_suger/blood_sugar_weekly_page.dart @@ -31,20 +31,15 @@ class BloodSugarWeeklyPage extends StatelessWidget { Widget build(BuildContext context) { ProjectViewModel projectViewModel = Provider.of(context); return AppScaffold( - body: timeSeriesData.isEmpty - ? Container( - child: Center( - child: Texts(TranslationBase.of(context).noDataAvailable), - ), - ) - : ListView( + baseViewModel: bloodSugarViewMode, + body: ListView( children: [ Container( margin: EdgeInsets.only(top: 12, left: 8, right: 8), color: Colors.white, child: LineChartCurved( - title: 'Sugar', - timeSeries: timeSeriesData, + title: '${TranslationBase.of(context).bloodSugar}', + timeSeries: timeSeriesData.isEmpty?[TimeSeriesSales2(DateTime.now(),0.0)]:timeSeriesData, indexes: timeSeriesData.length ~/ 5.5, ), ), @@ -61,7 +56,13 @@ class BloodSugarWeeklyPage extends StatelessWidget { child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - Table( + timeSeriesData.isEmpty + ? Container( + child: Center( + child: Texts(TranslationBase.of(context).noDataAvailable), + ), + ) + :Table( border: TableBorder.symmetric( inside: BorderSide(width: 2.0, color: Colors.grey[300]), ), diff --git a/lib/pages/medical/my_trackers/widget/LineChartCurved.dart b/lib/pages/medical/my_trackers/widget/LineChartCurved.dart index 70f10407..3cf5c94f 100644 --- a/lib/pages/medical/my_trackers/widget/LineChartCurved.dart +++ b/lib/pages/medical/my_trackers/widget/LineChartCurved.dart @@ -24,7 +24,7 @@ class LineChartCurved extends StatelessWidget { getXaxix(); getYaxix(); return AspectRatio( - aspectRatio: 1.1, + aspectRatio: 1.0, child: Container( decoration: const BoxDecoration( borderRadius: BorderRadius.all(Radius.circular(18)), @@ -137,12 +137,19 @@ class LineChartCurved extends StatelessWidget { fontSize: 10, ), getTitles: (value) { - if (value.toInt() == 0) - return '${value.toInt()}'; - else if (value.toInt() % horizontalInterval == 0) - return '${value.toInt()}'; - else - return ''; + // if (value.toInt() == 0) + // return '${value.toInt()}'; + // else if (value.toInt() % horizontalInterval == 0) + // return '${value.toInt()}'; + // else + // return ''; + + // if (value.toInt() == 0) + // return '${value.toInt()}'; + // else if (value.toInt() % horizontalInterval == 0) + // return '${value.toInt()}'; + // else + return '${value.toInt()}';//'${(value.toInt() +(horizontalInterval - value.toInt() % horizontalInterval) )}'; }, margin: 12, ), diff --git a/lib/pages/medical/my_trackers/widget/MonthCurvedChartBloodPressure.dart b/lib/pages/medical/my_trackers/widget/MonthCurvedChartBloodPressure.dart index 135d0a95..dd432d3b 100644 --- a/lib/pages/medical/my_trackers/widget/MonthCurvedChartBloodPressure.dart +++ b/lib/pages/medical/my_trackers/widget/MonthCurvedChartBloodPressure.dart @@ -21,7 +21,7 @@ class MonthCurvedChartBloodPressure extends StatelessWidget { Widget build(BuildContext context) { getXaxix(); return AspectRatio( - aspectRatio: 1.1, + aspectRatio: 1.0, child: Container( decoration: const BoxDecoration( borderRadius: BorderRadius.all(Radius.circular(18)), @@ -143,12 +143,12 @@ class MonthCurvedChartBloodPressure extends StatelessWidget { fontSize: 10, ), getTitles: (value) { - if (value.toInt() == 0) + // if (value.toInt() == 0) + // return '${value.toInt()}'; + // else if (value.toInt() % horizontalInterval == 0) + // return '${value.toInt()}'; + // else return '${value.toInt()}'; - else if (value.toInt() % horizontalInterval == 0) - return '${value.toInt()}'; - else - return ''; }, margin: 12, ), diff --git a/lib/uitl/translations_delegate_base.dart b/lib/uitl/translations_delegate_base.dart index 4677302e..c3875466 100644 --- a/lib/uitl/translations_delegate_base.dart +++ b/lib/uitl/translations_delegate_base.dart @@ -1644,6 +1644,7 @@ class TranslationBase { localizedValues["upcoming-pay-options"][locale.languageCode]; String get pleaseAcceptTerms => localizedValues["please-accept-terms"][locale.languageCode]; + } class TranslationBaseDelegate extends LocalizationsDelegate {