fix the design issues

merge-requests/457/head
Mohammad Aljammal 5 years ago
parent 3449567086
commit d105e0ef5d

@ -1020,12 +1020,12 @@ class _DashboardScreenState extends State<DashboardScreen> {
), ),
hasBorder: false, hasBorder: false,
onTap: () { onTap: () {
Navigator.push( // Navigator.push(
context, // context,
MaterialPageRoute( // MaterialPageRoute(
builder: (context) => // builder: (context) =>
SearchMedicinePatientScreen(), // SearchMedicinePatientScreen(),
)); // ));
}, },
) )
], ],

@ -1,5 +1,6 @@
import 'package:doctor_app_flutter/config/config.dart'; import 'package:doctor_app_flutter/config/config.dart';
import 'package:doctor_app_flutter/config/shared_pref_kay.dart'; import 'package:doctor_app_flutter/config/shared_pref_kay.dart';
import 'package:doctor_app_flutter/config/size_config.dart';
import 'package:doctor_app_flutter/core/enum/viewstate.dart'; import 'package:doctor_app_flutter/core/enum/viewstate.dart';
import 'package:doctor_app_flutter/core/viewModel/SOAP_view_model.dart'; import 'package:doctor_app_flutter/core/viewModel/SOAP_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/project_view_model.dart'; import 'package:doctor_app_flutter/core/viewModel/project_view_model.dart';
@ -9,15 +10,18 @@ import 'package:doctor_app_flutter/models/SOAP/post_progress_note_request_model.
import 'package:doctor_app_flutter/models/doctor/doctor_profile_model.dart'; import 'package:doctor_app_flutter/models/doctor/doctor_profile_model.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/util/date-utils.dart';
import 'package:doctor_app_flutter/util/helpers.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/TextFields.dart'; import 'package:doctor_app_flutter/widgets/shared/TextFields.dart';
import 'package:doctor_app_flutter/widgets/shared/app-textfield-custom.dart';
import 'package:doctor_app_flutter/widgets/shared/app_buttons_widget.dart'; import 'package:doctor_app_flutter/widgets/shared/app_buttons_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/divider_with_spaces_around.dart'; import 'package:doctor_app_flutter/widgets/shared/divider_with_spaces_around.dart';
import 'package:doctor_app_flutter/widgets/shared/expandable-widget-header-body.dart'; import 'package:doctor_app_flutter/widgets/shared/expandable-widget-header-body.dart';
import 'package:doctor_app_flutter/widgets/shared/new_text_Field.dart';
import 'package:eva_icons_flutter/eva_icons_flutter.dart'; import 'package:eva_icons_flutter/eva_icons_flutter.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:font_awesome_flutter/font_awesome_flutter.dart'; import 'package:font_awesome_flutter/font_awesome_flutter.dart';
@ -58,6 +62,7 @@ class _UpdatePlanPageState extends State<UpdatePlanPage> {
)), )),
); );
} }
TextEditingController typeController = TextEditingController();
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
@ -84,221 +89,251 @@ class _UpdatePlanPageState extends State<UpdatePlanPage> {
}, },
builder: (_, model, w) => AppScaffold( builder: (_, model, w) => AppScaffold(
// baseViewModel: model, // baseViewModel: model,
backgroundColor: Colors.grey[200],
isShowAppBar: false, isShowAppBar: false,
body: SingleChildScrollView( body: SingleChildScrollView(
physics: ScrollPhysics(), physics: ScrollPhysics(),
child: Center( child: Center(
child: FractionallySizedBox( child: FractionallySizedBox(
widthFactor: 0.9, widthFactor: 0.95,
child: Column( child: Container(
mainAxisAlignment: MainAxisAlignment.start, margin: EdgeInsets.all(8.0),
children: [ padding: EdgeInsets.all(12.0),
SizedBox( decoration: BoxDecoration(
height: 30, shape: BoxShape.rectangle,
), color: Colors.white,
HeaderBodyExpandableNotifier( borderRadius: BorderRadius.circular(12),
headerWidget: Row( border: Border.fromBorderSide(BorderSide(
mainAxisAlignment: MainAxisAlignment.spaceBetween, color: Colors.grey.shade400,
children: [ width: 0.4,
Row( )),
children: [ ),
Texts(TranslationBase child: Column(
.of(context) mainAxisAlignment: MainAxisAlignment.start,
.progressNoteSOAP, children: [
variant: isProgressNoteExpand ? "bodyText" : '', SizedBox(
bold: isProgressNoteExpand ? true : false, height: 10,
color: Colors.black),
Icon(
FontAwesomeIcons.asterisk,
color: AppGlobal.appPrimaryColor,
size: 12,
)
],
),
InkWell(
onTap: () {
setState(() {
isProgressNoteExpand = !isProgressNoteExpand;
});
},
child: Icon(isProgressNoteExpand
? EvaIcons.minus
: EvaIcons.plus))
],
), ),
bodyWidget: Column(children: [ HeaderBodyExpandableNotifier(
SizedBox( headerWidget: Row(
height: 20, mainAxisAlignment: MainAxisAlignment.spaceAround,
),
Column(
children: [ children: [
if(widget.patientProgressNote.planNote == null) Row(
Container( children: [
margin: Texts(TranslationBase
EdgeInsets.only(left: 10, right: 10, top: 15), .of(context)
child: TextFields( .progressNoteSOAP,
variant: isProgressNoteExpand ? "bodyText" : '',
bold: isProgressNoteExpand ? true : false,
color: Colors.black),
Icon(
FontAwesomeIcons.asterisk,
color: Colors.black,
size: 12,
)
],
),
InkWell(
onTap: () {
setState(() {
isProgressNoteExpand = !isProgressNoteExpand;
});
},
child: Icon(isProgressNoteExpand
? Icons.keyboard_arrow_up
: Icons.keyboard_arrow_down))
],
),
bodyWidget: Column(children: [
SizedBox(
height: 2,
),
Column(
children: [
if(widget.patientProgressNote.planNote == null)
Container(
margin:
EdgeInsets.only(left: 10, right: 10, top: 15),
hintText: TranslationBase child: AppTextFieldCustom(
.of(context) hintText: TranslationBase.of(context).progressNote,
.addProgressNote, controller: progressNoteController,
fontSize: 13.5, minLines: 2,
onTapTextFields: () { maxLines: 4,
openProgressNote(context); inputType: TextInputType.multiline,
onChanged: (value){
// examination.remark = value;
}, },
readOnly: true, ),
// hintColor: Colors.black, ),
suffixIcon: EvaIcons.plusCircleOutline, SizedBox(
suffixIconColor: AppGlobal.appPrimaryColor, height: 20,
fontWeight: FontWeight.w600, ),
// controller: messageController, if ( widget.patientProgressNote.planNote != null)
validator: (value) { Container(
if (value == null) margin:
return TranslationBase.of(context) EdgeInsets.only(left: 5, right: 5, top: 15),
.emptyMessage; child: Column(
else crossAxisAlignment:
return null; CrossAxisAlignment.start,
}), children: [
),
SizedBox(
height: 20,
),
if ( widget.patientProgressNote.planNote != null)
Container(
margin:
EdgeInsets.only(left: 5, right: 5, top: 15),
child: Row(
mainAxisAlignment:
MainAxisAlignment.spaceBetween,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Column(
mainAxisAlignment: MainAxisAlignment.start,
children: [
Column(
mainAxisAlignment:
MainAxisAlignment.start,
crossAxisAlignment:
CrossAxisAlignment.start,
children: [
AppText(
widget.patientProgressNote.createdOn !=null?DateTime.parse(widget.patientProgressNote.createdOn).day.toString():DateTime.now().day.toString(), SizedBox(
fontWeight: FontWeight height: 8,
.bold, ),
fontSize: 16, Row(
), mainAxisAlignment: MainAxisAlignment.spaceAround,
AppText( children: [
Helpers.getMonth(widget.patientProgressNote.createdOn !=null?(DateTime.parse(widget.patientProgressNote.createdOn).month):DateTime.now().month).toUpperCase(), Row(
fontSize: 10, children: [
color: Colors.grey, Texts('Appointment No: '),
), Texts(widget.patientProgressNote.appointmentNo.toString()),
],
) ],
], ),
), AppText(
Column( widget.patientProgressNote.createdOn !=null?DateUtils.getDayMonthYearDateFormatted(DateTime.parse(widget.patientProgressNote.createdOn)):DateUtils.getDayMonthYearDateFormatted(DateTime.now()),
crossAxisAlignment: fontWeight: FontWeight
CrossAxisAlignment.start, .bold,
children: [ fontSize: 16,
Row( )
mainAxisAlignment:
MainAxisAlignment.start, ],
children: [ ),
SizedBox( Row(
height: 6, children: [
), Texts('Condition: '),
Padding( Texts(widget.patientProgressNote.mName.toString()),
padding: const EdgeInsets.all(0.0),
child: Container( ],
width: MediaQuery.of(context) ),
.size if(widget.patientProgressNote.createdByName !=null)
.width * Row(
0.6, mainAxisAlignment:
child: AppText( MainAxisAlignment.start,
progressNoteController.text, children: [
fontSize: 10, AppText(
color: Colors.grey, TranslationBase.of(context).createdBy,
), fontWeight: FontWeight.bold,
fontSize: 16,
),
AppText(
widget.patientProgressNote.createdByName??"",
fontSize: 10,
color: Colors.grey,
),
],
),
if(widget.patientProgressNote.editedByName !=null)
Row(
mainAxisAlignment:
MainAxisAlignment.start,
children: [
AppText(
TranslationBase.of(context).editedBy,
fontWeight: FontWeight.bold,
fontSize: 16,
),
AppText(
widget.patientProgressNote.editedByName??"",
fontSize: 10,
color: Colors.grey,
),
],
),
Row(
mainAxisAlignment:
MainAxisAlignment.start,
children: [
SizedBox(
height: 6,
),
Padding(
padding: const EdgeInsets.all(0.0),
child: Container(
width: MediaQuery.of(context)
.size
.width *
0.6,
child: Texts(
progressNoteController.text,
fontSize: 10,
color: Colors.grey,
), ),
), ),
], ),
), ],
SizedBox( ),
height: 8, ],
), ),
if(widget.patientProgressNote.createdByName !=null) )
Row( ],
mainAxisAlignment: )
MainAxisAlignment.start, ]),
children: [ isExpand: isProgressNoteExpand,
AppText( ),
TranslationBase.of(context).createdBy,
fontWeight: FontWeight.bold, ],
fontSize: 16, ),
),
AppText(
widget.patientProgressNote.createdByName??"",
fontSize: 10,
color: Colors.grey,
),
],
),
if(widget.patientProgressNote.editedByName !=null)
Row(
mainAxisAlignment:
MainAxisAlignment.start,
children: [
AppText(
TranslationBase.of(context).editedBy,
fontWeight: FontWeight.bold,
fontSize: 16,
),
AppText(
widget.patientProgressNote.editedByName??"",
fontSize: 10,
color: Colors.grey,
),
],
),
],
),
Column(
children: [
InkWell(
onTap: () {
openProgressNote(context);
},
child: Icon(EvaIcons.edit2Outline),
)
],
),
],
),
)
],
)
]),
isExpand: isProgressNoteExpand,
),
DividerWithSpacesAround(
height: 30,
),
AppButton(
title: TranslationBase.of(context).next,
loading: model.state == ViewState.BusyLocal,
onPressed: () {
submitPlan(model);
// widget.changePageViewIndex(2);
},
),
SizedBox(
height: 30,
),
],
), ),
), ),
), ),
), ),
bottomSheet: Container(
width: double.maxFinite,
height: 70,
child: Container(
margin: EdgeInsets.all(6),
child: Column(
children: [
Row(
children: [
Expanded(
child: AppButton(
title: 'Previous',
color: Colors.white38,
fontColor: Colors.black,
fontWeight: FontWeight.w700,
loading: model.state == ViewState.BusyLocal,
onPressed: () async {
setState(() {
widget.changePageViewIndex(2);
});
},
),
),
SizedBox(width: 5,),
Expanded(
child: AppButton(
title: TranslationBase.of(context).next,
fontWeight: FontWeight.w700,
loading: model.state == ViewState.BusyLocal,
disabled: progressNoteController.text.isEmpty,
onPressed: () async {
if(widget.patientProgressNote.planNote.isEmpty) {
Map profile = await sharedPref.getObj(DOCTOR_PROFILE);
DoctorProfileModel doctorProfile = DoctorProfileModel.fromJson(profile);
setState(() {
widget.patientProgressNote.createdByName = widget.patientProgressNote.createdByName ?? doctorProfile.doctorName;
widget.patientProgressNote.editedByName = doctorProfile.doctorName;
widget.patientProgressNote.createdOn = DateTime.now().toString();
widget.patientProgressNote.planNote = progressNoteController.text;
});
} else
submitPlan(model);
},
),
),
],
),
],
),
),
),
), ),
); );
} }
@ -333,74 +368,5 @@ class _UpdatePlanPageState extends State<UpdatePlanPage> {
} }
} }
openProgressNote(BuildContext context) {
showModalBottomSheet(
backgroundColor: Colors.white,
isScrollControlled: true,
context: context,
builder: (context) {
return FractionallySizedBox(
heightFactor: 0.6,
child: Container(
child: FractionallySizedBox(
widthFactor: 0.9,
child: ListView(
// crossAxisAlignment: CrossAxisAlignment.start,
children: [
SizedBox(
height: 16,
),
AppText(
TranslationBase.of(context).addProgressNote,
fontWeight: FontWeight.bold,
fontSize: 16,
),
SizedBox(
height: 10,
),
Container(
margin: EdgeInsets.only(left: 0, right: 0, top: 15),
child: TextFields(
hasLabelText: progressNoteController.text != ''?true:false,
showLabelText: true,
hintText: TranslationBase.of(context).addProgressNote,
fontSize: 13.5,
// hintColor: Colors.black,
fontWeight: FontWeight.w600,
maxLines: 16,
minLines: 8,
controller: progressNoteController,
validator: (value) {
if (value == null)
return TranslationBase
.of(context)
.emptyMessage;
else
return null;
}),
),SizedBox(
height: 10,
),
AppButton(
title: TranslationBase.of(context).add.toUpperCase(),
onPressed: () async{
Map profile = await sharedPref.getObj(DOCTOR_PROFILE);
DoctorProfileModel doctorProfile = DoctorProfileModel.fromJson(profile);
widget.patientProgressNote.createdByName = widget.patientProgressNote.createdByName??doctorProfile.doctorName;
widget.patientProgressNote.editedByName=doctorProfile.doctorName;
widget.patientProgressNote.createdOn= DateTime.now().toString() ;
widget.patientProgressNote.planNote = progressNoteController.text;
setState(() {
print(progressNoteController.text);
});
Navigator.of(context).pop();
},
),
]),
)),
);
});
}
} }

@ -70,75 +70,77 @@ class _UpdateSoapIndexState extends State<UpdateSoapIndex>
isShowAppBar: false, isShowAppBar: false,
// appBarTitle: TranslationBase.of(context).healthRecordInformation, // appBarTitle: TranslationBase.of(context).healthRecordInformation,
// TODO mousa removed the singleChildScrollView // TODO mousa removed the singleChildScrollView
body: Column( body: SingleChildScrollView(
crossAxisAlignment: CrossAxisAlignment.start, child: Column(
children: [ crossAxisAlignment: CrossAxisAlignment.start,
Container( children: [
decoration: BoxDecoration( Container(
boxShadow: <BoxShadow>[], decoration: BoxDecoration(
color: Theme.of(context).scaffoldBackgroundColor), boxShadow: <BoxShadow>[],
child: Column( color: Theme.of(context).scaffoldBackgroundColor),
mainAxisAlignment: MainAxisAlignment.start, child: Column(
children: <Widget>[ mainAxisAlignment: MainAxisAlignment.start,
// PatientPageHeaderWidget(patient), children: <Widget>[
PatientProfileHeaderNewDesign(patient, '7', '7', height: MediaQuery.of(context).size.height * 0.28,), // PatientPageHeaderWidget(patient),
Container( PatientProfileHeaderNewDesign(patient, '7', '7', height: MediaQuery.of(context).size.height * 0.28,),
width: double.infinity, Container(
height: 1, width: double.infinity,
color: Color(0xffCCCCCC), height: 1,
), color: Color(0xffCCCCCC),
Container(
color: Theme.of(context).scaffoldBackgroundColor,
margin: EdgeInsets.only(
left: MediaQuery.of(context).size.width * 0.05,
right: MediaQuery.of(context).size.width * 0.05),
child: StepsWidget(
index: _currentIndex,
changeCurrentTab: changePageViewIndex,
height: MediaQuery.of(context).size.height * 0.21,
), ),
), Container(
Container( color: Theme.of(context).scaffoldBackgroundColor,
color: Theme.of(context).scaffoldBackgroundColor, margin: EdgeInsets.only(
height: MediaQuery.of(context).size.height * 0.50, left: MediaQuery.of(context).size.width * 0.05,
child: PageView( right: MediaQuery.of(context).size.width * 0.05),
physics: NeverScrollableScrollPhysics(), child: StepsWidget(
controller: _controller, index: _currentIndex,
onPageChanged: (index) { changeCurrentTab: changePageViewIndex,
setState(() { height: MediaQuery.of(context).size.height * 0.21,
_currentIndex = index; ),
});
},
scrollDirection: Axis.horizontal,
children: <Widget>[
UpdateSubjectivePage(
changePageViewIndex: changePageViewIndex,
myAllergiesList: myAllergiesList,
myHistoryList: myHistoryList,
patientInfo: patient,
changeLoadingState: changeLoadingState),
UpdateObjectivePage(
changePageViewIndex: changePageViewIndex,
mySelectedExamination: mySelectedExamination,
patientInfo: patient,
changeLoadingState: changeLoadingState),
UpdateAssessmentPage(
changePageViewIndex: changePageViewIndex,
mySelectedAssessmentList: mySelectedAssessment,
patientInfo: patient,
changeLoadingState: changeLoadingState),
UpdatePlanPage(
changePageViewIndex: changePageViewIndex,
patientInfo: patient,
patientProgressNote: patientProgressNote,
changeLoadingState: changeLoadingState)
],
), ),
) Container(
], color: Theme.of(context).scaffoldBackgroundColor,
height: MediaQuery.of(context).size.height * 0.50,
child: PageView(
physics: NeverScrollableScrollPhysics(),
controller: _controller,
onPageChanged: (index) {
setState(() {
_currentIndex = index;
});
},
scrollDirection: Axis.horizontal,
children: <Widget>[
UpdateSubjectivePage(
changePageViewIndex: changePageViewIndex,
myAllergiesList: myAllergiesList,
myHistoryList: myHistoryList,
patientInfo: patient,
changeLoadingState: changeLoadingState),
UpdateObjectivePage(
changePageViewIndex: changePageViewIndex,
mySelectedExamination: mySelectedExamination,
patientInfo: patient,
changeLoadingState: changeLoadingState),
UpdateAssessmentPage(
changePageViewIndex: changePageViewIndex,
mySelectedAssessmentList: mySelectedAssessment,
patientInfo: patient,
changeLoadingState: changeLoadingState),
UpdatePlanPage(
changePageViewIndex: changePageViewIndex,
patientInfo: patient,
patientProgressNote: patientProgressNote,
changeLoadingState: changeLoadingState)
],
),
)
],
),
), ),
), ],
], ),
), ),
), ),
); );

Loading…
Cancel
Save