|
|
|
@ -14,6 +14,8 @@ import 'package:doctor_app_flutter/widgets/patients/profile/profile_medical_info
|
|
|
|
|
import 'package:doctor_app_flutter/widgets/shared/app_scaffold_widget.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart';
|
|
|
|
|
import 'package:flutter/material.dart';
|
|
|
|
|
import 'package:hexcolor/hexcolor.dart';
|
|
|
|
|
import 'package:intl/intl.dart';
|
|
|
|
|
import 'package:provider/provider.dart';
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
@ -65,7 +67,7 @@ class PatientProfileScreen extends StatelessWidget {
|
|
|
|
|
SliverList(
|
|
|
|
|
delegate: SliverChildListDelegate(
|
|
|
|
|
[
|
|
|
|
|
Column(
|
|
|
|
|
/* Column(
|
|
|
|
|
crossAxisAlignment: CrossAxisAlignment.start,
|
|
|
|
|
children: [
|
|
|
|
|
Container(
|
|
|
|
@ -560,8 +562,8 @@ class PatientProfileScreen extends StatelessWidget {
|
|
|
|
|
),
|
|
|
|
|
),
|
|
|
|
|
],
|
|
|
|
|
),
|
|
|
|
|
/* Container(
|
|
|
|
|
),*/
|
|
|
|
|
Container(
|
|
|
|
|
// margin: EdgeInsets.all(6),
|
|
|
|
|
padding: EdgeInsets.only(
|
|
|
|
|
left: 0, right: 5, bottom: 5, top: 5),
|
|
|
|
@ -661,6 +663,76 @@ class PatientProfileScreen extends StatelessWidget {
|
|
|
|
|
],
|
|
|
|
|
))
|
|
|
|
|
: SizedBox(),
|
|
|
|
|
if (SERVICES_PATIANT2[
|
|
|
|
|
int.parse(patientType)] ==
|
|
|
|
|
"List_MyOutPatient")
|
|
|
|
|
Container(
|
|
|
|
|
child: Row(
|
|
|
|
|
mainAxisAlignment:
|
|
|
|
|
MainAxisAlignment.start,
|
|
|
|
|
children: <Widget>[
|
|
|
|
|
AppText(
|
|
|
|
|
TranslationBase.of(
|
|
|
|
|
context)
|
|
|
|
|
.appointmentDate +
|
|
|
|
|
" : ",
|
|
|
|
|
fontSize: 14,
|
|
|
|
|
),
|
|
|
|
|
patient.startTime != null
|
|
|
|
|
? Container(
|
|
|
|
|
height: 15,
|
|
|
|
|
width: 60,
|
|
|
|
|
decoration:
|
|
|
|
|
BoxDecoration(
|
|
|
|
|
borderRadius:
|
|
|
|
|
BorderRadius
|
|
|
|
|
.circular(
|
|
|
|
|
25),
|
|
|
|
|
color: HexColor(
|
|
|
|
|
"#20A169"),
|
|
|
|
|
),
|
|
|
|
|
child: AppText(
|
|
|
|
|
patient
|
|
|
|
|
.startTime,
|
|
|
|
|
color: Colors
|
|
|
|
|
.white,
|
|
|
|
|
fontSize: 1.5 *
|
|
|
|
|
SizeConfig
|
|
|
|
|
.textMultiplier,
|
|
|
|
|
textAlign:
|
|
|
|
|
TextAlign
|
|
|
|
|
.center,
|
|
|
|
|
fontWeight:
|
|
|
|
|
FontWeight
|
|
|
|
|
.bold,
|
|
|
|
|
),
|
|
|
|
|
)
|
|
|
|
|
: SizedBox(),
|
|
|
|
|
SizedBox(
|
|
|
|
|
width: 3.5,
|
|
|
|
|
),
|
|
|
|
|
Container(
|
|
|
|
|
child: AppText(
|
|
|
|
|
convertDateFormat2(
|
|
|
|
|
patient
|
|
|
|
|
.appointmentDate
|
|
|
|
|
.toString()),
|
|
|
|
|
fontSize: 1.5 *
|
|
|
|
|
SizeConfig
|
|
|
|
|
.textMultiplier,
|
|
|
|
|
fontWeight:
|
|
|
|
|
FontWeight.bold,
|
|
|
|
|
),
|
|
|
|
|
),
|
|
|
|
|
SizedBox(
|
|
|
|
|
height: 0.5,
|
|
|
|
|
)
|
|
|
|
|
],
|
|
|
|
|
),
|
|
|
|
|
margin: EdgeInsets.only(
|
|
|
|
|
top: 8,
|
|
|
|
|
),
|
|
|
|
|
),
|
|
|
|
|
Row(
|
|
|
|
|
mainAxisAlignment:
|
|
|
|
|
MainAxisAlignment
|
|
|
|
@ -669,39 +741,73 @@ class PatientProfileScreen extends StatelessWidget {
|
|
|
|
|
RichText(
|
|
|
|
|
text: new TextSpan(
|
|
|
|
|
style: new TextStyle(
|
|
|
|
|
fontSize: 2.0 * SizeConfig.textMultiplier,
|
|
|
|
|
fontSize: 2.0 *
|
|
|
|
|
SizeConfig
|
|
|
|
|
.textMultiplier,
|
|
|
|
|
color: Colors.black),
|
|
|
|
|
children: <TextSpan>[
|
|
|
|
|
new TextSpan(
|
|
|
|
|
text: TranslationBase.of(context)
|
|
|
|
|
text: TranslationBase
|
|
|
|
|
.of(context)
|
|
|
|
|
.fileNumber,
|
|
|
|
|
style: TextStyle(
|
|
|
|
|
fontSize: 14,
|
|
|
|
|
fontFamily: 'Poppins')),
|
|
|
|
|
fontFamily:
|
|
|
|
|
'Poppins')),
|
|
|
|
|
new TextSpan(
|
|
|
|
|
text: patient.patientId.toString(),
|
|
|
|
|
text: patient
|
|
|
|
|
.patientId
|
|
|
|
|
.toString(),
|
|
|
|
|
style: TextStyle(
|
|
|
|
|
fontWeight: FontWeight.w700,
|
|
|
|
|
fontFamily: 'Poppins',
|
|
|
|
|
fontWeight:
|
|
|
|
|
FontWeight
|
|
|
|
|
.w700,
|
|
|
|
|
fontFamily:
|
|
|
|
|
'Poppins',
|
|
|
|
|
fontSize: 15)),
|
|
|
|
|
],
|
|
|
|
|
),
|
|
|
|
|
),
|
|
|
|
|
|
|
|
|
|
Expanded(child: Row(
|
|
|
|
|
children: [
|
|
|
|
|
AppText(
|
|
|
|
|
patient.nationalityName ??
|
|
|
|
|
patient.nationality,
|
|
|
|
|
fontWeight: FontWeight.bold,
|
|
|
|
|
fontSize: 14,
|
|
|
|
|
),
|
|
|
|
|
patient.nationality != null
|
|
|
|
|
? ClipRRect(
|
|
|
|
|
borderRadius:
|
|
|
|
|
BorderRadius.circular(20.0),
|
|
|
|
|
child: Image.network(
|
|
|
|
|
patient.nationalityFlagURL,
|
|
|
|
|
height: 25,
|
|
|
|
|
width: 30,
|
|
|
|
|
errorBuilder: (BuildContext context,
|
|
|
|
|
Object exception,
|
|
|
|
|
StackTrace stackTrace) {
|
|
|
|
|
return Text('No Image');
|
|
|
|
|
},
|
|
|
|
|
))
|
|
|
|
|
: SizedBox()
|
|
|
|
|
],
|
|
|
|
|
))
|
|
|
|
|
],
|
|
|
|
|
)
|
|
|
|
|
],
|
|
|
|
|
),
|
|
|
|
|
)
|
|
|
|
|
],
|
|
|
|
|
crossAxisAlignment: CrossAxisAlignment.start,
|
|
|
|
|
crossAxisAlignment:
|
|
|
|
|
CrossAxisAlignment.start,
|
|
|
|
|
),
|
|
|
|
|
],
|
|
|
|
|
),
|
|
|
|
|
),
|
|
|
|
|
],
|
|
|
|
|
),
|
|
|
|
|
),*/
|
|
|
|
|
),
|
|
|
|
|
],
|
|
|
|
|
),
|
|
|
|
|
),
|
|
|
|
@ -749,3 +855,40 @@ class AvatarWidget extends StatelessWidget {
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
convertDateFormat2(String str) {
|
|
|
|
|
String timeConvert;
|
|
|
|
|
const start = "/Date(";
|
|
|
|
|
const end = "+0300)";
|
|
|
|
|
|
|
|
|
|
final startIndex = str.indexOf(start);
|
|
|
|
|
final endIndex = str.indexOf(end, startIndex + start.length);
|
|
|
|
|
|
|
|
|
|
var date = new DateTime.fromMillisecondsSinceEpoch(
|
|
|
|
|
int.parse(str.substring(startIndex + start.length, endIndex)));
|
|
|
|
|
String newDate = date.year.toString() +
|
|
|
|
|
"/" +
|
|
|
|
|
date.month.toString().padLeft(2, '0') +
|
|
|
|
|
"/" +
|
|
|
|
|
date.day.toString().padLeft(2, '0');
|
|
|
|
|
|
|
|
|
|
return newDate.toString();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
isToday(date) {
|
|
|
|
|
DateTime tempDate = new DateFormat("yyyy-MM-dd").parse(date);
|
|
|
|
|
return DateFormat("yyyy-MM-dd").format(tempDate) ==
|
|
|
|
|
DateFormat("yyyy-MM-dd").format(DateTime.now());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
myBoxDecoration() {
|
|
|
|
|
return BoxDecoration(
|
|
|
|
|
border: Border(
|
|
|
|
|
top: BorderSide(
|
|
|
|
|
color: Colors.green,
|
|
|
|
|
width: 5,
|
|
|
|
|
),
|
|
|
|
|
),
|
|
|
|
|
borderRadius: BorderRadius.circular(10));
|
|
|
|
|
}
|
|
|
|
|