You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
doctor_app_flutter/lib/screens/patients/In_patient/InPatientHeader.dart

132 lines
5.2 KiB
Dart

5 years ago
import 'package:doctor_app_flutter/config/size_config.dart';
import 'package:doctor_app_flutter/core/viewModel/PatientSearchViewModel.dart';
import 'package:doctor_app_flutter/core/viewModel/project_view_model.dart';
import 'package:doctor_app_flutter/models/dashboard/get_special_clinical_care_List_Respose_Model.dart';
5 years ago
import 'package:doctor_app_flutter/util/translations_delegate_base.dart';
import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart';
import 'package:flutter/material.dart';
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
import 'package:provider/provider.dart';
5 years ago
class InPatientHeader extends StatelessWidget with PreferredSizeWidget {
InPatientHeader(
Merge branch 'development' of https://gitlab.com/Cloud_Solution/doctor_app_flutter into dev_v2.8  Conflicts:  ios/Runner.xcodeproj/project.pbxproj  ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme  lib/core/viewModel/PatientRegistrationViewModel.dart  lib/core/viewModel/project_view_model.dart  lib/models/SOAP/selected_items/my_selected_history.dart  lib/screens/doctor/doctor_replay/not_replaied_doctor_questions.dart  lib/screens/home/home_screen.dart  lib/screens/live_care/end_call_screen.dart  lib/screens/patient-sick-leave/add_patient_sick_leave_screen.dart  lib/screens/patients/In_patient/InPatientHeader.dart  lib/screens/patients/In_patient/in_patient_screen.dart  lib/screens/patients/profile/UCAF/UCAF-detail-screen.dart  lib/screens/patients/profile/UCAF/UCAF-input-screen.dart  lib/screens/patients/profile/UCAF/page-stepper-widget.dart  lib/screens/patients/profile/diabetic_chart/line_chart_for_diabetic.dart  lib/screens/patients/profile/discharge_summary/discharge_Summary_widget.dart  lib/screens/patients/profile/lab_result/LineChartCurved.dart  lib/screens/patients/profile/lab_result/LineChartCurvedLabHistory.dart  lib/screens/patients/profile/operation_report/operation_report.dart  lib/screens/patients/profile/operation_report/update_operation_report.dart  lib/screens/patients/profile/pending_orders/pending_orders_screen.dart  lib/screens/patients/profile/profile_screen/patient_profile_screen.dart  lib/screens/patients/profile/profile_screen/profile_gird_for_InPatient.dart  lib/screens/patients/profile/profile_screen/profile_gird_for_other.dart  lib/screens/patients/profile/profile_screen/profile_gird_for_search.dart  lib/screens/patients/profile/referral/my-referral-detail-screen.dart  lib/screens/patients/profile/referral/refer-patient-screen.dart  lib/screens/patients/profile/soap_update/objective/add_examination_widget.dart  lib/screens/patients/profile/soap_update/objective/examinations_list_search_widget.dart  lib/screens/patients/profile/soap_update/plan/update_plan_page.dart  lib/screens/patients/profile/soap_update/shared_soap_widgets/SOAP_step_header.dart  lib/screens/patients/profile/soap_update/shared_soap_widgets/steper/steps_widget.dart  lib/screens/patients/profile/soap_update/subjective/allergies/add_allergies.dart  lib/screens/patients/profile/soap_update/subjective/allergies/allergies_item.dart  lib/screens/patients/profile/soap_update/subjective/allergies/master_key_checkbox_search_allergies_widget.dart  lib/screens/patients/profile/soap_update/subjective/history/update_history_widget.dart  lib/screens/patients/profile/soap_update/subjective/medication/add_medication.dart  lib/screens/patients/profile/vital_sign/LineChartCurved.dart  lib/screens/patients/profile/vital_sign/LineChartCurvedBloodPressure.dart  lib/screens/patients/profile/vital_sign/vital_sign_details_screen.dart  lib/screens/patients/register_patient/CustomEditableText.dart  lib/screens/patients/register_patient/RegisterConfirmationPatientPage.dart  lib/screens/patients/register_patient/RegisterSearchPatientPage.dart  lib/screens/prescription/add_prescription_form.dart  lib/screens/prescription/prescription_text_filed.dart  lib/screens/reschedule-leaves/reschedule_leave.dart  lib/util/dr_app_toast_msg.dart  lib/widgets/patients/patient_card/PatientCard.dart  lib/widgets/patients/profile/patient-profile-app-bar.dart  lib/widgets/patients/profile/profile_medical_info_widget_search.dart  lib/widgets/shared/TextFields.dart  lib/widgets/shared/bottom_navigation_item.dart  lib/widgets/shared/text_fields/app-textfield-custom.dart  lib/widgets/shared/text_fields/app_text_field_custom_serach.dart  lib/widgets/shared/text_fields/new_text_Field.dart  pubspec.yaml
4 years ago
{ this.model,
4 years ago
this.specialClinic,
this.activeTab,
this.selectedMapId,
this.onChangeFunc})
: super();
final PatientSearchViewModel model;
4 years ago
final GetSpecialClinicalCareListResponseModel? specialClinic;
final activeTab;
4 years ago
final selectedMapId;
final onChangeFunc;
5 years ago
@override
Widget build(BuildContext context) {
ProjectViewModel projectsProvider = Provider.of<ProjectViewModel>(context);
5 years ago
return Container(
padding: EdgeInsets.only(left: 0, right: 5, bottom: 5, top: 5),
decoration: BoxDecoration(
color: Colors.white,
),
child: Container(
padding: EdgeInsets.only(left: 10, right: 10, bottom: 10),
margin: EdgeInsets.only(top: 50),
child: Row(children: [
IconButton(
icon: Icon(Icons.arrow_back_ios),
color: Color(0xFF2B353E), //Colors.black,
5 years ago
onPressed: () => Navigator.pop(context),
),
Expanded(
child: AppText(
TranslationBase.of(context).inPatient,
fontSize: 24.0,
fontWeight: FontWeight.w700,
5 years ago
color: Color(0xFF2B353E),
letterSpacing: -1.44,
5 years ago
),
),
if (model.specialClinicalCareMappingList.isNotEmpty &&
specialClinic != null &&
activeTab != 2)
Container(
width: MediaQuery.of(context).size.width * .3,
child: DropdownButtonHideUnderline(
child: DropdownButton(
dropdownColor: Colors.white,
iconEnabledColor: Colors.black,
isExpanded: true,
value: selectedMapId ??
model.specialClinicalCareMappingList[0].nursingStationID,
iconSize: 25,
elevation: 16,
selectedItemBuilder: (BuildContext context) {
return model.specialClinicalCareMappingList.map((item) {
return Row(
mainAxisSize: MainAxisSize.max,
mainAxisAlignment: MainAxisAlignment.end,
children: <Widget>[
Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Container(
padding: EdgeInsets.all(2),
margin: EdgeInsets.all(2),
decoration: new BoxDecoration(
color: Colors.red[800],
borderRadius: BorderRadius.circular(20),
),
constraints: BoxConstraints(
minWidth: 20,
minHeight: 20,
),
child: Center(
child: AppText(
model.specialClinicalCareMappingList.length
.toString(),
color: Colors.white,
fontSize:
projectsProvider.isArabic ? 10 : 11,
textAlign: TextAlign.center,
),
)),
],
),
AppText(
selectedMapId == null
? TranslationBase.of(context).all
: item.description,
fontSize: 12,
color: Colors.black,
fontWeight: FontWeight.bold,
textAlign: TextAlign.end),
],
);
}).toList();
},
onChanged: (newValue) async {
onChangeFunc(newValue);
},
items: model.specialClinicalCareMappingList.map((item) {
return DropdownMenuItem(
child: AppText(
item.description,
textAlign: TextAlign.left,
),
value: item.nursingStationID,
);
}).toList(),
)),
),
5 years ago
]),
),
);
}
@override
Size get preferredSize => Size(double.maxFinite, 85);
}