merge-requests/464/head
Sultan Khan 4 years ago
commit 44baa02cfc

@ -322,4 +322,4 @@ SPEC CHECKSUMS:
PODFILE CHECKSUM: 649616dc336b3659ac6b2b25159d8e488e042b69
COCOAPODS: 1.10.1
COCOAPODS: 1.10.0.rc.1

@ -843,4 +843,11 @@ const Map<String, Map<String, String>> localizedValues = {
"en": "Step",
"ar": "خطوة"
},
"applyOrRescheduleLeave": {
"en": "Apply Or Reschedule Leave",
"ar": "التقدم بطلب أو إعادة جدولة الإجازة"
},"myQRCode": {
"en": "My QR Code",
"ar": "My QR Code"
},
};

@ -1,6 +1,7 @@
import 'package:doctor_app_flutter/config/config.dart';
import 'package:doctor_app_flutter/config/size_config.dart';
import 'package:doctor_app_flutter/core/viewModel/patient-ucaf-viewmodel.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/screens/base/base_view.dart';
import 'package:doctor_app_flutter/screens/patients/profile/UCAF/page-stepper-widget.dart';
@ -145,8 +146,8 @@ class _UCAFInputScreenState extends State<UCAFInputScreen> {
),
AppTextFieldCustom(
height: screenSize.height * 0.075,
hintText:
TranslationBase.of(context).durationOfIllness,
hintText: TranslationBase.of(context)
.durationOfIllness,
dropDownText: "3",
inputType: TextInputType.number,
inputFormatters: [
@ -163,6 +164,14 @@ class _UCAFInputScreenState extends State<UCAFInputScreen> {
children: [
Row(
children: [
Icon(
DoctorApp.warning,
size: 20,
color: Color(0xFFCC9B14),
),
SizedBox(
width: 4,
),
AppText(
"BP (H/L)",
fontSize:
@ -246,7 +255,8 @@ class _UCAFInputScreenState extends State<UCAFInputScreen> {
height: 16,
),
AppText(
TranslationBase.of(context).chiefComplaintsAndSymptoms,
TranslationBase.of(context)
.chiefComplaintsAndSymptoms,
fontFamily: 'Poppins',
fontSize: SizeConfig.textMultiplier * 2.1,
fontWeight: FontWeight.w700,
@ -265,7 +275,8 @@ class _UCAFInputScreenState extends State<UCAFInputScreen> {
height: 8,
),
AppTextFieldCustom(
hintText: TranslationBase.of(context).instruction,
hintText:
TranslationBase.of(context).instruction,
dropDownText: helpers.parseHtmlString(model
.patientChiefComplaintList[0]
.chiefComplaint),
@ -288,7 +299,7 @@ class _UCAFInputScreenState extends State<UCAFInputScreen> {
(index) => CheckboxListTile(
title: AppText(
conditionsData[index]['name'],
fontWeight: FontWeight.bold,
fontWeight: FontWeight.normal,
fontSize:
SizeConfig.textMultiplier * 2.1,
),
@ -307,115 +318,77 @@ class _UCAFInputScreenState extends State<UCAFInputScreen> {
SizedBox(
height: 8,
),
Container(
height: screenSize.height * 0.070,
child: TextField(
decoration:
Helpers.textFieldSelectorDecoration(
TranslationBase.of(context).other,
null,
false),
enabled: true,
controller: _otherController,
keyboardType: TextInputType.text,
)),
AppTextFieldCustom(
height: screenSize.height * 0.075,
hintText: TranslationBase.of(context).other,
dropDownText: "None",
enabled: false,
),
SizedBox(
height: 8,
),
Container(
height: screenSize.height * 0.070,
child: TextField(
decoration:
Helpers.textFieldSelectorDecoration(
TranslationBase.of(context).how,
null,
false),
enabled: true,
controller: _howController,
keyboardType: TextInputType.text,
)),
AppTextFieldCustom(
height: screenSize.height * 0.075,
hintText: TranslationBase.of(context).how,
dropDownText: "None",
enabled: false,
),
SizedBox(
height: 8,
),
Row(
children: [
Expanded(
child: Container(
height: screenSize.height * 0.070,
child: TextField(
decoration: Helpers
.textFieldSelectorDecoration(
TranslationBase.of(context)
.when,
null,
false),
enabled: true,
controller: _whenController,
keyboardType: TextInputType.text,
)),
child: AppTextFieldCustom(
height: screenSize.height * 0.075,
hintText:
TranslationBase.of(context).when,
dropDownText: "None",
enabled: false,
),
),
SizedBox(
width: 4,
),
Expanded(
child: Container(
height: screenSize.height * 0.070,
child: TextField(
decoration: Helpers
.textFieldSelectorDecoration(
TranslationBase.of(context)
.where,
null,
false),
enabled: true,
controller: _whereController,
keyboardType: TextInputType.text,
)),
child: AppTextFieldCustom(
height: screenSize.height * 0.075,
hintText:
TranslationBase.of(context).where,
dropDownText: "None",
enabled: false,
),
),
],
),
SizedBox(
height: 8,
),
Container(
child: TextField(
decoration:
Helpers.textFieldSelectorDecoration(
TranslationBase.of(context)
.specifyPossibleLineManagement,
null,
false),
enabled: true,
controller: _managementsLineController,
keyboardType: TextInputType.text,
AppTextFieldCustom(
height: screenSize.height * 0.1,
hintText: TranslationBase.of(context).specifyPossibleLineManagement,
dropDownText: "None",
enabled: false,
minLines: 4,
maxLines: 6,
)),
),
SizedBox(
height: 16,
height: 26,
),
AppText(
TranslationBase.of(context).significantSigns,
fontWeight: FontWeight.bold,
fontSize: SizeConfig.textMultiplier * 2.0,
fontSize: SizeConfig.textMultiplier * 2.1,
),
SizedBox(
height: 8,
),
Container(
child: TextField(
decoration:
Helpers.textFieldSelectorDecoration(
TranslationBase.of(context)
.backAbdomen,
null,
false),
enabled: true,
controller: _signsController,
keyboardType: TextInputType.multiline,
minLines: null,
maxLines: null,
)),
AppTextFieldCustom(
height: screenSize.height * 0.1,
hintText: TranslationBase.of(context).backAbdomen,
dropDownText: "BackLNeck",
enabled: false,
),
],
),
),

@ -141,7 +141,10 @@ class PatientProfileScreen extends StatelessWidget {
if (patient.episodeNo != 0)
BorderedButton(
"${TranslationBase.of(context).update}\n${TranslationBase.of(context).episode}",
backgroundColor: Colors.red.shade700,
backgroundColor:
patient.patientStatusType == 43
? Colors.red.shade700
: Colors.grey.shade700,
textColor: Colors.white,
vPadding: 8,
radius: 30,
@ -155,10 +158,12 @@ class PatientProfileScreen extends StatelessWidget {
height: 30,
),
handler: () {
if (patient.patientStatusType == 43) {
Navigator.of(context).pushNamed(
UPDATE_EPISODE,
arguments: {'patient': patient});
},
}
}
),
],
),

@ -51,7 +51,7 @@ class VitalSignItem extends StatelessWidget {
"$lastVal",
fontFamily: 'Poppins',
fontSize: SizeConfig.textMultiplier * 1.4,
fontWeight: FontWeight.w800,
fontWeight: FontWeight.bold,
margin: 0,
),
Expanded(
@ -88,7 +88,7 @@ class VitalSignItem extends StatelessWidget {
"$des",
fontFamily: 'Poppins',
fontSize: SizeConfig.textMultiplier * 1.3,
fontWeight: FontWeight.w600,
fontWeight: FontWeight.bold,
),
),
),

@ -345,8 +345,9 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
suggestion
.genericName),
padding:
EdgeInsets.all(8.0)),
EdgeInsets.all(15.0)),
itemSorter: (a, b) => 1,
suggestionsAmount: 7,
itemFilter: (suggestion, input) =>
suggestion.genericName.toLowerCase().startsWith(
input.toLowerCase()) ||
@ -383,6 +384,13 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
SizedBox(
height: spaceBetweenTextFileds,
),
Visibility(
visible: _selectedMedication == null
? false
: true,
child: Container(
child: Column(
children: [
Container(
child: Row(
children: [
@ -391,7 +399,8 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
fontWeight: FontWeight.w600,
),
Radio(
activeColor: Color(0xFFB9382C),
activeColor:
Color(0xFFB9382C),
value: 1,
groupValue: selectedType,
onChanged: (value) {
@ -402,7 +411,8 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
],
),
),
SizedBox(height: spaceBetweenTextFileds),
SizedBox(
height: spaceBetweenTextFileds),
Container(
height: screenSize.height * 0.070,
width: double.infinity,
@ -421,32 +431,39 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
// .digitsOnly
],
hintText:
TranslationBase.of(context)
TranslationBase.of(
context)
.strength,
controller: strengthController,
keyboardType:
TextInputType.numberWithOptions(
controller:
strengthController,
keyboardType: TextInputType
.numberWithOptions(
decimal: true,
),
onChanged: (String value) {
setState(() {
strengthChar = value.length;
strengthChar =
value.length;
});
if (strengthChar >= 5) {
DrAppToastMsg.showErrorToast(
DrAppToastMsg
.showErrorToast(
"Only 5 Digits allowed for strength");
}
},
onSubmit: (_) {
if (_selectedMedication != null &&
if (_selectedMedication !=
null &&
duration != null &&
frequency != null &&
strengthController.text !=
strengthController
.text !=
null) {
model.getBoxQuantity(
freq: frequency[
'parameterCode'],
duration: duration['id'],
duration:
duration['id'],
itemCode:
_selectedMedication
.itemId,
@ -479,12 +496,15 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
.width *
0.350,
child: InkWell(
onTap: model.itemMedicineListUnit !=
onTap:
model.itemMedicineListUnit !=
null
? () {
Helpers.hideKeyboard(
Helpers
.hideKeyboard(
context);
ListSelectDialog dialog =
ListSelectDialog
dialog =
ListSelectDialog(
list: model
.itemMedicineListUnit,
@ -492,23 +512,27 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
'description',
attributeValueId:
'parameterCode',
okText:
TranslationBase.of(
okText: TranslationBase.of(
context)
.ok,
okFunction:
(selectedValue) {
setState(() {
units = selectedValue;
setState(
() {
units =
selectedValue;
units['isDefault'] =
true;
});
},
);
showDialog(
barrierDismissible: false,
context: context,
builder: (BuildContext
barrierDismissible:
false,
context:
context,
builder:
(BuildContext
context) {
return dialog;
},
@ -530,82 +554,110 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
],
),
),
SizedBox(height: spaceBetweenTextFileds),
SizedBox(
height: spaceBetweenTextFileds),
Container(
height: screenSize.height * 0.070,
color: Colors.white,
child: InkWell(
onTap: model.itemMedicineListRoute != null
onTap:
model.itemMedicineListRoute !=
null
? () {
Helpers.hideKeyboard(context);
ListSelectDialog dialog =
Helpers.hideKeyboard(
context);
ListSelectDialog
dialog =
ListSelectDialog(
list:
model.itemMedicineListRoute,
attributeName: 'description',
list: model
.itemMedicineListRoute,
attributeName:
'description',
attributeValueId:
'parameterCode',
okText:
TranslationBase.of(context)
TranslationBase.of(
context)
.ok,
okFunction: (selectedValue) {
okFunction:
(selectedValue) {
setState(() {
route = selectedValue;
route['isDefault'] = true;
route =
selectedValue;
route['isDefault'] =
true;
});
if (route == null) {
if (route ==
null) {
helpers.showErrorToast(
'plase fill');
}
},
);
showDialog(
barrierDismissible: false,
barrierDismissible:
false,
context: context,
builder:
(BuildContext context) {
(BuildContext
context) {
return dialog;
},
);
}
: null,
child: TextField(
decoration: textFieldSelectorDecoration(
TranslationBase.of(context).route,
decoration:
textFieldSelectorDecoration(
TranslationBase.of(
context)
.route,
route != null
? route['description']
? route[
'description']
: null,
true),
enabled: false,
),
),
),
SizedBox(height: spaceBetweenTextFileds),
SizedBox(
height: spaceBetweenTextFileds),
Container(
height: screenSize.height * 0.070,
color: Colors.white,
child: InkWell(
onTap: model.itemMedicineList != null
onTap:
model.itemMedicineList != null
? () {
Helpers.hideKeyboard(context);
ListSelectDialog dialog =
Helpers.hideKeyboard(
context);
ListSelectDialog
dialog =
ListSelectDialog(
list: model.itemMedicineList,
attributeName: 'description',
list: model
.itemMedicineList,
attributeName:
'description',
attributeValueId:
'parameterCode',
okText:
TranslationBase.of(context)
TranslationBase.of(
context)
.ok,
okFunction: (selectedValue) {
okFunction:
(selectedValue) {
setState(() {
frequency = selectedValue;
frequency['isDefault'] =
frequency =
selectedValue;
frequency[
'isDefault'] =
true;
if (_selectedMedication !=
if (_selectedMedication != null &&
duration !=
null &&
frequency !=
null &&
duration != null &&
frequency != null &&
strengthController
.text !=
null) {
@ -613,13 +665,14 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
freq: frequency[
'parameterCode'],
duration:
duration['id'],
duration[
'id'],
itemCode:
_selectedMedication
.itemId,
strength: double.parse(
strengthController
.text));
strength:
double.parse(
strengthController.text));
return;
}
@ -627,64 +680,82 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
},
);
showDialog(
barrierDismissible: false,
barrierDismissible:
false,
context: context,
builder:
(BuildContext context) {
(BuildContext
context) {
return dialog;
},
);
}
: null,
child: TextField(
decoration: textFieldSelectorDecoration(
TranslationBase.of(context)
decoration:
textFieldSelectorDecoration(
TranslationBase.of(
context)
.frequency,
frequency != null
? frequency['description']
? frequency[
'description']
: null,
true),
enabled: false,
),
),
),
SizedBox(height: spaceBetweenTextFileds),
SizedBox(
height: spaceBetweenTextFileds),
Container(
height: screenSize.height * 0.070,
color: Colors.white,
child: InkWell(
onTap: model.medicationDoseTimeList !=
onTap:
model.medicationDoseTimeList !=
null
? () {
Helpers.hideKeyboard(context);
ListSelectDialog dialog =
Helpers.hideKeyboard(
context);
ListSelectDialog
dialog =
ListSelectDialog(
list: model
.medicationDoseTimeList,
attributeName: 'nameEn',
attributeValueId: 'id',
attributeName:
'nameEn',
attributeValueId:
'id',
okText:
TranslationBase.of(context)
TranslationBase.of(
context)
.ok,
okFunction: (selectedValue) {
okFunction:
(selectedValue) {
setState(() {
doseTime = selectedValue;
doseTime =
selectedValue;
});
},
);
showDialog(
barrierDismissible: false,
barrierDismissible:
false,
context: context,
builder:
(BuildContext context) {
(BuildContext
context) {
return dialog;
},
);
}
: null,
child: TextField(
decoration: textFieldSelectorDecoration(
TranslationBase.of(context)
decoration:
textFieldSelectorDecoration(
TranslationBase.of(
context)
.doseTime,
doseTime != null
? doseTime['nameEn']
@ -694,8 +765,10 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
),
),
),
SizedBox(height: spaceBetweenTextFileds),
if (model.patientAssessmentList.isNotEmpty)
SizedBox(
height: spaceBetweenTextFileds),
if (model
.patientAssessmentList.isNotEmpty)
Container(
height: screenSize.height * 0.070,
width: double.infinity,
@ -703,12 +776,14 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
child: Row(
children: [
Container(
width: MediaQuery.of(context)
width:
MediaQuery.of(context)
.size
.width *
0.29,
child: InkWell(
onTap: indicationList != null
onTap:
indicationList != null
? () {
Helpers.hideKeyboard(
context);
@ -722,8 +797,10 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
0]
.icdCode10ID
.toString(),
indication != null
? indication['name']
indication !=
null
? indication[
'name']
: null,
false),
enabled: true,
@ -732,13 +809,15 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
),
),
Container(
width: MediaQuery.of(context)
width:
MediaQuery.of(context)
.size
.width *
0.65,
color: Colors.white,
child: InkWell(
onTap: indicationList != null
onTap:
indicationList != null
? () {
Helpers.hideKeyboard(
context);
@ -753,8 +832,10 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
0]
.asciiDesc
.toString(),
indication != null
? indication['name']
indication !=
null
? indication[
'name']
: null,
false),
enabled: true,
@ -765,16 +846,20 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
],
),
),
SizedBox(height: spaceBetweenTextFileds),
SizedBox(
height: spaceBetweenTextFileds),
Container(
height: screenSize.height * 0.070,
color: Colors.white,
child: InkWell(
onTap: () =>
selectDate(context, widget.model),
onTap: () => selectDate(
context, widget.model),
child: TextField(
decoration: textFieldSelectorDecoration(
TranslationBase.of(context).date,
decoration:
textFieldSelectorDecoration(
TranslationBase.of(
context)
.date,
selectedDate != null
? "${DateUtils.convertStringToDateFormat(selectedDate.toString(), "yyyy-MM-dd")}"
: null,
@ -787,39 +872,51 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
),
),
),
SizedBox(height: spaceBetweenTextFileds),
SizedBox(
height: spaceBetweenTextFileds),
Container(
height: screenSize.height * 0.070,
color: Colors.white,
child: InkWell(
onTap: model.medicationDurationList !=
onTap:
model.medicationDurationList !=
null
? () {
Helpers.hideKeyboard(context);
ListSelectDialog dialog =
Helpers.hideKeyboard(
context);
ListSelectDialog
dialog =
ListSelectDialog(
list: model
.medicationDurationList,
attributeName: 'nameEn',
attributeValueId: 'id',
attributeName:
'nameEn',
attributeValueId:
'id',
okText:
TranslationBase.of(context)
TranslationBase.of(
context)
.ok,
okFunction: (selectedValue) {
okFunction:
(selectedValue) {
setState(() {
duration = selectedValue;
if (_selectedMedication !=
duration =
selectedValue;
if (_selectedMedication != null &&
duration !=
null &&
frequency !=
null &&
duration != null &&
frequency != null &&
strengthController
.text !=
null) {
model.getBoxQuantity(
model
.getBoxQuantity(
freq: frequency[
'parameterCode'],
duration:
duration['id'],
duration[
'id'],
itemCode:
_selectedMedication
.itemId,
@ -827,7 +924,8 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
strengthController
.text),
);
box = model.boxQuintity;
box = model
.boxQuintity;
return;
}
@ -835,18 +933,22 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
},
);
showDialog(
barrierDismissible: false,
barrierDismissible:
false,
context: context,
builder:
(BuildContext context) {
(BuildContext
context) {
return dialog;
},
);
}
: null,
child: TextField(
decoration: textFieldSelectorDecoration(
TranslationBase.of(context)
decoration:
textFieldSelectorDecoration(
TranslationBase.of(
context)
.duration,
duration != null
? duration['nameEn']
@ -856,86 +958,108 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
),
),
),
SizedBox(height: spaceBetweenTextFileds),
SizedBox(
height: spaceBetweenTextFileds),
Container(
height: screenSize.height * 0.070,
color: Colors.white,
child: InkWell(
onTap: model.allMedicationList != null
onTap: model.allMedicationList !=
null
? () {
Helpers.hideKeyboard(context);
Helpers.hideKeyboard(
context);
ListSelectDialog dialog =
ListSelectDialog(
list: model.allMedicationList,
list: model
.allMedicationList,
attributeName: 'nameEn',
attributeValueId: 'id',
okText:
TranslationBase.of(context)
TranslationBase.of(
context)
.ok,
okFunction: (selectedValue) {
okFunction:
(selectedValue) {
setState(() {
duration = selectedValue;
duration =
selectedValue;
});
},
);
showDialog(
barrierDismissible: false,
barrierDismissible:
false,
context: context,
builder:
(BuildContext context) {
builder: (BuildContext
context) {
return dialog;
},
);
}
: null,
child: TextField(
decoration: textFieldSelectorDecoration(
decoration:
textFieldSelectorDecoration(
"UOM",
uom != null ? uom : null,
uom != null
? uom
: null,
false),
//enabled: false,
readOnly: true,
),
),
),
SizedBox(height: spaceBetweenTextFileds),
SizedBox(
height: spaceBetweenTextFileds),
Container(
height: screenSize.height * 0.070,
color: Colors.white,
child: InkWell(
onTap: model.allMedicationList != null
onTap: model.allMedicationList !=
null
? () {
Helpers.hideKeyboard(context);
Helpers.hideKeyboard(
context);
ListSelectDialog dialog =
ListSelectDialog(
list: model.allMedicationList,
list: model
.allMedicationList,
attributeName: 'nameEn',
attributeValueId: 'id',
okText:
TranslationBase.of(context)
TranslationBase.of(
context)
.ok,
okFunction: (selectedValue) {
okFunction:
(selectedValue) {
setState(() {
duration = selectedValue;
duration =
selectedValue;
});
},
);
showDialog(
barrierDismissible: false,
barrierDismissible:
false,
context: context,
builder:
(BuildContext context) {
builder: (BuildContext
context) {
return dialog;
},
);
}
: null,
child: TextField(
decoration: textFieldSelectorDecoration(
decoration:
textFieldSelectorDecoration(
"Box Quantity",
box != null
? "Box Quantity: " +
model.boxQuintity.toString()
model
.boxQuintity
.toString()
: null,
false),
//enabled: false,
@ -943,24 +1067,28 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
),
),
),
SizedBox(height: spaceBetweenTextFileds),
SizedBox(
height: spaceBetweenTextFileds),
Container(
decoration: BoxDecoration(
borderRadius: BorderRadius.all(
Radius.circular(6.0)),
border: Border.all(
width: 1.0,
color: HexColor("#CCCCCC"))),
color:
HexColor("#CCCCCC"))),
child: TextFields(
maxLines: 6,
minLines: 4,
hintText: TranslationBase.of(context)
hintText:
TranslationBase.of(context)
.instruction,
controller: instructionController,
//keyboardType: TextInputType.number,
),
),
SizedBox(height: spaceBetweenTextFileds),
SizedBox(
height: spaceBetweenTextFileds),
Container(
margin: EdgeInsets.all(
SizeConfig.widthMultiplier * 5),
@ -969,7 +1097,8 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
children: <Widget>[
AppButton(
color: Color(0xff359846),
title: TranslationBase.of(context)
title: TranslationBase.of(
context)
.addMedication,
fontWeight: FontWeight.w600,
onPressed: () {
@ -996,14 +1125,16 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
}
if (double.parse(
strengthController.text) >
strengthController
.text) >
1000.0) {
DrAppToastMsg.showErrorToast(
"1000 is the MAX for the strength");
return;
}
if (double.parse(
strengthController.text) <
strengthController
.text) <
0.0) {
DrAppToastMsg.showErrorToast(
"strength can't be zero");
@ -1097,6 +1228,10 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
),
),
),
],
),
),
),
);
}),
),

@ -134,9 +134,14 @@ class _EntityListCheckboxSearchWidgetState
children: [
AppText(
TranslationBase.of(context)
.orderType),
.orderType,
fontWeight: FontWeight.w700,
),
Row(
children: [
Radio(
activeColor: Color(0xFFB9382C),
activeColor:
Color(0xFFB9382C),
value: 0,
groupValue: selectedType,
onChanged: (value) {
@ -150,7 +155,8 @@ class _EntityListCheckboxSearchWidgetState
),
Text('routine'),
Radio(
activeColor: Color(0xFFB9382C),
activeColor:
Color(0xFFB9382C),
groupValue: selectedType,
value: 1,
onChanged: (value) {
@ -162,18 +168,21 @@ class _EntityListCheckboxSearchWidgetState
value.toString();
},
),
Text(TranslationBase.of(context)
Text(TranslationBase.of(
context)
.urgent),
],
),
],
),
),
),
SizedBox(
height: 15.0,
height: 2.0,
),
Padding(
padding: EdgeInsets.symmetric(
horizontal: 12),
horizontal: 12, vertical: 12.0),
child: TextFields(
hintText: TranslationBase.of(context)
.remarks,

@ -622,6 +622,11 @@ class TranslationBase {
String get rescheduleLeaves =>
localizedValues['reschedule-leave'][locale.languageCode];
String get applyOrRescheduleLeave =>
localizedValues['applyOrRescheduleLeave'][locale.languageCode];
String get myQRCode =>
localizedValues['myQRCode'][locale.languageCode];
String get addMedication =>
localizedValues['addMedication'][locale.languageCode];

@ -35,9 +35,6 @@ class MyScheduleWidget extends StatelessWidget {
fontFamily: 'Poppins',
// fontSize: 18
),
SizedBox(
height: 10,
),
AppText(
' ${workingHoursTable.date.day} ${(DateUtils.getMonth(workingHoursTable.date.month).toString().substring(0, 3))}',
fontSize: 18,

@ -26,7 +26,7 @@ class StepsWidget extends StatelessWidget {
color: Colors.transparent,
child: Center(
child: Container(
width: MediaQuery.of(context).size.width * 0.87,
width: MediaQuery.of(context).size.width * 0.86,
child: Divider(
color: Colors.grey,
height: 0.75,

@ -95,7 +95,7 @@ class _UpdateSoapIndexState extends State<UpdateSoapIndex>
child: StepsWidget(
index: _currentIndex,
changeCurrentTab: changePageViewIndex,
height: MediaQuery.of(context).size.height * 0.20,
height: 135,//MediaQuery.of(context).size.height * 0.17,
),
),
Container(

@ -68,7 +68,7 @@ class _AppTextFieldCustomState extends State<AppTextFieldCustom> {
widget.hintText,
fontFamily: 'Poppins',
fontSize: SizeConfig.textMultiplier * 1.4,
fontWeight: FontWeight.w600,
fontWeight: FontWeight.w700,
),
widget.dropDownText == null
? TextField(

@ -45,10 +45,12 @@ class _AppDrawerState extends State<AppDrawer> {
flex: 4,
child: ListView(padding: EdgeInsets.zero, children: <Widget>[
Container(
margin: EdgeInsets.symmetric(horizontal: 20),
margin: EdgeInsets.symmetric(horizontal: 15),
// height: SizeConfig.heightMultiplier * 50,
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Row(
children: [
Container(
child: Image.asset(
@ -56,7 +58,23 @@ class _AppDrawerState extends State<AppDrawer> {
),
margin: EdgeInsets.only(top: 10, bottom: 10),
),
SizedBox(height: 10),
Container(
child: InkWell(
onTap: (){
Navigator.pop(context);
},
child: Icon(
DoctorApp.close_1,
size: 20,
),
),
margin: EdgeInsets.only(top: 20, bottom: 10),
)
],
crossAxisAlignment: CrossAxisAlignment.start,
mainAxisAlignment: MainAxisAlignment.spaceBetween,
),
SizedBox(height: 5),
if (authProvider.doctorProfile != null)
InkWell(
onTap: () {
@ -80,7 +98,7 @@ class _AppDrawerState extends State<AppDrawer> {
),
),
Padding(
padding: EdgeInsets.only(top: 5),
padding: EdgeInsets.only(top: 0),
child: AppText(
authProvider.doctorProfile?.clinicDescription,
fontWeight: FontWeight.w600,
@ -91,13 +109,10 @@ class _AppDrawerState extends State<AppDrawer> {
],
),
),
SizedBox(height: 10),
SizedBox(height: 40),
InkWell(
child: DrawerItem(
TranslationBase.of(context).rescheduleLeaves,
// " or " +
// TranslationBase.of(context).leaves,
TranslationBase.of(context).applyOrRescheduleLeave,
DoctorApp.reschedule__1,
// subTitle: ,
),
@ -111,19 +126,15 @@ class _AppDrawerState extends State<AppDrawer> {
));
},
),
SizedBox(height: 10),
SizedBox(height: 15),
InkWell(
child: DrawerItem(
'My QR Code',
// " or " +
// TranslationBase.of(context).leaves,
TranslationBase.of(context).myQRCode,
DoctorApp.qr_code_3,
// subTitle: ,
),
),
SizedBox(height: 15),
InkWell(
child: Container(
height: 80,
@ -138,14 +149,12 @@ class _AppDrawerState extends State<AppDrawer> {
),
),
SizedBox(
height: 40,
height: 130,
),
Container(
margin: EdgeInsets.symmetric(horizontal: 20),
child: Column(
children: [
InkWell(
child: DrawerItem(
projectsProvider.isArabic
@ -159,6 +168,7 @@ class _AppDrawerState extends State<AppDrawer> {
projectsProvider.changeLanguage('ar');
},
),
SizedBox(height: 10),
InkWell(
child: DrawerItem(
TranslationBase.of(context).logout, DoctorApp.logout_1),
@ -193,13 +203,13 @@ class _AppDrawerState extends State<AppDrawer> {
style: TextStyle(
color: Color(0xFF989898),
fontWeight: FontWeight.bold,
fontSize: SizeConfig.textMultiplier * 2,
fontSize: 14,
fontFamily: 'Poppins',),
children: <TextSpan>[
TextSpan(text: ' Cloud Solutions',
style: TextStyle(
color: Color(0xFF2E303A),
fontSize: SizeConfig.textMultiplier * 2,
fontSize: 15,
fontFamily: 'Poppins',),
)
]

@ -37,23 +37,23 @@ class _BottomNavBarState extends State<BottomNavBar> {
mainAxisAlignment: MainAxisAlignment.spaceAround,
children: [
BottomNavigationItem(
icon: DoctorApp.home_icon_active,
activeIcon: DoctorApp.home_active,
icon: DoctorApp.home_1,
activeIcon: DoctorApp.home_active_1,
changeIndex: _changeIndex,
index: _index,
currentIndex: 0,
name: TranslationBase.of(context).home,
),
BottomNavigationItem(
icon: DoctorApp.schedule_icon,
activeIcon: DoctorApp.scdedule_icon_active_1,
icon: DoctorApp.schedule_1,
activeIcon: DoctorApp.schedule_active_1,
changeIndex: _changeIndex,
index: _index,
currentIndex: 1,
name: TranslationBase.of(context).mySchedule,
),
BottomNavigationItem(
icon: DoctorApp.qr_code,
icon: DoctorApp.qr_reader,
activeIcon: DoctorApp.qr_reader_active_1,
changeIndex: _changeIndex,
index: _index,
@ -61,7 +61,7 @@ class _BottomNavBarState extends State<BottomNavBar> {
name: TranslationBase.of(context).qr,
),
BottomNavigationItem(
icon: DoctorApp.message_icon,
icon: DoctorApp.dr_reply_1,
activeIcon: DoctorApp.dr_reply_active_1,
changeIndex: _changeIndex,
index: _index,

@ -34,19 +34,10 @@ class BottomNavigationItem extends StatelessWidget {
children: <Widget>[
SizedBox(height: 15,),
Container(
// decoration: BoxDecoration(boxShadow: [
// BoxShadow(
// color: currentIndex == index
// ? Color.fromRGBO(78, 62, 253, 0.4)
// : Color.fromRGBO(78, 62, 253, 0),
// blurRadius: 9.0,
// spreadRadius: -4.0,
// offset: Offset(0.0, 2.0))
// ]),
child: Icon(currentIndex == index ? activeIcon : icon,
/*color: currentIndex == index
? Theme.of(context).primaryColor
: Theme.of(context).dividerColor,*/
color: currentIndex == index
? Color(0xFF333C45)
: Theme.of(context).dividerColor,
size: 22.0),
),
SizedBox(height: 5,),

@ -26,7 +26,7 @@ class _DrawerItemState extends State<DrawerItem> {
@override
Widget build(BuildContext context) {
return Container(
margin: EdgeInsets.only(top: 5, bottom: 5, left: 0, right: 0),
margin: EdgeInsets.only(top: 0, bottom: 5, left: 0, right: 0),
child: Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
@ -49,16 +49,9 @@ class _DrawerItemState extends State<DrawerItem> {
color:widget.color ??Color(0xFF2E303A),
fontSize: 14,
fontFamily: 'Poppins',
fontWeight: FontWeight.bold,
fontWeight: FontWeight.w600,
),
),
AppText(
widget.subTitle,
visibility: !widget.subTitle.isNullOrEmpty(),
color: widget.color ?? Colors.black,
marginLeft: 5,
fontSize: SizeConfig.textMultiplier * 2.5,
),
],
),
),

@ -137,14 +137,29 @@ class _MasterKeyCheckboxSearchAllergiesWidgetState
items[index]),
activeColor: Colors.red[800],
onChanged: (bool newValue) {
// setState(() {
// if (widget
// .isServiceSelected(items[index])) {
// widget.removeHistory(items[index]);
// } else {
// widget.addHistory(items[index]);
// }
// });
setState(() {
if (widget
.isServiceSelected(
items[index])) {
widget.removeAllergy(
items[index]);
} else {
// TODO add Allergy
MySelectedAllergy
mySelectedAllergy =
new MySelectedAllergy(
selectedAllergy:
items[index],
selectedAllergySeverity:
_selectedAllergySeverity,
remark: null,
isChecked: true,
isExpanded: true);
widget.addAllergy(
mySelectedAllergy);
}
});
}),
InkWell(
onTap: () {

Loading…
Cancel
Save