Merge branch 'development' of https://gitlab.com/Cloud_Solution/doctor_app_flutter into fix_refere_desgin

merge-requests/982/head
RoaaGhali98 4 years ago
commit dfc792ce64

@ -1,7 +1,7 @@
import 'dart:ui'; import 'dart:ui';
import 'package:doctor_app_flutter/core/model/patient/patient_model.dart'; import 'package:doctor_app_flutter/core/model/patient/patient_model.dart';
import 'package:doctor_app_flutter/screens/reschedule-leaves/add-rescheduleleave.dart'; import 'package:doctor_app_flutter/screens/reschedule_leaves/add_reschedule_leave.dart';
import 'package:doctor_app_flutter/utils/date-utils.dart'; import 'package:doctor_app_flutter/utils/date-utils.dart';
import 'package:doctor_app_flutter/utils/translations_delegate_base_utils.dart'; import 'package:doctor_app_flutter/utils/translations_delegate_base_utils.dart';
import 'package:doctor_app_flutter/widgets/shared/app_scaffold_widget.dart'; import 'package:doctor_app_flutter/widgets/shared/app_scaffold_widget.dart';
@ -111,7 +111,7 @@ class _PatientArrivalScreen extends State<PatientArrivalScreen>
physics: BouncingScrollPhysics(), physics: BouncingScrollPhysics(),
controller: _tabController, controller: _tabController,
children: <Widget>[ children: <Widget>[
AddRescheduleLeavScreen(), AddRescheduleLeaveScreen(),
], ],
), ),
) )

@ -211,6 +211,8 @@ class _AddProcedurePageState extends State<AddProcedurePage> {
); );
} }
///TODO Elham* move it to view model
bool isEntityListSelected(EntityList masterKey) { bool isEntityListSelected(EntityList masterKey) {
Iterable<EntityList> history = entityList Iterable<EntityList> history = entityList
.where((element) => masterKey.procedureId == element.procedureId); .where((element) => masterKey.procedureId == element.procedureId);

@ -149,6 +149,9 @@ class _BaseAddProcedureTabPageState extends State<BaseAddProcedureTabPage>
); );
} }
///TODO Elham* move it to new file
Widget tabWidget( Widget tabWidget(
Size screenSize, Size screenSize,
bool isActive, bool isActive,

@ -247,6 +247,8 @@ class _EntityListCheckboxSearchWidgetState
); );
} }
///TODO Elham* move it to view model
void filterSearchResults(String query) { void filterSearchResults(String query) {
List<EntityList> dummySearchList = List(); List<EntityList> dummySearchList = List();
dummySearchList.addAll(widget.masterList); dummySearchList.addAll(widget.masterList);

@ -144,6 +144,7 @@ class _EntityListCheckboxSearchFavProceduresWidgetState
); );
} }
///TODO Elham* move it to view model and try to make it work for every search
void filterSearchResults(String query) { void filterSearchResults(String query) {
List<ProcedureTempleteModel> dummySearchList = List(); List<ProcedureTempleteModel> dummySearchList = List();
dummySearchList.addAll(widget.masterList); dummySearchList.addAll(widget.masterList);

@ -85,6 +85,9 @@ class _ProcedureCheckOutScreenState extends State<ProcedureCheckOutScreen> {
SizedBox( SizedBox(
height: 30, height: 30,
), ),
///TODO Elham* user view list builder
...List.generate( ...List.generate(
widget.items.length, widget.items.length,
(index) => Container( (index) => Container(
@ -219,6 +222,9 @@ class _ProcedureCheckOutScreenState extends State<ProcedureCheckOutScreen> {
color: AppGlobal.appGreenColor, color: AppGlobal.appGreenColor,
fontWeight: FontWeight.w700, fontWeight: FontWeight.w700,
onPressed: () async { onPressed: () async {
///TODO Elham* move it to function
List<EntityList> entityList = List(); List<EntityList> entityList = List();
widget.items.forEach((element) { widget.items.forEach((element) {
entityList.add( entityList.add(

@ -33,7 +33,6 @@ class ProcedureScreen extends StatelessWidget {
final routeArgs = ModalRoute.of(context).settings.arguments as Map; final routeArgs = ModalRoute.of(context).settings.arguments as Map;
PatiantInformtion patient = routeArgs['patient']; PatiantInformtion patient = routeArgs['patient'];
String patientType = routeArgs['patientType']; String patientType = routeArgs['patientType'];
String arrivalType = routeArgs['arrivalType'];
bool isFromLiveCare = routeArgs['isFromLiveCare']; bool isFromLiveCare = routeArgs['isFromLiveCare'];
bool isInpatient = routeArgs['isInpatient']; bool isInpatient = routeArgs['isInpatient'];
return BaseView<ProcedureViewModel>( return BaseView<ProcedureViewModel>(
@ -128,6 +127,7 @@ class ProcedureScreen extends StatelessWidget {
), ),
), ),
if (model.procedureList.isNotEmpty) if (model.procedureList.isNotEmpty)
///TODO Elham* use list view builder
...List.generate( ...List.generate(
model.procedureList[0].rowcount, model.procedureList[0].rowcount,
(index) => ProcedureCard( (index) => ProcedureCard(

@ -27,9 +27,7 @@ void updateProcedureForm(context,
String remarks, String remarks,
ProcedureViewModel model, ProcedureViewModel model,
String categoreId}) { String categoreId}) {
//ProcedureViewModel model2 = ProcedureViewModel();
TextEditingController remarksController = TextEditingController(); TextEditingController remarksController = TextEditingController();
TextEditingController orderController = TextEditingController();
showModalBottomSheet( showModalBottomSheet(
context: context, context: context,
isScrollControlled: true, isScrollControlled: true,
@ -119,129 +117,6 @@ class _UpdateProcedureWidgetState extends State<UpdateProcedureWidget> {
SizedBox( SizedBox(
height: 30.0, height: 30.0,
), ),
// Container(
// height: screenSize.height * 0.070,
// child: InkWell(
// onTap: model.categoryList != null &&
// model.categoryList.length > 0
// ? () {
// ListSelectDialog dialog =
// ListSelectDialog(
// list: model.categoryList,
// attributeName: 'categoryName',
// attributeValueId: 'categoryId',
// okText:
// TranslationBase.of(context).ok,
// okFunction: (selectedValue) {
// setState(() {
// selectedCategory =
// selectedValue;
// model.getProcedureCategory(
// categoryName:
// selectedCategory[
// 'categoryName'],
// categoryID: selectedCategory[
// 'categoryId'] <=
// 9
// ? "0" +
// selectedCategory[
// 'categoryId']
// .toString()
// : selectedCategory[
// 'categoryId']
// .toString());
// });
// },
// );
// showDialog(
// barrierDismissible: false,
// context: context,
// builder: (BuildContext context) {
// return dialog;
// },
// );
// //model.getProcedureCategory();
// }
// : null,
// child: TextField(
// decoration: textFieldSelectorDecoration(
// TranslationBase.of(context)
// .procedureCategorise,
// selectedCategory != null
// ? selectedCategory['categoryName']
// : null,
// true,
// suffixIcon: Icon(
// Icons.search,
// color: Colors.black,
// )),
// enabled: false,
// ),
// ),
// ),
// if (widget.model.categoriesList.length != 0)
// NetworkBaseView(
// baseViewModel: model,
// child: selectedCategory != null
// ? selectedCategory['categoryId'] ==
// 02 ||
// selectedCategory[
// 'categoryId'] ==
// 03 ||
// selectedCategory[
// 'categoryId'] ==
// 55
// ? EntityListCheckboxSearchWidget(
// model: widget.model,
// masterList: widget
// .model
// .categoriesList[0]
// .entityList,
// removeHistory: (item) {
// setState(() {
// entityList.remove(item);
// });
// },
// addHistory: (history) {
// setState(() {
// entityList.add(history);
// });
// },
// addSelectedHistories: () {
// //TODO build your fun herr
// // widget.addSelectedHistories();
// },
// isEntityListSelected:
// (master) =>
// isEntityListSelected(
// master),
// )
// : ProcedureListWidget(
// model: widget.model,
// masterList: widget
// .model
// .categoriesList[0]
// .entityList,
// removeHistory: (item) {
// setState(() {
// entityList.remove(item);
// });
// },
// addHistory: (history) {
// setState(() {
// entityList.add(history);
// });
// },
// addSelectedHistories: () {
// //TODO build your fun herr
// // widget.addSelectedHistories();
// },
// isEntityListSelected:
// (master) =>
// isEntityListSelected(
// master),
// )
// : null),
Container( Container(
child: Row( child: Row(
children: [ children: [
@ -294,7 +169,6 @@ class _UpdateProcedureWidgetState extends State<UpdateProcedureWidget> {
margin: margin:
EdgeInsets.all(SizeConfig.widthMultiplier * 2), EdgeInsets.all(SizeConfig.widthMultiplier * 2),
child: Column( child: Column(
//alignment: WrapAlignment.center,
children: <Widget>[ children: <Widget>[
AppButton( AppButton(
color: AppGlobal.appGreenColor, color: AppGlobal.appGreenColor,
@ -302,13 +176,6 @@ class _UpdateProcedureWidgetState extends State<UpdateProcedureWidget> {
.updateProcedure .updateProcedure
.toUpperCase(), .toUpperCase(),
onPressed: () { onPressed: () {
// if (entityList.isEmpty == true &&
// widget.remarksController.text ==
// widget.remarks) {
// DrAppToastMsg.showErrorToast(
// "Fill the mandatory procedure details");
// return;
// }
Navigator.pop(context); Navigator.pop(context);
updateProcedure( updateProcedure(
limetNO: widget.limetNo, limetNO: widget.limetNo,
@ -370,23 +237,6 @@ class _UpdateProcedureWidgetState extends State<UpdateProcedureWidget> {
updateProcedureReqModel.lineItemNo = limetNO; updateProcedureReqModel.lineItemNo = limetNO;
updateProcedureReqModel.orderNo = orderNo; updateProcedureReqModel.orderNo = orderNo;
// if (entityList.isNotEmpty) {
// entityList.forEach((element) {
// controls.add(
// Controls(code: "remarks", controlValue: element.remarks ?? ''),
// );
// controls.add(
// Controls(code: "ordertype", controlValue: '1'),
// );
//
// controlsProcedure.procedure = element.procedureId;
// controlsProcedure.category = int.parse(element.categoryID) > 9
// ? element.categoryID
// : "0" + element.categoryID;
// controlsProcedure.controls = controls;
// });
// }
// else {
{ {
controls.add( controls.add(
Controls( Controls(
@ -401,8 +251,6 @@ class _UpdateProcedureWidgetState extends State<UpdateProcedureWidget> {
controlsProcedure.controls = controls; controlsProcedure.controls = controls;
} }
// controlsProcedure.add(ProcedureDetail(
// category: categorieId, procedure: procedureId, controls: controls));
updateProcedureReqModel.procedureDetail = controlsProcedure; updateProcedureReqModel.procedureDetail = controlsProcedure;
await model.updateProcedure( await model.updateProcedure(
@ -418,6 +266,8 @@ class _UpdateProcedureWidgetState extends State<UpdateProcedureWidget> {
} }
} }
///TODO Elham* move it to view model
bool isEntityListSelected(EntityList masterKey) { bool isEntityListSelected(EntityList masterKey) {
Iterable<EntityList> history = entityList Iterable<EntityList> history = entityList
.where((element) => masterKey.procedureId == element.procedureId); .where((element) => masterKey.procedureId == element.procedureId);
@ -426,36 +276,4 @@ class _UpdateProcedureWidgetState extends State<UpdateProcedureWidget> {
} }
return false; return false;
} }
InputDecoration textFieldSelectorDecoration(
String hintText, String selectedText, bool isDropDown,
{Icon suffixIcon}) {
return InputDecoration(
focusedBorder: OutlineInputBorder(
borderSide: BorderSide(color: Color(0xFFCCCCCC), width: 2.0),
borderRadius: BorderRadius.circular(8),
),
enabledBorder: OutlineInputBorder(
borderSide: BorderSide(color: Color(0xFFCCCCCC), width: 2.0),
borderRadius: BorderRadius.circular(8),
),
disabledBorder: OutlineInputBorder(
borderSide: BorderSide(color: Color(0xFFCCCCCC), width: 2.0),
borderRadius: BorderRadius.circular(8),
),
hintText: selectedText != null ? selectedText : hintText,
suffixIcon: isDropDown
? suffixIcon != null
? suffixIcon
: Icon(
Icons.arrow_drop_down,
color: Colors.black,
)
: null,
hintStyle: TextStyle(
fontSize: 14,
color: Colors.grey.shade600,
),
);
}
} }

@ -5,7 +5,7 @@ import 'package:doctor_app_flutter/core/viewModel/project_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/sick_leave_view_model.dart'; import 'package:doctor_app_flutter/core/viewModel/sick_leave_view_model.dart';
import 'package:doctor_app_flutter/locator.dart'; import 'package:doctor_app_flutter/locator.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/reschedule-leaves/reschedule_leave.dart'; import 'package:doctor_app_flutter/screens/reschedule_leaves/reschedule_leave.dart';
import 'package:doctor_app_flutter/utils/date-utils.dart'; import 'package:doctor_app_flutter/utils/date-utils.dart';
import 'package:doctor_app_flutter/utils/translations_delegate_base_utils.dart'; import 'package:doctor_app_flutter/utils/translations_delegate_base_utils.dart';
import 'package:doctor_app_flutter/widgets/patients/profile/add-order/addNewOrder.dart'; import 'package:doctor_app_flutter/widgets/patients/profile/add-order/addNewOrder.dart';
@ -17,7 +17,7 @@ import 'package:flutter/material.dart';
import 'package:hexcolor/hexcolor.dart'; import 'package:hexcolor/hexcolor.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
class AddRescheduleLeavScreen extends StatelessWidget { class AddRescheduleLeaveScreen extends StatelessWidget {
ProjectViewModel projectsProvider; ProjectViewModel projectsProvider;
@override @override
@ -195,11 +195,6 @@ class AddRescheduleLeavScreen extends StatelessWidget {
) )
]) ])
: SizedBox(), : SizedBox(),
// AppText(
// TranslationBase.of(context)
// .reasons,
// fontWeight: FontWeight.bold,
// ),
Row( Row(
mainAxisAlignment: mainAxisAlignment:
MainAxisAlignment MainAxisAlignment
@ -246,15 +241,6 @@ class AddRescheduleLeavScreen extends StatelessWidget {
} }
openLeave(BuildContext context, isExtend, {extendedData}) { openLeave(BuildContext context, isExtend, {extendedData}) {
// showModalBottomSheet(
// context: context,
// builder: (context) {
// return new Container(
// child: RescheduleLeaveScreen(
// isExtend,
// extendedData,
// ));
// });
Navigator.push( Navigator.push(
context, context,

@ -7,7 +7,7 @@ import 'package:doctor_app_flutter/core/viewModel/project_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/sick_leave_view_model.dart'; import 'package:doctor_app_flutter/core/viewModel/sick_leave_view_model.dart';
import 'package:doctor_app_flutter/routes.dart'; import 'package:doctor_app_flutter/routes.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/reschedule-leaves/add-rescheduleleave.dart'; import 'package:doctor_app_flutter/screens/reschedule_leaves/add_reschedule_leave.dart';
import 'package:doctor_app_flutter/utils/dr_app_shared_pref.dart'; import 'package:doctor_app_flutter/utils/dr_app_shared_pref.dart';
import 'package:doctor_app_flutter/utils/dr_app_toast_msg.dart'; import 'package:doctor_app_flutter/utils/dr_app_toast_msg.dart';
import 'package:doctor_app_flutter/utils/utils.dart'; import 'package:doctor_app_flutter/utils/utils.dart';
@ -41,7 +41,6 @@ class _RescheduleLeaveScreen extends State<RescheduleLeaveScreen> {
TextEditingController _toDateController2 = new TextEditingController(); TextEditingController _toDateController2 = new TextEditingController();
ProjectViewModel projectsProvider; ProjectViewModel projectsProvider;
SickLeaveViewModel sickLeaveViewModel; SickLeaveViewModel sickLeaveViewModel;
String _selectedClinic;
Map profile = {}; Map profile = {};
var offTime = '1'; var offTime = '1';
var date; var date;
@ -82,13 +81,6 @@ class _RescheduleLeaveScreen extends State<RescheduleLeaveScreen> {
_toDateController2.text = df.format(pickedDate); _toDateController2.text = df.format(pickedDate);
} }
}); });
// setState(() {
// final df = new DateFormat('yyyy-MM-dd');
// fromDate = pickedDate; //df.format();
// //_toDateController2.text = df.format(pickedDate);
// //toDate = pickedDate;
// });
}); });
} }
@ -794,7 +786,7 @@ class _RescheduleLeaveScreen extends State<RescheduleLeaveScreen> {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( MaterialPageRoute(
builder: (context) => AddRescheduleLeavScreen(), builder: (context) => AddRescheduleLeaveScreen(),
settings: RouteSettings(name: 'AddRescheduleLeaveScreen') settings: RouteSettings(name: 'AddRescheduleLeaveScreen')
// MyReferredPatient(), // MyReferredPatient(),
), ),
@ -861,7 +853,7 @@ class _RescheduleLeaveScreen extends State<RescheduleLeaveScreen> {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( MaterialPageRoute(
builder: (context) => AddRescheduleLeavScreen(), builder: (context) => AddRescheduleLeaveScreen(),
settings: RouteSettings(name: 'AddRescheduleLeaveScreen')), settings: RouteSettings(name: 'AddRescheduleLeaveScreen')),
); );
} }

@ -1,7 +1,7 @@
import 'package:doctor_app_flutter/core/viewModel/authentication_view_model.dart'; import 'package:doctor_app_flutter/core/viewModel/authentication_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';
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/screens/reschedule-leaves/add-rescheduleleave.dart'; import 'package:doctor_app_flutter/screens/reschedule_leaves/add_reschedule_leave.dart';
import 'package:doctor_app_flutter/utils/utils.dart'; import 'package:doctor_app_flutter/utils/utils.dart';
import 'package:doctor_app_flutter/utils/translations_delegate_base_utils.dart'; import 'package:doctor_app_flutter/utils/translations_delegate_base_utils.dart';
import 'package:doctor_app_flutter/widgets/shared/loader/gif_loader_dialog_utils.dart'; import 'package:doctor_app_flutter/widgets/shared/loader/gif_loader_dialog_utils.dart';
@ -128,7 +128,7 @@ class _AppDrawerState extends State<AppDrawer> {
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( MaterialPageRoute(
builder: (context) => AddRescheduleLeavScreen(), builder: (context) => AddRescheduleLeaveScreen(),
settings: RouteSettings( settings: RouteSettings(
name: 'AddRescheduleLeaveScreen') name: 'AddRescheduleLeaveScreen')
// MyReferredPatient(), // MyReferredPatient(),

Loading…
Cancel
Save