|
|
@ -1,6 +1,7 @@
|
|
|
|
import 'package:diplomaticquarterapp/core/model/my_trakers/blood_sugar/DiabtecPatientResult.dart';
|
|
|
|
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/WeekChartDate.dart';
|
|
|
|
import 'package:diplomaticquarterapp/core/model/my_trakers/chartData/YearMonthlyChartDate.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/core/viewModels/project_view_model.dart';
|
|
|
|
import 'package:diplomaticquarterapp/pages/medical/my_trackers/widget/LineChartCurved.dart';
|
|
|
|
import 'package:diplomaticquarterapp/pages/medical/my_trackers/widget/LineChartCurved.dart';
|
|
|
|
import 'package:diplomaticquarterapp/pages/medical/my_trackers/widget/MonthLineChartCurved.dart';
|
|
|
|
import 'package:diplomaticquarterapp/pages/medical/my_trackers/widget/MonthLineChartCurved.dart';
|
|
|
@ -17,25 +18,32 @@ import 'package:provider/provider.dart';
|
|
|
|
|
|
|
|
|
|
|
|
class BloodMonthlyPage extends StatelessWidget {
|
|
|
|
class BloodMonthlyPage extends StatelessWidget {
|
|
|
|
final List<DiabtecPatientResult> diabtecPatientResult;
|
|
|
|
final List<DiabtecPatientResult> diabtecPatientResult;
|
|
|
|
final List<TimeSeriesSales3> timeSeriesData ;
|
|
|
|
final List<TimeSeriesSales3> 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);
|
|
|
|
: super(key: key);
|
|
|
|
|
|
|
|
|
|
|
|
@override
|
|
|
|
@override
|
|
|
|
Widget build(BuildContext context) {
|
|
|
|
Widget build(BuildContext context) {
|
|
|
|
ProjectViewModel projectViewModel = Provider.of(context);
|
|
|
|
ProjectViewModel projectViewModel = Provider.of(context);
|
|
|
|
return AppScaffold(
|
|
|
|
return AppScaffold(
|
|
|
|
body: timeSeriesData.isEmpty?Container(child: Center(child: Texts(TranslationBase.of(context).noDataAvailable),),): ListView(
|
|
|
|
baseViewModel: bloodSugarViewMode,
|
|
|
|
|
|
|
|
body: ListView(
|
|
|
|
children: [
|
|
|
|
children: [
|
|
|
|
Container(
|
|
|
|
Container(
|
|
|
|
|
|
|
|
margin: EdgeInsets.only(top: 12, left: 8, right: 8),
|
|
|
|
width: double.maxFinite,
|
|
|
|
width: double.maxFinite,
|
|
|
|
color: Colors.white,
|
|
|
|
color: Colors.white,
|
|
|
|
child: MonthLineChartCurved(
|
|
|
|
child: MonthLineChartCurved(
|
|
|
|
title: 'Sugar',
|
|
|
|
title: '${TranslationBase.of(context).bloodSugar}',
|
|
|
|
timeSeries: timeSeriesData,
|
|
|
|
timeSeries: timeSeriesData.isEmpty
|
|
|
|
|
|
|
|
? [TimeSeriesSales3(0, 0.0)]
|
|
|
|
|
|
|
|
: timeSeriesData,
|
|
|
|
indexes: timeSeriesData.length ~/ 5.5,
|
|
|
|
indexes: timeSeriesData.length ~/ 5.5,
|
|
|
|
)
|
|
|
|
)),
|
|
|
|
),
|
|
|
|
|
|
|
|
SizedBox(
|
|
|
|
SizedBox(
|
|
|
|
height: 12,
|
|
|
|
height: 12,
|
|
|
|
),
|
|
|
|
),
|
|
|
@ -49,11 +57,19 @@ class BloodMonthlyPage extends StatelessWidget {
|
|
|
|
child: Column(
|
|
|
|
child: Column(
|
|
|
|
crossAxisAlignment: CrossAxisAlignment.start,
|
|
|
|
crossAxisAlignment: CrossAxisAlignment.start,
|
|
|
|
children: <Widget>[
|
|
|
|
children: <Widget>[
|
|
|
|
Table(
|
|
|
|
timeSeriesData.isEmpty
|
|
|
|
|
|
|
|
? Container(
|
|
|
|
|
|
|
|
child: Center(
|
|
|
|
|
|
|
|
child: Texts(
|
|
|
|
|
|
|
|
TranslationBase.of(context).noDataAvailable),
|
|
|
|
|
|
|
|
),
|
|
|
|
|
|
|
|
)
|
|
|
|
|
|
|
|
: Table(
|
|
|
|
border: TableBorder.symmetric(
|
|
|
|
border: TableBorder.symmetric(
|
|
|
|
inside: BorderSide(width: 2.0, color: Colors.grey[300]),
|
|
|
|
inside:
|
|
|
|
|
|
|
|
BorderSide(width: 2.0, color: Colors.grey[300]),
|
|
|
|
),
|
|
|
|
),
|
|
|
|
children: fullData(context,projectViewModel),
|
|
|
|
children: fullData(context, projectViewModel),
|
|
|
|
),
|
|
|
|
),
|
|
|
|
],
|
|
|
|
],
|
|
|
|
),
|
|
|
|
),
|
|
|
@ -63,7 +79,8 @@ class BloodMonthlyPage extends StatelessWidget {
|
|
|
|
);
|
|
|
|
);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
List<TableRow> fullData(BuildContext context,ProjectViewModel projectViewModel) {
|
|
|
|
List<TableRow> fullData(
|
|
|
|
|
|
|
|
BuildContext context, ProjectViewModel projectViewModel) {
|
|
|
|
List<TableRow> tableRow = [];
|
|
|
|
List<TableRow> tableRow = [];
|
|
|
|
tableRow.add(
|
|
|
|
tableRow.add(
|
|
|
|
TableRow(
|
|
|
|
TableRow(
|
|
|
@ -73,8 +90,12 @@ class BloodMonthlyPage extends StatelessWidget {
|
|
|
|
decoration: BoxDecoration(
|
|
|
|
decoration: BoxDecoration(
|
|
|
|
color: Theme.of(context).primaryColor,
|
|
|
|
color: Theme.of(context).primaryColor,
|
|
|
|
borderRadius: BorderRadius.only(
|
|
|
|
borderRadius: BorderRadius.only(
|
|
|
|
topLeft: projectViewModel.isArabic? Radius.circular(0.0):Radius.circular(10.0),
|
|
|
|
topLeft: projectViewModel.isArabic
|
|
|
|
topRight: projectViewModel.isArabic? Radius.circular(10.0):Radius.circular(0.0),
|
|
|
|
? Radius.circular(0.0)
|
|
|
|
|
|
|
|
: Radius.circular(10.0),
|
|
|
|
|
|
|
|
topRight: projectViewModel.isArabic
|
|
|
|
|
|
|
|
? Radius.circular(10.0)
|
|
|
|
|
|
|
|
: Radius.circular(0.0),
|
|
|
|
),
|
|
|
|
),
|
|
|
|
),
|
|
|
|
),
|
|
|
|
child: Center(
|
|
|
|
child: Center(
|
|
|
@ -120,8 +141,12 @@ class BloodMonthlyPage extends StatelessWidget {
|
|
|
|
decoration: BoxDecoration(
|
|
|
|
decoration: BoxDecoration(
|
|
|
|
color: Theme.of(context).primaryColor,
|
|
|
|
color: Theme.of(context).primaryColor,
|
|
|
|
borderRadius: BorderRadius.only(
|
|
|
|
borderRadius: BorderRadius.only(
|
|
|
|
topLeft: projectViewModel.isArabic? Radius.circular(10.0):Radius.circular(0.0),
|
|
|
|
topLeft: projectViewModel.isArabic
|
|
|
|
topRight: projectViewModel.isArabic? Radius.circular(0.0):Radius.circular(10.0),
|
|
|
|
? Radius.circular(10.0)
|
|
|
|
|
|
|
|
: Radius.circular(0.0),
|
|
|
|
|
|
|
|
topRight: projectViewModel.isArabic
|
|
|
|
|
|
|
|
? Radius.circular(0.0)
|
|
|
|
|
|
|
|
: Radius.circular(10.0),
|
|
|
|
),
|
|
|
|
),
|
|
|
|
),
|
|
|
|
),
|
|
|
|
child: Center(
|
|
|
|
child: Center(
|
|
|
@ -133,7 +158,6 @@ class BloodMonthlyPage extends StatelessWidget {
|
|
|
|
),
|
|
|
|
),
|
|
|
|
height: 40),
|
|
|
|
height: 40),
|
|
|
|
),
|
|
|
|
),
|
|
|
|
|
|
|
|
|
|
|
|
],
|
|
|
|
],
|
|
|
|
),
|
|
|
|
),
|
|
|
|
);
|
|
|
|
);
|
|
|
@ -149,7 +173,7 @@ class BloodMonthlyPage extends StatelessWidget {
|
|
|
|
color: Colors.white,
|
|
|
|
color: Colors.white,
|
|
|
|
child: Center(
|
|
|
|
child: Center(
|
|
|
|
child: Texts(
|
|
|
|
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,
|
|
|
|
textAlign: TextAlign.center,
|
|
|
|
fontSize: 12,
|
|
|
|
fontSize: 12,
|
|
|
|
),
|
|
|
|
),
|
|
|
|