Merge branch 'insurance' into 'master'
women health See merge request Cloud_Solution/diplomatic-quarter!65merge-update-with-lab-changes
commit
b0fa7811e5
@ -0,0 +1,146 @@
|
|||||||
|
import 'package:diplomaticquarterapp/uitl/date_uitl.dart';
|
||||||
|
import 'package:diplomaticquarterapp/widgets/buttons/button.dart';
|
||||||
|
import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
|
||||||
|
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
|
||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:flutter_datetime_picker/flutter_datetime_picker.dart';
|
||||||
|
import 'package:intl/intl.dart';
|
||||||
|
|
||||||
|
import 'delivery_due_result_page.dart';
|
||||||
|
|
||||||
|
class DeliveryDue extends StatefulWidget {
|
||||||
|
@override
|
||||||
|
_DeliveryDueState createState() => _DeliveryDueState();
|
||||||
|
}
|
||||||
|
|
||||||
|
class _DeliveryDueState extends State<DeliveryDue> {
|
||||||
|
DateTime bloodSugarDate = DateTime.now();
|
||||||
|
DateTime timeSugarDate = DateTime.now();
|
||||||
|
var dateFrom = DateTime.now();
|
||||||
|
var dateTo = DateTime.now();
|
||||||
|
var conceivedDate = DateTime.now();
|
||||||
|
var deliveryDue = DateTime.now();
|
||||||
|
var firstTrimester = DateTime.now();
|
||||||
|
var secondTrimester = DateTime.now();
|
||||||
|
var thirdTrimester = DateTime.now();
|
||||||
|
var dt = DateTime.now();
|
||||||
|
var newFormat = DateFormat("yy-MM-dd");
|
||||||
|
|
||||||
|
String getDate() {
|
||||||
|
return "${DateUtil.getMonth(bloodSugarDate.month)} ${bloodSugarDate.day}, ${bloodSugarDate.year}";
|
||||||
|
}
|
||||||
|
|
||||||
|
String getTime() {
|
||||||
|
return " ${timeSugarDate.hour}:${timeSugarDate.minute}";
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return AppScaffold(
|
||||||
|
isShowAppBar: true,
|
||||||
|
appBarTitle: 'Delivery Due Date',
|
||||||
|
body: Padding(
|
||||||
|
padding: EdgeInsets.symmetric(horizontal: 35.0, vertical: 20.0),
|
||||||
|
child: SingleChildScrollView(
|
||||||
|
child: Container(
|
||||||
|
child: Column(
|
||||||
|
//mainAxisAlignment: MainAxisAlignment.spaceAround,
|
||||||
|
children: [
|
||||||
|
Texts(
|
||||||
|
'Congratulations, you are pregnant! Now when will the new baby arrive? To estimate the due date, enter the date when the last menstrual perios began (the first day), then click calculate.',
|
||||||
|
),
|
||||||
|
Divider(
|
||||||
|
//height: 2,
|
||||||
|
thickness: 2,
|
||||||
|
),
|
||||||
|
Column(
|
||||||
|
children: [
|
||||||
|
Texts(
|
||||||
|
'What was the date of the first day of the last period?',
|
||||||
|
),
|
||||||
|
InkWell(
|
||||||
|
onTap: () {
|
||||||
|
DatePicker.showDatePicker(
|
||||||
|
context,
|
||||||
|
showTitleActions: true,
|
||||||
|
minTime: DateTime(DateTime.now().year - 1, 1, 1),
|
||||||
|
maxTime: DateTime.now(),
|
||||||
|
onConfirm: (date) {
|
||||||
|
print('confirm $date');
|
||||||
|
setState(() {
|
||||||
|
bloodSugarDate == date
|
||||||
|
? null
|
||||||
|
: bloodSugarDate = DateTime.now();
|
||||||
|
dateFrom = date.add(Duration(days: 10));
|
||||||
|
|
||||||
|
dateTo = date.add(Duration(days: 20));
|
||||||
|
conceivedDate = date.add(Duration(days: 14));
|
||||||
|
deliveryDue = date.add(Duration(days: 280));
|
||||||
|
firstTrimester = date.add(Duration(days: 85));
|
||||||
|
secondTrimester = date.add(Duration(days: 190));
|
||||||
|
thirdTrimester = date.add(Duration(days: 280));
|
||||||
|
});
|
||||||
|
},
|
||||||
|
currentTime: DateTime.now(),
|
||||||
|
);
|
||||||
|
},
|
||||||
|
child: Container(
|
||||||
|
padding: EdgeInsets.all(12),
|
||||||
|
width: double.infinity,
|
||||||
|
height: 65,
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
borderRadius: BorderRadius.circular(12),
|
||||||
|
color: Colors.white),
|
||||||
|
child: Row(
|
||||||
|
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||||
|
children: [
|
||||||
|
Row(
|
||||||
|
children: [
|
||||||
|
Icon(Icons.date_range_rounded),
|
||||||
|
Texts('Date'),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
Texts(getDate()),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
SizedBox(
|
||||||
|
height: 280.0,
|
||||||
|
),
|
||||||
|
Container(
|
||||||
|
height: 100.0,
|
||||||
|
width: 350.0,
|
||||||
|
child: Button(
|
||||||
|
label: 'CALCULATE',
|
||||||
|
onTap: () {
|
||||||
|
setState(() {
|
||||||
|
{
|
||||||
|
Navigator.push(
|
||||||
|
context,
|
||||||
|
MaterialPageRoute(
|
||||||
|
builder: (context) => DeliveryDueResult(
|
||||||
|
conceivedDate: conceivedDate,
|
||||||
|
dateFrom: dateFrom,
|
||||||
|
dateTo: dateTo,
|
||||||
|
deliveryDue: deliveryDue,
|
||||||
|
firstTrimester: firstTrimester,
|
||||||
|
secondTrimester: secondTrimester,
|
||||||
|
thirdTrimester: thirdTrimester,
|
||||||
|
)),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,106 @@
|
|||||||
|
import 'package:diplomaticquarterapp/widgets/buttons/button.dart';
|
||||||
|
import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
|
||||||
|
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
|
||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:intl/intl.dart';
|
||||||
|
|
||||||
|
class DeliveryDueResult extends StatelessWidget {
|
||||||
|
var dateFrom;
|
||||||
|
var dateTo;
|
||||||
|
var conceivedDate;
|
||||||
|
var deliveryDue;
|
||||||
|
var firstTrimester;
|
||||||
|
var secondTrimester;
|
||||||
|
var thirdTrimester;
|
||||||
|
DeliveryDueResult(
|
||||||
|
{this.dateFrom,
|
||||||
|
this.dateTo,
|
||||||
|
this.conceivedDate,
|
||||||
|
this.deliveryDue,
|
||||||
|
this.firstTrimester,
|
||||||
|
this.secondTrimester,
|
||||||
|
this.thirdTrimester});
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return AppScaffold(
|
||||||
|
isShowAppBar: true,
|
||||||
|
appBarTitle: 'Delivery Due Date',
|
||||||
|
body: Padding(
|
||||||
|
padding: EdgeInsets.symmetric(horizontal: 30.0, vertical: 12.0),
|
||||||
|
child: SingleChildScrollView(
|
||||||
|
child: Container(
|
||||||
|
height: 750.0,
|
||||||
|
child: Column(
|
||||||
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
|
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
|
||||||
|
children: [
|
||||||
|
Texts(
|
||||||
|
'The next ovulation period is estimated to be:',
|
||||||
|
fontWeight: FontWeight.w400,
|
||||||
|
),
|
||||||
|
Texts(
|
||||||
|
'From:',
|
||||||
|
fontWeight: FontWeight.w400,
|
||||||
|
),
|
||||||
|
Texts(DateFormat.yMMMEd().format(dateFrom),
|
||||||
|
fontWeight: FontWeight.w800,
|
||||||
|
fontSize: 21.0,
|
||||||
|
color: Color(0xffC5272D)),
|
||||||
|
Texts(
|
||||||
|
'To:',
|
||||||
|
fontWeight: FontWeight.w400,
|
||||||
|
),
|
||||||
|
Texts(DateFormat.yMMMEd().format(dateTo),
|
||||||
|
fontWeight: FontWeight.w800,
|
||||||
|
fontSize: 21.0,
|
||||||
|
color: Color(0xffC5272D)),
|
||||||
|
Texts(
|
||||||
|
'You have conceived on:',
|
||||||
|
fontWeight: FontWeight.w400,
|
||||||
|
),
|
||||||
|
Texts(
|
||||||
|
DateFormat.yMMMEd().format(conceivedDate),
|
||||||
|
fontWeight: FontWeight.w800,
|
||||||
|
fontSize: 21.0,
|
||||||
|
),
|
||||||
|
Texts(
|
||||||
|
'First Trimester Ends (12 weeks):',
|
||||||
|
fontWeight: FontWeight.w400,
|
||||||
|
),
|
||||||
|
Texts(
|
||||||
|
DateFormat.yMMMEd().format(firstTrimester),
|
||||||
|
fontWeight: FontWeight.w800,
|
||||||
|
fontSize: 21.0,
|
||||||
|
),
|
||||||
|
Texts(
|
||||||
|
'Second Trimester Ends (27 weeks):',
|
||||||
|
fontWeight: FontWeight.w400,
|
||||||
|
),
|
||||||
|
Texts(
|
||||||
|
DateFormat.yMMMEd().format(secondTrimester),
|
||||||
|
fontWeight: FontWeight.w800,
|
||||||
|
fontSize: 21.0,
|
||||||
|
),
|
||||||
|
Texts(
|
||||||
|
'Third Trimester, Estimated Due Date (40 weeks):',
|
||||||
|
fontWeight: FontWeight.w400,
|
||||||
|
),
|
||||||
|
Texts(
|
||||||
|
DateFormat.yMMMEd().format(thirdTrimester),
|
||||||
|
fontWeight: FontWeight.w800,
|
||||||
|
fontSize: 21.0,
|
||||||
|
),
|
||||||
|
Container(
|
||||||
|
width: 350,
|
||||||
|
child: Button(
|
||||||
|
label: 'See List Of Doctors',
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,350 @@
|
|||||||
|
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/health_calculator/ovulation_period/ovulation_result_page.dart';
|
||||||
|
import 'package:diplomaticquarterapp/uitl/date_uitl.dart';
|
||||||
|
import 'package:diplomaticquarterapp/widgets/buttons/button.dart';
|
||||||
|
import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
|
||||||
|
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
|
||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:flutter_datetime_picker/flutter_datetime_picker.dart';
|
||||||
|
import 'package:intl/intl.dart';
|
||||||
|
|
||||||
|
class OvulationPeriod extends StatefulWidget {
|
||||||
|
@override
|
||||||
|
_OvulationPeriodState createState() => _OvulationPeriodState();
|
||||||
|
}
|
||||||
|
|
||||||
|
class _OvulationPeriodState extends State<OvulationPeriod> {
|
||||||
|
DateTime bloodSugarDate = DateTime.now();
|
||||||
|
DateTime timeSugarDate = DateTime.now();
|
||||||
|
int cycleLength = 0;
|
||||||
|
int lutealPhaseLength = 0;
|
||||||
|
String selectedDate;
|
||||||
|
var dateFrom = DateTime.now();
|
||||||
|
var dateTo = DateTime.now();
|
||||||
|
var conceivedDate = DateTime.now();
|
||||||
|
var deliveryDue = DateTime.now();
|
||||||
|
var dt = DateTime.now();
|
||||||
|
var newFormat = DateFormat("yy-MM-dd");
|
||||||
|
String updatedDt;
|
||||||
|
|
||||||
|
String getTime() {
|
||||||
|
return " ${timeSugarDate.hour}:${timeSugarDate.minute}";
|
||||||
|
}
|
||||||
|
|
||||||
|
String getDate() {
|
||||||
|
return "${DateUtil.getMonth(bloodSugarDate.month)} ${bloodSugarDate.day}, ${bloodSugarDate.year}";
|
||||||
|
}
|
||||||
|
|
||||||
|
// void calculate() {}
|
||||||
|
//
|
||||||
|
// void calculateFertility(DateTime selectedDate) {const diff = Date.}
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return AppScaffold(
|
||||||
|
isShowAppBar: true,
|
||||||
|
appBarTitle: 'Ovulation Period',
|
||||||
|
body: Padding(
|
||||||
|
padding: EdgeInsets.symmetric(horizontal: 25.0, vertical: 15.0),
|
||||||
|
child: SingleChildScrollView(
|
||||||
|
child: Container(
|
||||||
|
height: 700.0,
|
||||||
|
child: Column(
|
||||||
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
|
children: [
|
||||||
|
Texts('Calculates Ovulation Period'),
|
||||||
|
SizedBox(
|
||||||
|
height: 12.0,
|
||||||
|
),
|
||||||
|
Divider(
|
||||||
|
//height: 2,
|
||||||
|
thickness: 2,
|
||||||
|
),
|
||||||
|
SizedBox(
|
||||||
|
height: 12.0,
|
||||||
|
),
|
||||||
|
InkWell(
|
||||||
|
onTap: () {
|
||||||
|
DatePicker.showDatePicker(
|
||||||
|
context,
|
||||||
|
showTitleActions: true,
|
||||||
|
minTime: DateTime(DateTime.now().year - 1, 1, 1),
|
||||||
|
maxTime: DateTime.now(),
|
||||||
|
onConfirm: (date) {
|
||||||
|
print('confirm $date');
|
||||||
|
setState(() {
|
||||||
|
bloodSugarDate = date;
|
||||||
|
dateFrom = date.add(Duration(days: 10));
|
||||||
|
updatedDt = DateFormat.yMMMEd().format(dateFrom);
|
||||||
|
|
||||||
|
dateTo = date.add(Duration(days: 20));
|
||||||
|
conceivedDate = date.add(Duration(days: 14));
|
||||||
|
deliveryDue = date.add(Duration(days: 280));
|
||||||
|
});
|
||||||
|
},
|
||||||
|
currentTime: DateTime.now(),
|
||||||
|
);
|
||||||
|
},
|
||||||
|
child: Container(
|
||||||
|
padding: EdgeInsets.all(12),
|
||||||
|
width: double.infinity,
|
||||||
|
height: 65,
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
borderRadius: BorderRadius.circular(12),
|
||||||
|
color: Colors.white),
|
||||||
|
child: Row(
|
||||||
|
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||||
|
children: [
|
||||||
|
Texts('Date'),
|
||||||
|
Texts(getDate()),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
SizedBox(
|
||||||
|
height: 5.0,
|
||||||
|
),
|
||||||
|
Texts(
|
||||||
|
'Average Cycle Length (usually 28 days):',
|
||||||
|
fontWeight: FontWeight.w400,
|
||||||
|
),
|
||||||
|
SizedBox(
|
||||||
|
height: 5.0,
|
||||||
|
),
|
||||||
|
Row(
|
||||||
|
children: [
|
||||||
|
Container(
|
||||||
|
width: 340.0,
|
||||||
|
height: 60.0,
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
color: Colors.white,
|
||||||
|
),
|
||||||
|
child: Row(
|
||||||
|
children: [
|
||||||
|
Padding(
|
||||||
|
padding: EdgeInsets.symmetric(
|
||||||
|
vertical: 10.0, horizontal: 8.0),
|
||||||
|
child: Center(
|
||||||
|
child: Container(
|
||||||
|
width: 60.0,
|
||||||
|
foregroundDecoration: BoxDecoration(
|
||||||
|
borderRadius: BorderRadius.circular(5.0),
|
||||||
|
border: Border.all(
|
||||||
|
color: Colors.blueGrey,
|
||||||
|
width: 2.0,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
child: Row(
|
||||||
|
children: <Widget>[
|
||||||
|
Expanded(
|
||||||
|
child: Center(
|
||||||
|
child: Text(cycleLength.toString()),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
Container(
|
||||||
|
height: 38.0,
|
||||||
|
child: Column(
|
||||||
|
crossAxisAlignment:
|
||||||
|
CrossAxisAlignment.center,
|
||||||
|
mainAxisAlignment:
|
||||||
|
MainAxisAlignment.center,
|
||||||
|
children: <Widget>[
|
||||||
|
Container(
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
border: Border(
|
||||||
|
bottom: BorderSide(
|
||||||
|
width: 0.5,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
child: InkWell(
|
||||||
|
child: Icon(
|
||||||
|
Icons.arrow_drop_up,
|
||||||
|
size: 18.0,
|
||||||
|
),
|
||||||
|
onTap: () {
|
||||||
|
setState(() {
|
||||||
|
if (cycleLength < 45)
|
||||||
|
cycleLength++;
|
||||||
|
});
|
||||||
|
},
|
||||||
|
),
|
||||||
|
),
|
||||||
|
InkWell(
|
||||||
|
child: Icon(
|
||||||
|
Icons.arrow_drop_down,
|
||||||
|
size: 18.0,
|
||||||
|
),
|
||||||
|
onTap: () {
|
||||||
|
setState(() {
|
||||||
|
if (cycleLength > 0)
|
||||||
|
cycleLength--;
|
||||||
|
});
|
||||||
|
},
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
Expanded(
|
||||||
|
child: Slider(
|
||||||
|
value: cycleLength.toDouble(),
|
||||||
|
min: 0,
|
||||||
|
max: 45,
|
||||||
|
onChanged: (double newValue) {
|
||||||
|
setState(() {
|
||||||
|
cycleLength = newValue.round();
|
||||||
|
});
|
||||||
|
},
|
||||||
|
activeColor: Color(0xffC5272D),
|
||||||
|
inactiveColor: Color(0xffF3C5C6),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
Texts(
|
||||||
|
'Average Luteal Phase Length (usually 14 days):',
|
||||||
|
fontWeight: FontWeight.w400,
|
||||||
|
),
|
||||||
|
SizedBox(
|
||||||
|
height: 5.0,
|
||||||
|
),
|
||||||
|
Row(
|
||||||
|
children: [
|
||||||
|
Container(
|
||||||
|
width: 340.0,
|
||||||
|
height: 60.0,
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
color: Colors.white,
|
||||||
|
),
|
||||||
|
child: Row(
|
||||||
|
children: [
|
||||||
|
Padding(
|
||||||
|
padding: EdgeInsets.symmetric(
|
||||||
|
vertical: 10.0, horizontal: 8.0),
|
||||||
|
child: Center(
|
||||||
|
child: Container(
|
||||||
|
width: 60.0,
|
||||||
|
foregroundDecoration: BoxDecoration(
|
||||||
|
borderRadius: BorderRadius.circular(5.0),
|
||||||
|
border: Border.all(
|
||||||
|
color: Colors.blueGrey,
|
||||||
|
width: 2.0,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
child: Row(
|
||||||
|
children: <Widget>[
|
||||||
|
Expanded(
|
||||||
|
child: Center(
|
||||||
|
child:
|
||||||
|
Text(lutealPhaseLength.toString()),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
Container(
|
||||||
|
height: 38.0,
|
||||||
|
child: Column(
|
||||||
|
crossAxisAlignment:
|
||||||
|
CrossAxisAlignment.center,
|
||||||
|
mainAxisAlignment:
|
||||||
|
MainAxisAlignment.center,
|
||||||
|
children: <Widget>[
|
||||||
|
Container(
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
border: Border(
|
||||||
|
bottom: BorderSide(
|
||||||
|
width: 0.5,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
child: InkWell(
|
||||||
|
child: Icon(
|
||||||
|
Icons.arrow_drop_up,
|
||||||
|
size: 18.0,
|
||||||
|
),
|
||||||
|
onTap: () {
|
||||||
|
setState(() {
|
||||||
|
if (lutealPhaseLength < 15)
|
||||||
|
lutealPhaseLength++;
|
||||||
|
});
|
||||||
|
},
|
||||||
|
),
|
||||||
|
),
|
||||||
|
InkWell(
|
||||||
|
child: Icon(
|
||||||
|
Icons.arrow_drop_down,
|
||||||
|
size: 18.0,
|
||||||
|
),
|
||||||
|
onTap: () {
|
||||||
|
setState(() {
|
||||||
|
if (lutealPhaseLength > 0)
|
||||||
|
lutealPhaseLength--;
|
||||||
|
});
|
||||||
|
},
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
Expanded(
|
||||||
|
child: Slider(
|
||||||
|
value: lutealPhaseLength.toDouble(),
|
||||||
|
min: 0,
|
||||||
|
max: 15,
|
||||||
|
onChanged: (double newValue) {
|
||||||
|
setState(() {
|
||||||
|
lutealPhaseLength = newValue.round();
|
||||||
|
});
|
||||||
|
},
|
||||||
|
activeColor: Color(0xffC5272D),
|
||||||
|
inactiveColor: Color(0xffF3C5C6),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
SizedBox(
|
||||||
|
height: 220.0,
|
||||||
|
),
|
||||||
|
Container(
|
||||||
|
height: 100.0,
|
||||||
|
width: 350.0,
|
||||||
|
child: Button(
|
||||||
|
label: 'CALCULATE',
|
||||||
|
onTap: () {
|
||||||
|
setState(() {
|
||||||
|
{
|
||||||
|
Navigator.push(
|
||||||
|
context,
|
||||||
|
MaterialPageRoute(
|
||||||
|
builder: (context) => OvulationResult(
|
||||||
|
conceivedDate: conceivedDate,
|
||||||
|
dateFrom: dateFrom,
|
||||||
|
dateTo: dateTo,
|
||||||
|
deliveryDue: deliveryDue,
|
||||||
|
)),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,96 @@
|
|||||||
|
import 'package:diplomaticquarterapp/widgets/buttons/button.dart';
|
||||||
|
import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
|
||||||
|
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
|
||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:intl/intl.dart';
|
||||||
|
|
||||||
|
class OvulationResult extends StatelessWidget {
|
||||||
|
var dateFrom;
|
||||||
|
var dateTo;
|
||||||
|
var conceivedDate;
|
||||||
|
var deliveryDue;
|
||||||
|
OvulationResult(
|
||||||
|
{this.dateFrom, this.dateTo, this.deliveryDue, this.conceivedDate});
|
||||||
|
//var newFormat = DateFormat("yy-MM-dd");
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return AppScaffold(
|
||||||
|
isShowAppBar: true,
|
||||||
|
appBarTitle: 'Ovulation Period',
|
||||||
|
body: Padding(
|
||||||
|
padding: EdgeInsets.symmetric(horizontal: 30.0, vertical: 15.0),
|
||||||
|
child: SingleChildScrollView(
|
||||||
|
child: Container(
|
||||||
|
height: 750.0,
|
||||||
|
child: Column(
|
||||||
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
|
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
|
||||||
|
children: [
|
||||||
|
Texts(
|
||||||
|
'The next ovulation period is estimated to be:',
|
||||||
|
fontWeight: FontWeight.w400,
|
||||||
|
),
|
||||||
|
Texts(
|
||||||
|
'From:',
|
||||||
|
fontWeight: FontWeight.w400,
|
||||||
|
),
|
||||||
|
Texts(
|
||||||
|
DateFormat.yMMMEd().format(dateFrom),
|
||||||
|
fontWeight: FontWeight.w800,
|
||||||
|
fontSize: 21.0,
|
||||||
|
),
|
||||||
|
Texts(
|
||||||
|
'To:',
|
||||||
|
fontWeight: FontWeight.w400,
|
||||||
|
),
|
||||||
|
Texts(
|
||||||
|
DateFormat.yMMMEd().format(dateTo),
|
||||||
|
fontWeight: FontWeight.w800,
|
||||||
|
fontSize: 21.0,
|
||||||
|
),
|
||||||
|
Texts(
|
||||||
|
'Useful Information:',
|
||||||
|
color: Color(0xffC5272D),
|
||||||
|
),
|
||||||
|
Texts(
|
||||||
|
'You have conceived on:',
|
||||||
|
fontWeight: FontWeight.w400,
|
||||||
|
),
|
||||||
|
Texts(
|
||||||
|
DateFormat.yMMMEd().format(conceivedDate),
|
||||||
|
fontWeight: FontWeight.w800,
|
||||||
|
fontSize: 21.0,
|
||||||
|
),
|
||||||
|
Texts(
|
||||||
|
'The baby\'s age right now:',
|
||||||
|
fontWeight: FontWeight.w400,
|
||||||
|
),
|
||||||
|
Texts(
|
||||||
|
'5 Weeks, 2',
|
||||||
|
fontWeight: FontWeight.w800,
|
||||||
|
fontSize: 21.0,
|
||||||
|
),
|
||||||
|
Texts(
|
||||||
|
'The delivery due date is estimated to be on the: ',
|
||||||
|
fontWeight: FontWeight.w400,
|
||||||
|
),
|
||||||
|
Texts(
|
||||||
|
DateFormat.yMMMEd().format(deliveryDue),
|
||||||
|
fontWeight: FontWeight.w800,
|
||||||
|
fontSize: 21.0,
|
||||||
|
),
|
||||||
|
Container(
|
||||||
|
width: 350,
|
||||||
|
child: Button(
|
||||||
|
label: 'See List Of Doctors',
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue