Merge branch 'Stepper_header' into 'development'

Stepper header

See merge request Cloud_Solution/doctor_app_flutter!473
merge-requests/474/merge
Mohammad Aljammal 5 years ago
commit 0eb78b910f

Binary file not shown.

After

Width:  |  Height:  |  Size: 760 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 595 B

@ -57,25 +57,25 @@ class _ProfileScreenState extends State<ProfileScreen> {
children: <Widget>[ children: <Widget>[
DrawerItem( DrawerItem(
TranslationBase.of(context).gender, TranslationBase.of(context).gender,
Icons.person_pin, icon: Icons.person_pin,
color: Colors.black, color: Colors.black,
subTitle: doctorProfile.genderDescription //"Male" subTitle: doctorProfile.genderDescription //"Male"
, ,
), ),
DrawerItem(TranslationBase.of(context).clinic, Icons.build, DrawerItem(TranslationBase.of(context).clinic, icon: Icons.build,
color: Colors.black, color: Colors.black,
subTitle: subTitle:
doctorProfile.clinicDescription //"Neurology Clinic", doctorProfile.clinicDescription //"Neurology Clinic",
), ),
DrawerItem( DrawerItem(
TranslationBase.of(context).hospital, TranslationBase.of(context).hospital,
Icons.local_hospital, icon: Icons.local_hospital,
color: Colors.black, color: Colors.black,
subTitle: doctorProfile.projectName, //"Al-Takkassussi", subTitle: doctorProfile.projectName, //"Al-Takkassussi",
), ),
DrawerItem( DrawerItem(
TranslationBase.of(context).speciality, TranslationBase.of(context).speciality,
Icons.crop_square, icon: Icons.crop_square,
color: Colors.black, color: Colors.black,
subTitle: doctorProfile.doctorRate == 0 subTitle: doctorProfile.doctorRate == 0
? TranslationBase.of(context).beingBad ? TranslationBase.of(context).beingBad

@ -0,0 +1,45 @@
import 'package:doctor_app_flutter/config/size_config.dart';
import 'package:doctor_app_flutter/util/translations_delegate_base.dart';
import 'package:doctor_app_flutter/widgets/patients/profile/soap_update/steps_widget.dart';
import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart';
import 'package:flutter/material.dart';
class SOAPStepHeader extends StatelessWidget {
const SOAPStepHeader({
Key key,
this.currentIndex, this.changePageViewIndex,
}) : super(key: key);
final int currentIndex;
final Function changePageViewIndex;
@override
Widget build(BuildContext context) {
return Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
AppText(
TranslationBase.of(context).createNew,
fontSize: 3 * SizeConfig.textMultiplier,
fontWeight: FontWeight.w500,
),
AppText(TranslationBase.of(context).episode,
fontSize: 3.5 * SizeConfig.textMultiplier,
fontWeight: FontWeight.bold,
),
Container(
color: Theme.of(context).scaffoldBackgroundColor,
child: StepsWidget(
index: currentIndex,
changeCurrentTab: changePageViewIndex,
height: 100,//MediaQuery.of(context).size.height * 0.17,
),
),
SizedBox(
height: 30,
),
],
);
}
}

@ -44,7 +44,6 @@ class ExpandableSOAPWidget extends StatelessWidget {
if(isRequired) if(isRequired)
Icon( Icon(
FontAwesomeIcons.asterisk, FontAwesomeIcons.asterisk,
color: AppGlobal.appPrimaryColor,
size: 12, size: 12,
) )
], ],

@ -26,13 +26,14 @@ import 'package:font_awesome_flutter/font_awesome_flutter.dart';
import 'package:hexcolor/hexcolor.dart'; import 'package:hexcolor/hexcolor.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import '../SOAP_step_header.dart';
import 'examination-item-card.dart'; import 'examination-item-card.dart';
import 'objective-add-examination-page.dart'; import 'objective-add-examination-page.dart';
class UpdateObjectivePage extends StatefulWidget { class UpdateObjectivePage extends StatefulWidget {
final Function changePageViewIndex; final Function changePageViewIndex;
final Function changeLoadingState; final Function changeLoadingState;
final int currentIndex;
final List<MySelectedExamination> mySelectedExamination; final List<MySelectedExamination> mySelectedExamination;
final PatiantInformtion patientInfo; final PatiantInformtion patientInfo;
@ -41,7 +42,7 @@ class UpdateObjectivePage extends StatefulWidget {
this.changePageViewIndex, this.changePageViewIndex,
this.mySelectedExamination, this.mySelectedExamination,
this.patientInfo, this.patientInfo,
this.changeLoadingState}); this.changeLoadingState, this.currentIndex});
@override @override
_UpdateObjectivePageState createState() => _UpdateObjectivePageState(); _UpdateObjectivePageState createState() => _UpdateObjectivePageState();
@ -108,6 +109,8 @@ class _UpdateObjectivePageState extends State<UpdateObjectivePage> {
body: Column( body: Column(
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [ children: [
SOAPStepHeader(currentIndex: widget.currentIndex, changePageViewIndex:widget.changePageViewIndex),
Expanded( Expanded(
child: SingleChildScrollView( child: SingleChildScrollView(
physics: ScrollPhysics(), physics: ScrollPhysics(),

@ -24,19 +24,23 @@ class StepsWidget extends StatelessWidget {
height: height == 0 ? 150 : height, height: height == 0 ? 150 : height,
width: MediaQuery.of(context).size.width * 0.9, width: MediaQuery.of(context).size.width * 0.9,
color: Colors.transparent, color: Colors.transparent,
child: Center( // child:,
child: Container(
width: MediaQuery.of(context).size.width * 0.86,
child: Divider(
color: Colors.grey,
height: 0.75,
thickness: 0.75,
),
),
),
), ),
Positioned( Positioned(
top: 43, top: 30
,
child: Center(
child: Container(
width: MediaQuery.of(context).size.width * 0.9,
child: Divider(
color: Colors.grey,
height: 0.75,
thickness: 0.75,
),
),
)),
Positioned(
top: 10,
left: 0, left: 0,
child: InkWell( child: InkWell(
onTap: () => changeCurrentTab(0), onTap: () => changeCurrentTab(0),
@ -87,7 +91,7 @@ class StepsWidget extends StatelessWidget {
), ),
), ),
Positioned( Positioned(
top: 43, top: 10,
left: MediaQuery left: MediaQuery
.of(context) .of(context)
.size .size
@ -143,7 +147,7 @@ class StepsWidget extends StatelessWidget {
), ),
), ),
Positioned( Positioned(
top: 43, top: 10,
left: MediaQuery left: MediaQuery
.of(context) .of(context)
.size .size
@ -201,7 +205,7 @@ class StepsWidget extends StatelessWidget {
), ),
), ),
Positioned( Positioned(
top: 43, top: 10,
right: 0, right: 0,
child: InkWell( child: InkWell(
onTap: () => index >= 3 ? changeCurrentTab(4) : null, onTap: () => index >= 3 ? changeCurrentTab(4) : null,
@ -271,7 +275,7 @@ class StepsWidget extends StatelessWidget {
), ),
), ),
Positioned( Positioned(
top: 43, top: 10,
right: 0, right: 0,
child: InkWell( child: InkWell(
onTap: () => changeCurrentTab(0), onTap: () => changeCurrentTab(0),
@ -321,7 +325,7 @@ class StepsWidget extends StatelessWidget {
), ),
), ),
Positioned( Positioned(
top: 43, top: 10,
right: MediaQuery right: MediaQuery
.of(context) .of(context)
.size .size
@ -374,7 +378,7 @@ class StepsWidget extends StatelessWidget {
), ),
), ),
Positioned( Positioned(
top: 43, top: 10,
right: MediaQuery right: MediaQuery
.of(context) .of(context)
.size .size
@ -432,7 +436,7 @@ class StepsWidget extends StatelessWidget {
), ),
), ),
Positioned( Positioned(
top: 43, top: 10,
left: 0, left: 0,
child: InkWell( child: InkWell(
onTap: () => index >= 3 ? changeCurrentTab(4) : null, onTap: () => index >= 3 ? changeCurrentTab(4) : null,

@ -1,4 +1,5 @@
import 'package:autocomplete_textfield/autocomplete_textfield.dart'; import 'package:autocomplete_textfield/autocomplete_textfield.dart';
import 'package:doctor_app_flutter/config/size_config.dart';
import 'package:doctor_app_flutter/core/enum/master_lookup_key.dart'; import 'package:doctor_app_flutter/core/enum/master_lookup_key.dart';
import 'package:doctor_app_flutter/core/model/get_medication_response_model.dart'; import 'package:doctor_app_flutter/core/model/get_medication_response_model.dart';
import 'package:doctor_app_flutter/core/viewModel/SOAP_view_model.dart'; import 'package:doctor_app_flutter/core/viewModel/SOAP_view_model.dart';
@ -41,30 +42,52 @@ class _UpdateMedicationWidgetState extends State<UpdateMedicationWidget> {
return Column( return Column(
children: [ children: [
Container( InkWell(
child: TextFields( onTap: () {
hintText: TranslationBase.of(context).addMedication, openMedicationList(context);
borderColor: HexColor('#707070'), },
borderWidth: 0.30, child: Container(
fontSize: 13.5, padding: EdgeInsets.symmetric(
borderRadius: 12, vertical: 8, horizontal: 8.0),
onTapTextFields: () { margin:
openMedicationList(context); EdgeInsets.symmetric(vertical: 8),
}, decoration: BoxDecoration(
readOnly: true, border: Border.all(
// hintColor: Colors.black, color: Colors.grey.shade400,
suffixIcon: EvaIcons.plusCircleOutline, width: 0.5),
suffixIconColor: Color(0xFF2B353E), borderRadius: BorderRadius.all(
fontWeight: FontWeight.w600, Radius.circular(8),
// controller: messageController, ),
validator: (value) { color: Colors.white,
if (value == null) ),
return TranslationBase child: Row(
.of(context) mainAxisAlignment:
.emptyMessage; MainAxisAlignment.spaceBetween,
else crossAxisAlignment:
return null; CrossAxisAlignment.center,
}), children: [
Expanded(
child: Column(
crossAxisAlignment:
CrossAxisAlignment.start,
children: [
AppText(
"${TranslationBase.of(context).addMedication}",
fontSize: SizeConfig
.textMultiplier *
1.8,
color: Colors.black,
fontWeight: FontWeight.bold,
),
],
)),
Icon(
Icons.add_box_rounded,
size: 25,
)
],
),
),
), ),
SizedBox( SizedBox(
height: 20, height: 20,
@ -78,6 +101,7 @@ class _UpdateMedicationWidgetState extends State<UpdateMedicationWidget> {
showModalBottomSheet( showModalBottomSheet(
backgroundColor: Colors.white, backgroundColor: Colors.white,
isScrollControlled: true, isScrollControlled: true,
isDismissible: false,
context: context, context: context,
builder: (context) { builder: (context) {
return AddMedication( return AddMedication(

@ -1,5 +1,6 @@
import 'package:doctor_app_flutter/client/base_app_client.dart'; import 'package:doctor_app_flutter/client/base_app_client.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/master_lookup_key.dart'; import 'package:doctor_app_flutter/core/enum/master_lookup_key.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';
@ -21,10 +22,13 @@ import 'package:doctor_app_flutter/widgets/patients/profile/soap_update/subjecti
import 'package:doctor_app_flutter/widgets/patients/profile/soap_update/subjective/update_history_widget.dart'; import 'package:doctor_app_flutter/widgets/patients/profile/soap_update/subjective/update_history_widget.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:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:hexcolor/hexcolor.dart'; import 'package:hexcolor/hexcolor.dart';
import '../SOAP_step_header.dart';
import '../expandable_SOAP_widget.dart'; import '../expandable_SOAP_widget.dart';
import '../steps_widget.dart';
class UpdateSubjectivePage extends StatefulWidget { class UpdateSubjectivePage extends StatefulWidget {
final Function changePageViewIndex; final Function changePageViewIndex;
@ -32,13 +36,14 @@ class UpdateSubjectivePage extends StatefulWidget {
final List<MySelectedAllergy> myAllergiesList; final List<MySelectedAllergy> myAllergiesList;
final List<MySelectedHistory> myHistoryList; final List<MySelectedHistory> myHistoryList;
final PatiantInformtion patientInfo; final PatiantInformtion patientInfo;
final int currentIndex;
UpdateSubjectivePage( UpdateSubjectivePage(
{Key key, {Key key,
this.changePageViewIndex, this.changePageViewIndex,
this.myAllergiesList, this.myAllergiesList,
this.myHistoryList, this.myHistoryList,
this.patientInfo, this.changeLoadingState}); this.patientInfo, this.changeLoadingState, this.currentIndex});
@override @override
_UpdateSubjectivePageState createState() => _UpdateSubjectivePageState(); _UpdateSubjectivePageState createState() => _UpdateSubjectivePageState();
@ -231,10 +236,10 @@ class _UpdateSubjectivePageState extends State<UpdateSubjectivePage> {
widthFactor: 0.9, widthFactor: 0.9,
child: Column( child: Column(
mainAxisAlignment: MainAxisAlignment.start, mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [ children: [
SizedBox(
height: 30, SOAPStepHeader(currentIndex: widget.currentIndex, changePageViewIndex:widget.changePageViewIndex),
),
ExpandableSOAPWidget( ExpandableSOAPWidget(
headerTitle: TranslationBase.of(context) headerTitle: TranslationBase.of(context)
.chiefComplaints .chiefComplaints
@ -316,11 +321,11 @@ class _UpdateSubjectivePageState extends State<UpdateSubjectivePage> {
decoration: BoxDecoration( decoration: BoxDecoration(
color: Colors.white, color: Colors.white,
borderRadius: BorderRadius.all( borderRadius: BorderRadius.all(
Radius.circular(10.0), Radius.circular(0.0),
), ),
border: Border.all( border: Border.all(
color: HexColor('#707070'), color: HexColor('#707070'),
width: 0.30), width: 0),
), ),
height: MediaQuery height: MediaQuery
.of(context) .of(context)
@ -535,3 +540,4 @@ class _UpdateSubjectivePageState extends State<UpdateSubjectivePage> {

@ -14,6 +14,7 @@ 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/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/patients/profile/soap_update/subjective/update_subjective_page.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-textfield-custom.dart';
@ -28,6 +29,7 @@ import 'package:flutter/material.dart';
import 'package:font_awesome_flutter/font_awesome_flutter.dart'; import 'package:font_awesome_flutter/font_awesome_flutter.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'SOAP_step_header.dart';
import 'custom_validation_error.dart'; import 'custom_validation_error.dart';
class UpdateAssessmentPage extends StatefulWidget { class UpdateAssessmentPage extends StatefulWidget {
@ -35,13 +37,13 @@ class UpdateAssessmentPage extends StatefulWidget {
List<MySelectedAssessment> mySelectedAssessmentList; List<MySelectedAssessment> mySelectedAssessmentList;
final PatiantInformtion patientInfo; final PatiantInformtion patientInfo;
final Function changeLoadingState; final Function changeLoadingState;
final int currentIndex;
UpdateAssessmentPage( UpdateAssessmentPage(
{Key key, {Key key,
this.changePageViewIndex, this.changePageViewIndex,
this.mySelectedAssessmentList, this.mySelectedAssessmentList,
this.patientInfo, this.patientInfo,
this.changeLoadingState}); this.changeLoadingState, this.currentIndex});
@override @override
_UpdateAssessmentPageState createState() => _UpdateAssessmentPageState(); _UpdateAssessmentPageState createState() => _UpdateAssessmentPageState();
@ -122,9 +124,7 @@ class _UpdateAssessmentPageState extends State<UpdateAssessmentPage> {
child: Column( child: Column(
mainAxisAlignment: MainAxisAlignment.start, mainAxisAlignment: MainAxisAlignment.start,
children: [ children: [
SizedBox( SOAPStepHeader(currentIndex: widget.currentIndex, changePageViewIndex:widget.changePageViewIndex),
height: 30,
),
Container( Container(
width: double.infinity, width: double.infinity,
margin: EdgeInsets.only(top: 10, left: 10, right: 10), margin: EdgeInsets.only(top: 10, left: 10, right: 10),
@ -689,7 +689,8 @@ class _AddAssessmentDetailsState extends State<AddAssessmentDetails> {
child: Column( child: Column(
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
children: [ children: [
SizedBox(
SizedBox(
height: 16, height: 16,
), ),
Row( Row(

@ -1,6 +1,4 @@
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';
@ -14,31 +12,33 @@ 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/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/patients/profile/soap_update/subjective/update_subjective_page.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/app-textfield-custom.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/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: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';
import 'SOAP_step_header.dart';
class UpdatePlanPage extends StatefulWidget { class UpdatePlanPage extends StatefulWidget {
final Function changePageViewIndex; final Function changePageViewIndex;
final PatiantInformtion patientInfo; final PatiantInformtion patientInfo;
final Function changeLoadingState; final Function changeLoadingState;
GetPatientProgressNoteResModel patientProgressNote;
final int currentIndex;
GetPatientProgressNoteResModel patientProgressNote;
UpdatePlanPage( UpdatePlanPage(
{Key key, {Key key,
this.changePageViewIndex, this.changePageViewIndex,
this.patientInfo, this.patientInfo,
this.changeLoadingState, this.changeLoadingState,
this.patientProgressNote}); this.patientProgressNote,
this.currentIndex});
@override @override
_UpdatePlanPageState createState() => _UpdatePlanPageState(); _UpdatePlanPageState createState() => _UpdatePlanPageState();
@ -108,117 +108,137 @@ class _UpdatePlanPageState extends State<UpdatePlanPage> {
child: Center( child: Center(
child: FractionallySizedBox( child: FractionallySizedBox(
widthFactor: 0.95, widthFactor: 0.95,
child: Container( child: Column(
margin: EdgeInsets.all(8.0), children: [
padding: EdgeInsets.all(12.0), SOAPStepHeader(currentIndex: widget.currentIndex, changePageViewIndex:widget.changePageViewIndex),
decoration: BoxDecoration(
shape: BoxShape.rectangle, SizedBox(height: 10,),
color: Colors.white, Container(
borderRadius: BorderRadius.circular(12), margin: EdgeInsets.all(8.0),
border: Border.fromBorderSide(BorderSide( padding: EdgeInsets.all(12.0),
color: Colors.grey.shade400, decoration: BoxDecoration(
width: 0.4, shape: BoxShape.rectangle,
)), color: Colors.white,
), borderRadius: BorderRadius.circular(12),
child: Column( border: Border.fromBorderSide(BorderSide(
mainAxisAlignment: MainAxisAlignment.start, color: Colors.grey.shade400,
children: [ width: 0.4,
Column( )),
crossAxisAlignment: CrossAxisAlignment.start, ),
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
children: [ children: [
Container(
margin: EdgeInsets.only(left: 5, right: 5),
child: Texts(TranslationBase.of(context).progressNote)),
if( isAddProgress)
Container(
margin: EdgeInsets.only(left: 10, right: 10, top: 15),
child: AppTextFieldCustom(
hintText: TranslationBase.of(context).progressNote,
controller: progressNoteController,
minLines: 2,
maxLines: 4,
inputType: TextInputType.multiline,
onChanged: (value){
widget.patientProgressNote.planNote = value;
},
),
),
SizedBox(
height: 9,
),
if ( widget.patientProgressNote.planNote != null && !isAddProgress)
Container(
margin:
EdgeInsets.only(left: 5, right: 5,),
child: Column(
crossAxisAlignment:
CrossAxisAlignment.start,
children: [
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Row(
children: [
Texts('Appointment No: ',fontSize: 12,),
Texts(widget.patientProgressNote.appointmentNo??'',fontWeight: FontWeight.w600,),
], Column(
), crossAxisAlignment: CrossAxisAlignment.start,
Texts( children: [
widget.patientProgressNote.createdOn !=null?DateUtils.getDayMonthYearDateFormatted(DateTime.parse(widget.patientProgressNote.createdOn)):DateUtils.getDayMonthYearDateFormatted(DateTime.now()), Container(
fontWeight: FontWeight.w600, margin: EdgeInsets.only(left: 5, right: 5),
fontSize: 14, child: Texts(TranslationBase
) .of(context)
.progressNote)),
if(isAddProgress)
Container(
margin:
EdgeInsets.only(left: 10, right: 10, top: 15),
], child: AppTextFieldCustom(
), hintText: TranslationBase.of(context).progressNote,
Row( controller: progressNoteController,
mainAxisAlignment: MainAxisAlignment.spaceBetween, minLines: 2,
crossAxisAlignment: CrossAxisAlignment.start, maxLines: 4,
children: [ inputType: TextInputType.multiline,
Row( onChanged: (value){
children: [ widget.patientProgressNote.planNote = value;
Texts('Condition: ',fontSize: 12,), },
Texts(widget.patientProgressNote.mName??'',fontWeight: FontWeight.w600),
],
), ),
Texts(
widget.patientProgressNote.createdOn !=null?DateUtils.getHour(DateTime.parse(widget.patientProgressNote.createdOn)):DateUtils.getHour(DateTime.now()),
fontWeight: FontWeight.w600,
fontSize: 14,
)
],
), ),
SizedBox(height: 8,), SizedBox(
Row( height: 9,
mainAxisAlignment: MainAxisAlignment.start,
children: [
Expanded(
child: Texts(
progressNoteController.text,
fontSize: 10,
),
),
InkWell(
onTap: (){
setState(() {
isAddProgress = true;
widget.changePageViewIndex(3,isChangeState:false);
});
},
child: Icon(DoctorApp.edit,size: 18,))
],
), ),
if ( widget.patientProgressNote.planNote != null&& !isAddProgress)
Container(
margin:
EdgeInsets.only(left: 5, right: 5, ),
child: Column(
crossAxisAlignment:
CrossAxisAlignment.start,
children: [
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Row(
children: [
Texts('Appointment No: ',fontSize: 12,),
Texts(widget.patientProgressNote.appointmentNo??'',fontWeight: FontWeight.w600,),
],
),
Texts(
widget.patientProgressNote.createdOn !=null?DateUtils.getDayMonthYearDateFormatted(DateTime.parse(widget.patientProgressNote.createdOn)):DateUtils.getDayMonthYearDateFormatted(DateTime.now()),
fontWeight: FontWeight
.w600,
fontSize: 14,
)
],
),
Row(
mainAxisAlignment:
MainAxisAlignment.spaceBetween,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Row(
children: [
Texts('Condition: ',
fontSize: 12,),
Texts(
widget.patientProgressNote.mName??'',fontWeight: FontWeight.w600),
],
),
Texts(
widget.patientProgressNote.createdOn !=null?DateUtils.getHour(DateTime.parse(widget.patientProgressNote.createdOn)):DateUtils.getHour(DateTime.now()),
fontWeight: FontWeight.w600,
fontSize: 14,
)
],
),
SizedBox(height: 8,
),
Row(
mainAxisAlignment:
MainAxisAlignment.start,
children: [
Expanded(
child: Texts(
progressNoteController.text,
fontSize: 10,
),
),
InkWell(
onTap: (){
setState(() {
isAddProgress = true;
widget.changePageViewIndex(3,isChangeState:false);
});
},
child: Icon(DoctorApp.edit,size: 18,))
], ],
), ),
],
),
) )
], ],
), ),
], ],
), ),
),
],
), ),
), ),
), ),

@ -1,3 +1,4 @@
import 'package:doctor_app_flutter/config/size_config.dart';
import 'package:doctor_app_flutter/core/viewModel/doctor_replay_view_model.dart'; import 'package:doctor_app_flutter/core/viewModel/doctor_replay_view_model.dart';
import 'package:doctor_app_flutter/models/SOAP/GetGetProgressNoteResModel.dart'; import 'package:doctor_app_flutter/models/SOAP/GetGetProgressNoteResModel.dart';
import 'package:doctor_app_flutter/models/SOAP/my_selected_allergy.dart'; import 'package:doctor_app_flutter/models/SOAP/my_selected_allergy.dart';
@ -6,11 +7,13 @@ import 'package:doctor_app_flutter/models/SOAP/my_selected_examination.dart';
import 'package:doctor_app_flutter/models/SOAP/my_selected_history.dart'; import 'package:doctor_app_flutter/models/SOAP/my_selected_history.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/translations_delegate_base.dart';
import 'package:doctor_app_flutter/widgets/patients/profile/soap_update/steps_widget.dart'; import 'package:doctor_app_flutter/widgets/patients/profile/soap_update/steps_widget.dart';
import 'package:doctor_app_flutter/widgets/patients/profile/soap_update/subjective/update_subjective_page.dart'; import 'package:doctor_app_flutter/widgets/patients/profile/soap_update/subjective/update_subjective_page.dart';
import 'package:doctor_app_flutter/widgets/patients/profile/soap_update/update_assessment_page.dart'; import 'package:doctor_app_flutter/widgets/patients/profile/soap_update/update_assessment_page.dart';
import 'package:doctor_app_flutter/widgets/patients/profile/soap_update/update_plan_page.dart'; import 'package:doctor_app_flutter/widgets/patients/profile/soap_update/update_plan_page.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:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
@ -83,6 +86,7 @@ class _UpdateSoapIndexState extends State<UpdateSoapIndex>
color: Theme.of(context).scaffoldBackgroundColor), color: Theme.of(context).scaffoldBackgroundColor),
child: Column( child: Column(
mainAxisAlignment: MainAxisAlignment.start, mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[ children: <Widget>[
// PatientPageHeaderWidget(patient), // PatientPageHeaderWidget(patient),
PatientProfileHeaderNewDesign(patient, '7', '7', height: MediaQuery.of(context).size.height * 0.28,), PatientProfileHeaderNewDesign(patient, '7', '7', height: MediaQuery.of(context).size.height * 0.28,),
@ -91,20 +95,10 @@ class _UpdateSoapIndexState extends State<UpdateSoapIndex>
height: 1, height: 1,
color: Color(0xffCCCCCC), color: Color(0xffCCCCCC),
), ),
Container( Container(
color: Theme.of(context).scaffoldBackgroundColor, color: Theme.of(context).scaffoldBackgroundColor,
margin: EdgeInsets.only( height: MediaQuery.of(context).size.height * 0.73,
left: MediaQuery.of(context).size.width * 0.05,
right: MediaQuery.of(context).size.width * 0.05),
child: StepsWidget(
index: _currentIndex,
changeCurrentTab: changePageViewIndex,
height: 135,//MediaQuery.of(context).size.height * 0.17,
),
),
Container(
color: Theme.of(context).scaffoldBackgroundColor,
height: MediaQuery.of(context).size.height * 0.50,
child: PageView( child: PageView(
physics: NeverScrollableScrollPhysics(), physics: NeverScrollableScrollPhysics(),
controller: _controller, controller: _controller,
@ -117,22 +111,26 @@ class _UpdateSoapIndexState extends State<UpdateSoapIndex>
children: <Widget>[ children: <Widget>[
UpdateSubjectivePage( UpdateSubjectivePage(
changePageViewIndex: changePageViewIndex, changePageViewIndex: changePageViewIndex,
currentIndex: _currentIndex,
myAllergiesList: myAllergiesList, myAllergiesList: myAllergiesList,
myHistoryList: myHistoryList, myHistoryList: myHistoryList,
patientInfo: patient, patientInfo: patient,
changeLoadingState: changeLoadingState), changeLoadingState: changeLoadingState),
UpdateObjectivePage( UpdateObjectivePage(
changePageViewIndex: changePageViewIndex, changePageViewIndex: changePageViewIndex,
currentIndex: _currentIndex,
mySelectedExamination: mySelectedExamination, mySelectedExamination: mySelectedExamination,
patientInfo: patient, patientInfo: patient,
changeLoadingState: changeLoadingState), changeLoadingState: changeLoadingState),
UpdateAssessmentPage( UpdateAssessmentPage(
changePageViewIndex: changePageViewIndex, changePageViewIndex: changePageViewIndex,
currentIndex: _currentIndex,
mySelectedAssessmentList: mySelectedAssessment, mySelectedAssessmentList: mySelectedAssessment,
patientInfo: patient, patientInfo: patient,
changeLoadingState: changeLoadingState), changeLoadingState: changeLoadingState),
UpdatePlanPage( UpdatePlanPage(
changePageViewIndex: changePageViewIndex, changePageViewIndex: changePageViewIndex,
currentIndex: _currentIndex,
patientInfo: patient, patientInfo: patient,
patientProgressNote: patientProgressNote, patientProgressNote: patientProgressNote,
changeLoadingState: changeLoadingState) changeLoadingState: changeLoadingState)

@ -113,7 +113,7 @@ class _AppDrawerState extends State<AppDrawer> {
InkWell( InkWell(
child: DrawerItem( child: DrawerItem(
TranslationBase.of(context).applyOrRescheduleLeave, TranslationBase.of(context).applyOrRescheduleLeave,
DoctorApp.reschedule__1, icon: DoctorApp.reschedule__1,
// subTitle: , // subTitle: ,
), ),
onTap: () { onTap: () {
@ -129,8 +129,10 @@ class _AppDrawerState extends State<AppDrawer> {
SizedBox(height: 15), SizedBox(height: 15),
InkWell( InkWell(
child: DrawerItem( child: DrawerItem(
TranslationBase.of(context).myQRCode, TranslationBase
DoctorApp.qr_code_3, .of(context)
.myQRCode,
icon: DoctorApp.qr_code_3,
// subTitle: , // subTitle: ,
), ),
), ),
@ -149,7 +151,7 @@ class _AppDrawerState extends State<AppDrawer> {
), ),
), ),
SizedBox( SizedBox(
height: 130, height: MediaQuery.of(context).size.height * 0.09,
), ),
Container( Container(
margin: EdgeInsets.symmetric(horizontal: 20), margin: EdgeInsets.symmetric(horizontal: 20),
@ -157,10 +159,17 @@ class _AppDrawerState extends State<AppDrawer> {
children: [ children: [
InkWell( InkWell(
child: DrawerItem( child: DrawerItem(
projectsProvider.isArabic projectsProvider.isArabic
? TranslationBase.of(context).lanEnglish ? TranslationBase
: TranslationBase.of(context).lanArabic, .of(context)
DoctorApp.qr_code), .lanEnglish
: TranslationBase
.of(context)
.lanArabic,
// icon: DoctorApp.qr_code,
assetLink: projectsProvider.isArabic
? 'assets/images/usa-flag.png'
: 'assets/images/saudi-arabia-flag.png',),
onTap: () { onTap: () {
if (projectsProvider.isArabic) if (projectsProvider.isArabic)
projectsProvider.changeLanguage('en'); projectsProvider.changeLanguage('en');
@ -171,7 +180,9 @@ class _AppDrawerState extends State<AppDrawer> {
SizedBox(height: 10), SizedBox(height: 10),
InkWell( InkWell(
child: DrawerItem( child: DrawerItem(
TranslationBase.of(context).logout, DoctorApp.logout_1), TranslationBase
.of(context)
.logout, icon: DoctorApp.logout_1,),
onTap: () async { onTap: () async {
Navigator.pop(context); Navigator.pop(context);
await helpers.logout(); await helpers.logout();

@ -15,8 +15,9 @@ class DrawerItem extends StatefulWidget {
final String subTitle; final String subTitle;
final IconData icon; final IconData icon;
final Color color; final Color color;
final String assetLink;
DrawerItem(this.title, this.icon, {this.color, this.subTitle = ''}); DrawerItem(this.title, {this.icon, this.color, this.subTitle = '', this.assetLink});
@override @override
_DrawerItemState createState() => _DrawerItemState(); _DrawerItemState createState() => _DrawerItemState();
@ -30,6 +31,13 @@ class _DrawerItemState extends State<DrawerItem> {
child: Row( child: Row(
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[ children: <Widget>[
if(widget.assetLink!=null)
Container(
height: 20,
width: 20,
child: Image.asset(widget.assetLink),
),
if(widget.assetLink==null)
Icon( Icon(
widget.icon, widget.icon,
color: widget.color ?? Colors.black87, color: widget.color ?? Colors.black87,

Loading…
Cancel
Save