Medical Report New Design

merge-requests/381/head
hussam al-habibeh 5 years ago
parent 4877bc8f6d
commit db2c086ffd

@ -3,6 +3,7 @@ import 'package:doctor_app_flutter/icons_app/doctor_app_icons.dart';
import 'package:doctor_app_flutter/models/patient/patiant_info_model.dart'; import 'package:doctor_app_flutter/models/patient/patiant_info_model.dart';
import 'package:doctor_app_flutter/screens/base/base_view.dart'; import 'package:doctor_app_flutter/screens/base/base_view.dart';
import 'package:doctor_app_flutter/screens/patients/profile/patient_profile_screen.dart'; import 'package:doctor_app_flutter/screens/patients/profile/patient_profile_screen.dart';
import 'package:doctor_app_flutter/util/helpers.dart';
import 'package:doctor_app_flutter/util/translations_delegate_base.dart'; import 'package:doctor_app_flutter/util/translations_delegate_base.dart';
import 'package:doctor_app_flutter/widgets/shared/Text.dart'; import 'package:doctor_app_flutter/widgets/shared/Text.dart';
import 'package:doctor_app_flutter/widgets/shared/app_scaffold_widget.dart'; import 'package:doctor_app_flutter/widgets/shared/app_scaffold_widget.dart';
@ -72,7 +73,6 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
child: SingleChildScrollView( child: SingleChildScrollView(
child: Center( child: Center(
child: Container( child: Container(
color: Colors.white,
child: Column( child: Column(
children: [ children: [
Padding( Padding(
@ -278,7 +278,23 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
.consulations .consulations
.length != .length !=
0) 0)
HeaderBodyExpandableNotifier( Container(
width: double.infinity,
margin: EdgeInsets.only(
top: 10, left: 10, right: 10),
padding: EdgeInsets.all(8.0),
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.all(
Radius.circular(10.0),
),
border: Border.all(
color: Colors.grey[200],
width: 0.5),
),
child: Padding(
padding: const EdgeInsets.all(15.0),
child: HeaderBodyExpandableNotifier(
headerWidget: Row( headerWidget: Row(
mainAxisAlignment: mainAxisAlignment:
MainAxisAlignment.spaceBetween, MainAxisAlignment.spaceBetween,
@ -286,7 +302,8 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
Row( Row(
children: [ children: [
Texts( Texts(
TranslationBase.of(context) TranslationBase.of(
context)
.historyOfPresentIllness .historyOfPresentIllness
.toUpperCase(), .toUpperCase(),
variant: isHistoryExpand variant: isHistoryExpand
@ -294,7 +311,7 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
: '', : '',
bold: isHistoryExpand bold: isHistoryExpand
? true ? true
: false, : true,
color: Colors.black), color: Colors.black),
], ],
), ),
@ -322,14 +339,15 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
.consulations[0] .consulations[0]
.lstCheifComplaint .lstCheifComplaint
.length, .length,
itemBuilder: itemBuilder: (BuildContext ctxt,
(BuildContext ctxt, int index) { int index) {
return Padding( return Padding(
padding: EdgeInsets.all(8.0), padding: EdgeInsets.all(8.0),
child: Container( child: Container(
child: Column( child: Column(
mainAxisAlignment: mainAxisAlignment:
MainAxisAlignment.center, MainAxisAlignment
.center,
children: [ children: [
Row( Row(
children: [ children: [
@ -338,19 +356,22 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
model model
.medicalFileList[ .medicalFileList[
0] 0]
.entityList[0] .entityList[
0]
.timelines[ .timelines[
encounterNumber] encounterNumber]
.timeLineEvents[ .timeLineEvents[
0] 0]
.consulations[0] .consulations[
0]
.lstCheifComplaint[ .lstCheifComplaint[
index] index]
.hOPI .hOPI
.trim(), .trim(),
), ),
), ),
SizedBox(width: 35.0), SizedBox(
width: 35.0),
], ],
), ),
], ],
@ -360,14 +381,12 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
}), }),
isExpand: isHistoryExpand, isExpand: isHistoryExpand,
), ),
SizedBox(
height: 30,
), ),
Container(
width: double.infinity,
height: 1,
color: Color(0xffCCCCCC),
), ),
// SizedBox(
// height: 30,
// ),
SizedBox( SizedBox(
height: 30, height: 30,
), ),
@ -380,7 +399,23 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
.consulations .consulations
.length != .length !=
0) 0)
HeaderBodyExpandableNotifier( Container(
width: double.infinity,
margin: EdgeInsets.only(
top: 10, left: 10, right: 10),
padding: EdgeInsets.all(8.0),
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.all(
Radius.circular(10.0),
),
border: Border.all(
color: Colors.grey[200],
width: 0.5),
),
child: Padding(
padding: const EdgeInsets.all(15.0),
child: HeaderBodyExpandableNotifier(
headerWidget: Row( headerWidget: Row(
mainAxisAlignment: mainAxisAlignment:
MainAxisAlignment.spaceBetween, MainAxisAlignment.spaceBetween,
@ -388,15 +423,17 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
Row( Row(
children: [ children: [
Texts( Texts(
TranslationBase.of(context) TranslationBase.of(
context)
.assessment .assessment
.toUpperCase(), .toUpperCase(),
variant: isAssessmentExpand variant:
isAssessmentExpand
? "bodyText" ? "bodyText"
: '', : '',
bold: isAssessmentExpand bold: isAssessmentExpand
? true ? true
: false, : true,
color: Colors.black), color: Colors.black),
], ],
), ),
@ -424,21 +461,23 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
.consulations[0] .consulations[0]
.lstAssessments .lstAssessments
.length, .length,
itemBuilder: itemBuilder: (BuildContext ctxt,
(BuildContext ctxt, int index) { int index) {
return Padding( return Padding(
padding: EdgeInsets.all(8.0), padding: EdgeInsets.all(8.0),
child: Container( child: Container(
child: Column( child: Column(
mainAxisAlignment: mainAxisAlignment:
MainAxisAlignment.center, MainAxisAlignment
.center,
children: [ children: [
Row( Row(
children: [ children: [
AppText( AppText(
'ICD', 'ICD',
fontWeight: fontWeight:
FontWeight.w700, FontWeight
.w700,
), ),
AppText( AppText(
model model
@ -447,18 +486,22 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
.entityList[0] .entityList[0]
.timelines[ .timelines[
encounterNumber] encounterNumber]
.timeLineEvents[0] .timeLineEvents[
.consulations[0] 0]
.consulations[
0]
.lstAssessments[ .lstAssessments[
index] index]
.iCD10 .iCD10
.trim(), .trim(),
), ),
SizedBox(width: 35.0), SizedBox(
width: 35.0),
AppText( AppText(
'Condition: ', 'Condition: ',
fontWeight: fontWeight:
FontWeight.w700, FontWeight
.w700,
), ),
AppText( AppText(
model model
@ -467,8 +510,10 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
.entityList[0] .entityList[0]
.timelines[ .timelines[
encounterNumber] encounterNumber]
.timeLineEvents[0] .timeLineEvents[
.consulations[0] 0]
.consulations[
0]
.lstAssessments[ .lstAssessments[
index] index]
.condition .condition
@ -485,13 +530,16 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
.entityList[0] .entityList[0]
.timelines[ .timelines[
encounterNumber] encounterNumber]
.timeLineEvents[0] .timeLineEvents[
.consulations[0] 0]
.consulations[
0]
.lstAssessments[ .lstAssessments[
index] index]
.description, .description,
fontWeight: fontWeight:
FontWeight.w700, FontWeight
.w700,
) )
], ],
), ),
@ -500,14 +548,17 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
AppText( AppText(
'Type: ', 'Type: ',
fontWeight: fontWeight:
FontWeight.w700, FontWeight
.w700,
), ),
AppText(model AppText(model
.medicalFileList[0] .medicalFileList[
0]
.entityList[0] .entityList[0]
.timelines[ .timelines[
encounterNumber] encounterNumber]
.timeLineEvents[0] .timeLineEvents[
0]
.consulations[0] .consulations[0]
.lstAssessments[ .lstAssessments[
index] index]
@ -519,13 +570,15 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
), ),
AppText( AppText(
model model
.medicalFileList[0] .medicalFileList[
0]
.entityList[0] .entityList[0]
.timelines[ .timelines[
encounterNumber] encounterNumber]
.timeLineEvents[0] .timeLineEvents[0]
.consulations[0] .consulations[0]
.lstAssessments[index] .lstAssessments[
index]
.remarks .remarks
.trim(), .trim(),
), ),
@ -544,14 +597,16 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
}), }),
isExpand: isAssessmentExpand, isExpand: isAssessmentExpand,
), ),
SizedBox(
height: 30,
), ),
Container(
width: double.infinity,
height: 1,
color: Color(0xffCCCCCC),
), ),
// SizedBox(
// height: 30,
// ),
// Container(
// width: double.infinity,
// height: 1,
// color: Color(0xffCCCCCC),
// ),
SizedBox( SizedBox(
height: 30, height: 30,
), ),
@ -564,7 +619,23 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
.consulations .consulations
.length != .length !=
0) 0)
HeaderBodyExpandableNotifier( Container(
width: double.infinity,
margin: EdgeInsets.only(
top: 10, left: 10, right: 10),
padding: EdgeInsets.all(8.0),
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.all(
Radius.circular(10.0),
),
border: Border.all(
color: Colors.grey[200],
width: 0.5),
),
child: Padding(
padding: const EdgeInsets.all(15.0),
child: HeaderBodyExpandableNotifier(
headerWidget: Row( headerWidget: Row(
mainAxisAlignment: mainAxisAlignment:
MainAxisAlignment.spaceBetween, MainAxisAlignment.spaceBetween,
@ -572,7 +643,8 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
Row( Row(
children: [ children: [
Texts( Texts(
TranslationBase.of(context) TranslationBase.of(
context)
.test .test
.toUpperCase(), .toUpperCase(),
variant: isProcedureExpand variant: isProcedureExpand
@ -580,7 +652,7 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
: '', : '',
bold: isProcedureExpand bold: isProcedureExpand
? true ? true
: false, : true,
color: Colors.black), color: Colors.black),
], ],
), ),
@ -609,61 +681,85 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
.consulations[0] .consulations[0]
.lstProcedure .lstProcedure
.length, .length,
itemBuilder: itemBuilder: (BuildContext ctxt,
(BuildContext ctxt, int index) { int index) {
return Padding( return Padding(
padding: EdgeInsets.all(8.0), padding: EdgeInsets.all(8.0),
child: Container( child: Container(
child: Column( child: Column(
mainAxisAlignment: mainAxisAlignment:
MainAxisAlignment.center, MainAxisAlignment
.center,
children: [ children: [
Row( Row(
children: [
Column(
children: [ children: [
AppText( AppText(
'Procedure ID: ', 'Procedure ID: ',
fontWeight: fontWeight:
FontWeight.w700, FontWeight
.w700,
), ),
AppText( AppText(
model model
.medicalFileList[ .medicalFileList[
0] 0]
.entityList[0] .entityList[
0]
.timelines[ .timelines[
encounterNumber] encounterNumber]
.timeLineEvents[0] .timeLineEvents[
.consulations[0] 0]
.consulations[
0]
.lstProcedure[ .lstProcedure[
index] index]
.procedureId .procedureId
.trim(), .trim(),
), ),
SizedBox(width: 35.0), ],
),
SizedBox(
width: 35.0),
Column(
children: [
AppText( AppText(
'Order Date: ', 'Order Date: ',
fontWeight: fontWeight:
FontWeight.w700, FontWeight
.w700,
), ),
Expanded( AppText(
child: AppText( Helpers.getDateFormatted(
DateTime
.parse(
model model
.medicalFileList[ .medicalFileList[
0] 0]
.entityList[0] .entityList[
0]
.timelines[ .timelines[
encounterNumber] encounterNumber]
.timeLineEvents[ .timeLineEvents[
0] 0]
.consulations[0] .consulations[
0]
.lstProcedure[ .lstProcedure[
index] index]
.orderDate .orderDate
.trim(), .trim(),
)),
fontSize:
13.5,
), ),
],
), ),
], ],
), ),
SizedBox(
height: 20.0,
),
Row( Row(
children: [ children: [
Expanded( Expanded(
@ -671,17 +767,20 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
model model
.medicalFileList[ .medicalFileList[
0] 0]
.entityList[0] .entityList[
0]
.timelines[ .timelines[
encounterNumber] encounterNumber]
.timeLineEvents[ .timeLineEvents[
0] 0]
.consulations[0] .consulations[
0]
.lstProcedure[ .lstProcedure[
index] index]
.procName, .procName,
fontWeight: fontWeight:
FontWeight.w700, FontWeight
.w700,
), ),
) )
], ],
@ -691,16 +790,20 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
AppText( AppText(
'CPT Code : ', 'CPT Code : ',
fontWeight: fontWeight:
FontWeight.w700, FontWeight
.w700,
), ),
AppText(model AppText(model
.medicalFileList[0] .medicalFileList[
0]
.entityList[0] .entityList[0]
.timelines[ .timelines[
encounterNumber] encounterNumber]
.timeLineEvents[0] .timeLineEvents[
0]
.consulations[0] .consulations[0]
.lstProcedure[index] .lstProcedure[
index]
.patientID .patientID
.toString()), .toString()),
], ],
@ -723,14 +826,16 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
}), }),
isExpand: isProcedureExpand, isExpand: isProcedureExpand,
), ),
SizedBox(
height: 30,
), ),
Container(
width: double.infinity,
height: 1,
color: Color(0xffCCCCCC),
), ),
// SizedBox(
// height: 30,
// ),
// Container(
// width: double.infinity,
// height: 1,
// color: Color(0xffCCCCCC),
// ),
SizedBox( SizedBox(
height: 30, height: 30,
), ),
@ -743,7 +848,23 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
.consulations .consulations
.length != .length !=
0) 0)
HeaderBodyExpandableNotifier( Container(
width: double.infinity,
margin: EdgeInsets.only(
top: 10, left: 10, right: 10),
padding: EdgeInsets.all(8.0),
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.all(
Radius.circular(10.0),
),
border: Border.all(
color: Colors.grey[200],
width: 0.5),
),
child: Padding(
padding: const EdgeInsets.all(15.0),
child: HeaderBodyExpandableNotifier(
headerWidget: Row( headerWidget: Row(
mainAxisAlignment: mainAxisAlignment:
MainAxisAlignment.spaceBetween, MainAxisAlignment.spaceBetween,
@ -751,7 +872,8 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
Row( Row(
children: [ children: [
Texts( Texts(
TranslationBase.of(context) TranslationBase.of(
context)
.physicalSystemExamination .physicalSystemExamination
.toUpperCase(), .toUpperCase(),
variant: isPhysicalExam variant: isPhysicalExam
@ -759,7 +881,7 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
: '', : '',
bold: isPhysicalExam bold: isPhysicalExam
? true ? true
: false, : true,
color: Colors.black), color: Colors.black),
], ],
), ),
@ -788,8 +910,8 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
.consulations[0] .consulations[0]
.lstPhysicalExam .lstPhysicalExam
.length, .length,
itemBuilder: itemBuilder: (BuildContext ctxt,
(BuildContext ctxt, int index) { int index) {
return Padding( return Padding(
padding: EdgeInsets.all(8.0), padding: EdgeInsets.all(8.0),
child: Container( child: Container(
@ -800,14 +922,17 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
AppText( AppText(
'Exam Type: ', 'Exam Type: ',
fontWeight: fontWeight:
FontWeight.w700, FontWeight
.w700,
), ),
AppText(model AppText(model
.medicalFileList[0] .medicalFileList[
0]
.entityList[0] .entityList[0]
.timelines[ .timelines[
encounterNumber] encounterNumber]
.timeLineEvents[0] .timeLineEvents[
0]
.consulations[0] .consulations[0]
.lstPhysicalExam[ .lstPhysicalExam[
index] index]
@ -823,13 +948,16 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
.entityList[0] .entityList[0]
.timelines[ .timelines[
encounterNumber] encounterNumber]
.timeLineEvents[0] .timeLineEvents[
.consulations[0] 0]
.consulations[
0]
.lstPhysicalExam[ .lstPhysicalExam[
index] index]
.examDesc, .examDesc,
fontWeight: fontWeight:
FontWeight.w700, FontWeight
.w700,
) )
], ],
), ),
@ -838,14 +966,17 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
AppText( AppText(
'Abnormal: ', 'Abnormal: ',
fontWeight: fontWeight:
FontWeight.w700, FontWeight
.w700,
), ),
AppText(model AppText(model
.medicalFileList[0] .medicalFileList[
0]
.entityList[0] .entityList[0]
.timelines[ .timelines[
encounterNumber] encounterNumber]
.timeLineEvents[0] .timeLineEvents[
0]
.consulations[0] .consulations[0]
.lstPhysicalExam[ .lstPhysicalExam[
index] index]
@ -857,7 +988,8 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
), ),
AppText( AppText(
model model
.medicalFileList[0] .medicalFileList[
0]
.entityList[0] .entityList[0]
.timelines[ .timelines[
encounterNumber] encounterNumber]
@ -882,14 +1014,16 @@ class _MedicalFileDetailsState extends State<MedicalFileDetails> {
}), }),
isExpand: isPhysicalExam, isExpand: isPhysicalExam,
), ),
),
),
SizedBox( SizedBox(
height: 30, height: 30,
), ),
Container( // Container(
width: double.infinity, // width: double.infinity,
height: 1, // height: 1,
color: Color(0xffCCCCCC), // color: Color(0xffCCCCCC),
), // ),
], ],
), ),
), ),

@ -1,14 +1,20 @@
import 'package:doctor_app_flutter/config/config.dart';
import 'package:doctor_app_flutter/config/size_config.dart';
import 'package:doctor_app_flutter/core/viewModel/medical_file_view_model.dart'; import 'package:doctor_app_flutter/core/viewModel/medical_file_view_model.dart';
import 'package:doctor_app_flutter/icons_app/doctor_app_icons.dart'; import 'package:doctor_app_flutter/icons_app/doctor_app_icons.dart';
import 'package:doctor_app_flutter/models/patient/patiant_info_model.dart'; import 'package:doctor_app_flutter/models/patient/patiant_info_model.dart';
import 'package:doctor_app_flutter/screens/base/base_view.dart'; import 'package:doctor_app_flutter/screens/base/base_view.dart';
import 'package:doctor_app_flutter/screens/medical-file/medical_file_details.dart'; import 'package:doctor_app_flutter/screens/medical-file/medical_file_details.dart';
import 'package:doctor_app_flutter/screens/patients/profile/patient_profile_screen.dart';
import 'package:doctor_app_flutter/util/date-utils.dart';
import 'package:doctor_app_flutter/util/helpers.dart';
import 'package:doctor_app_flutter/util/translations_delegate_base.dart'; import 'package:doctor_app_flutter/util/translations_delegate_base.dart';
import 'package:doctor_app_flutter/widgets/patients/profile/patient-page-header-widget.dart'; import 'package:doctor_app_flutter/widgets/patients/profile/patient-page-header-widget.dart';
import 'package:doctor_app_flutter/widgets/shared/app_scaffold_widget.dart'; import 'package:doctor_app_flutter/widgets/shared/app_scaffold_widget.dart';
import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart'; import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart';
import 'package:doctor_app_flutter/widgets/shared/network_base_view.dart'; import 'package:doctor_app_flutter/widgets/shared/network_base_view.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:hexcolor/hexcolor.dart';
class MedicalFilePage extends StatefulWidget { class MedicalFilePage extends StatefulWidget {
@override @override
@ -20,6 +26,10 @@ class _MedicalFilePageState extends State<MedicalFilePage> {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
final routeArgs = ModalRoute.of(context).settings.arguments as Map; final routeArgs = ModalRoute.of(context).settings.arguments as Map;
patient = routeArgs['patient'];
String patientType = routeArgs['patientType'];
String arrivalType = routeArgs['arrivalType'];
patient = routeArgs['patient']; patient = routeArgs['patient'];
return BaseView<MedicalFileViewModel>( return BaseView<MedicalFileViewModel>(
onModelReady: (model) => model.getMedicalFile(mrn: patient.patientId), onModelReady: (model) => model.getMedicalFile(mrn: patient.patientId),
@ -32,19 +42,91 @@ class _MedicalFilePageState extends State<MedicalFilePage> {
baseViewModel: model, baseViewModel: model,
child: SingleChildScrollView( child: SingleChildScrollView(
child: Container( child: Container(
color: Colors.white,
child: Column( child: Column(
// mainAxisAlignment: model.medicalFileList.length != 0 && // mainAxisAlignment: model.medicalFileList.length != 0 &&
// model.medicalFileList != null // model.medicalFileList != null
// ? MainAxisAlignment.start // ? MainAxisAlignment.start
// : MainAxisAlignment.center, // : MainAxisAlignment.center,
children: [ children: [
PatientPageHeaderWidget(patient), Container(
padding: EdgeInsets.only(left: 12.0),
child: Row(children: [
IconButton(
icon: Icon(Icons.arrow_back_ios),
color: Colors.black, //Colors.black,
onPressed: () => Navigator.pop(context),
),
AppText(
(Helpers.capitalize(patient.firstName) +
" " +
Helpers.capitalize(patient.lastName)),
fontSize: SizeConfig.textMultiplier * 3,
fontWeight: FontWeight.bold,
backGroundcolor: Colors.white,
fontFamily: 'Poppins',
),
patient.gender == 1
? Icon(
DoctorApp.male_2,
color: Colors.blue,
)
: Icon(
DoctorApp.female_1,
color: Colors.pink,
),
]),
),
Row(children: [
Padding(
padding: EdgeInsets.only(left: 12.0),
child: Container(
width: 60,
height: 60,
child: Image.asset(
patient.gender == 1
? 'assets/images/male_avatar.png'
: 'assets/images/female_avatar.png',
fit: BoxFit.cover,
),
),
),
SizedBox(
width: 10,
),
]),
Divider( Divider(
height: 1.0, height: 1.0,
thickness: 1.0, thickness: 1.0,
color: Colors.grey, color: Colors.grey,
), ),
Padding(
padding:
EdgeInsets.symmetric(horizontal: 12.0, vertical: 8.0),
child: Container(
child: Column(
children: [
Row(
children: [
AppText(
'Medical',
fontSize: 15.0,
fontWeight: FontWeight.normal,
),
],
),
Row(
children: [
AppText(
'Report',
fontSize: 35.0,
fontWeight: FontWeight.w700,
),
],
),
],
),
),
),
(model.medicalFileList != null && (model.medicalFileList != null &&
model.medicalFileList.length != 0) model.medicalFileList.length != 0)
? ListView.builder( ? ListView.builder(
@ -60,68 +142,210 @@ class _MedicalFilePageState extends State<MedicalFilePage> {
horizontal: 12.0, vertical: 8.0), horizontal: 12.0, vertical: 8.0),
child: InkWell( child: InkWell(
child: Container( child: Container(
width: double.infinity,
margin: EdgeInsets.only(
top: 10, left: 10, right: 10),
padding: EdgeInsets.all(8.0),
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.all(
Radius.circular(10.0),
),
border: Border.all(
color: Colors.grey[200], width: 0.5),
),
child: Column( child: Column(
children: [
Row(
mainAxisAlignment:
MainAxisAlignment.spaceBetween,
children: [ children: [
Row( Row(
children: [ children: [
AppText( AppText(
TranslationBase.of(context).branch + model
": ", .medicalFileList[0]
.entityList[0]
.timelines[index]
.doctorName,
fontWeight: FontWeight.w700, fontWeight: FontWeight.w700,
fontSize: 17.0,
fontFamily: 'Poppins',
)
],
), ),
AppText(model Row(
children: [
AppText(
Helpers.convertStringToDate(model
.medicalFileList[0]
.entityList[0]
.timelines[index]
.date)
.day
.toString() +
"/",
),
AppText(
Helpers.convertStringToDate(model
.medicalFileList[0]
.entityList[0]
.timelines[index]
.date)
.month
.toString() +
"/",
),
AppText(
Helpers.convertStringToDate(
model
.medicalFileList[0] .medicalFileList[0]
.entityList[0] .entityList[0]
.timelines[index] .timelines[index]
.projectName), .date)
.year
.toString(),
),
],
)
],
),
Row(
mainAxisAlignment:
MainAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.all(8.0),
child: Column(
children: [
ClipRRect(
borderRadius:
BorderRadius.all(
Radius.circular(30)),
child: Image.network(
'https://media.istockphoto.com/photos/portrait-senior-asian-doctor-over-radiography-background-asian-picture-id1019862020?k=6&m=1019862020&s=612x612&w=0&h=40frRnNnEGhNv5XRcDMRn55bIxCC3oXzbO6pOSQL_sQ=',
fit: BoxFit.cover,
width: 60,
height: 70,
),
),
], ],
), ),
),
Column(
crossAxisAlignment:
CrossAxisAlignment.start,
children: [
Row( Row(
children: [ children: [
AppText( AppText(
TranslationBase.of(context) TranslationBase.of(context)
.doctorName .clinic +
.toUpperCase() +
": ", ": ",
fontWeight: FontWeight.w700,
), ),
Expanded( AppText(
child: AppText(
model model
.medicalFileList[0] .medicalFileList[0]
.entityList[0] .entityList[0]
.timelines[index] .timelines[index]
.doctorName, .clinicName,
fontWeight: FontWeight.w700, fontWeight: FontWeight.w600,
),
), ),
], ],
), ),
Row( Row(
mainAxisAlignment:
MainAxisAlignment
.spaceBetween,
children: [ children: [
AppText( AppText(
TranslationBase.of(context) TranslationBase.of(context)
.clinicName + .branch +
": ", ": ",
fontWeight: FontWeight.w700,
), ),
AppText( AppText(
model model
.medicalFileList[0] .medicalFileList[0]
.entityList[0] .entityList[0]
.timelines[index] .timelines[index]
.clinicName, .projectName,
fontWeight: FontWeight.w600,
), ),
], ],
), ),
SizedBox(height: 10.0), ],
Divider( ),
height: 1.0, ],
thickness: 1.0, ),
color: Colors.grey.shade400, Row(
mainAxisAlignment:
MainAxisAlignment.end,
children: [
Column(
children: [
Icon(
Icons.remove_red_eye,
size: 30.0,
)
],
) )
], ],
), ),
// Row(
// children: [
// Expanded(
// child: AppText(
// model
// .medicalFileList[0]
// .entityList[0]
// .timelines[index]
// .doctorName,
// fontWeight: FontWeight.w700,
// fontSize: 18.0,
// fontFamily: 'Poppins',
// ),
// ),
// ],
// ),
// Row(
// children: [
// AppText(
// TranslationBase.of(context).branch +
// ": ",
// fontWeight: FontWeight.w700,
// ),
// AppText(model
// .medicalFileList[0]
// .entityList[0]
// .timelines[index]
// .projectName),
// ],
// ),
// Row(
// children: [
// AppText(
// TranslationBase.of(context)
// .clinicName +
// ": ",
// fontWeight: FontWeight.w700,
// ),
// AppText(
// model
// .medicalFileList[0]
// .entityList[0]
// .timelines[index]
// .clinicName,
// ),
// ],
// ),
// SizedBox(height: 10.0),
// Divider(
// height: 1.0,
// thickness: 1.0,
// color: Colors.grey.shade400,
// )
],
),
), ),
onTap: () { onTap: () {
Navigator.push( Navigator.push(

@ -566,7 +566,7 @@ packages:
name: js name: js
url: "https://pub.dartlang.org" url: "https://pub.dartlang.org"
source: hosted source: hosted
version: "0.6.2" version: "0.6.3-nullsafety.1"
json_annotation: json_annotation:
dependency: transitive dependency: transitive
description: description:
@ -608,7 +608,7 @@ packages:
name: meta name: meta
url: "https://pub.dartlang.org" url: "https://pub.dartlang.org"
source: hosted source: hosted
version: "1.3.0-nullsafety.3" version: "1.3.0-nullsafety.4"
mime: mime:
dependency: transitive dependency: transitive
description: description:
@ -900,7 +900,7 @@ packages:
name: stack_trace name: stack_trace
url: "https://pub.dartlang.org" url: "https://pub.dartlang.org"
source: hosted source: hosted
version: "1.10.0-nullsafety.1" version: "1.10.0-nullsafety.2"
stream_channel: stream_channel:
dependency: transitive dependency: transitive
description: description:
@ -1084,5 +1084,5 @@ packages:
source: hosted source: hosted
version: "2.2.1" version: "2.2.1"
sdks: sdks:
dart: ">=2.10.0 <2.11.0" dart: ">=2.10.0 <=2.11.0-213.1.beta"
flutter: ">=1.22.0 <2.0.0" flutter: ">=1.22.0 <2.0.0"

Loading…
Cancel
Save