fix allergy

merge-requests/452/head
Elham Rababah 5 years ago
parent d987859865
commit ed02bbc1f0

@ -5,6 +5,7 @@ class MySelectedAllergy {
MasterKeyModel selectedAllergy; MasterKeyModel selectedAllergy;
String remark; String remark;
bool isChecked; bool isChecked;
bool isExpanded;
int createdBy; int createdBy;
MySelectedAllergy( MySelectedAllergy(
@ -12,6 +13,7 @@ class MySelectedAllergy {
this.selectedAllergy, this.selectedAllergy,
this.remark, this.remark,
this.isChecked, this.isChecked,
this.isExpanded = true,
this.createdBy}); this.createdBy});
MySelectedAllergy.fromJson(Map<String, dynamic> json) { MySelectedAllergy.fromJson(Map<String, dynamic> json) {
@ -22,7 +24,8 @@ class MySelectedAllergy {
? new MasterKeyModel.fromJson(json['selectedAllergy']) ? new MasterKeyModel.fromJson(json['selectedAllergy'])
: null; : null;
remark = json['remark']; remark = json['remark'];
remark = json['isChecked']; isChecked = json['isChecked'];
isExpanded = json['isExpanded'];
createdBy = json['createdBy']; createdBy = json['createdBy'];
} }
@ -35,7 +38,8 @@ class MySelectedAllergy {
data['selectedAllergy'] = this.selectedAllergy.toJson(); data['selectedAllergy'] = this.selectedAllergy.toJson();
} }
data['remark'] = this.remark; data['remark'] = this.remark;
data['isChecked'] = this.remark; data['isChecked'] = this.isChecked;
data['isExpanded'] = this.isExpanded;
data['createdBy'] = this.createdBy; data['createdBy'] = this.createdBy;
return data; return data;
} }

@ -96,37 +96,63 @@ class _MasterKeyCheckboxSearchAllergiesWidgetState
child: ListView.builder( child: ListView.builder(
itemCount: items.length, itemCount: items.length,
itemBuilder: (context, index) { itemBuilder: (context, index) {
bool isSelected = widget.isServiceSelected( bool isSelected =
items[index]); widget.isServiceSelected(items[index]);
MySelectedAllergy mySelectedAllergy; MySelectedAllergy mySelectedAllergy;
if (isSelected) { if (isSelected) {
mySelectedAllergy = widget mySelectedAllergy =
.getServiceSelectedAllergy( widget.getServiceSelectedAllergy(
items[index]); items[index]);
} }
TextEditingController remarkController = TextEditingController( TextEditingController remarkController =
text: isSelected ? mySelectedAllergy TextEditingController(
.remark : null); text: isSelected
TextEditingController severityController = TextEditingController( ? mySelectedAllergy.remark
text: isSelected ? mySelectedAllergy : null);
.selectedAllergySeverity != null TextEditingController severityController =
? projectViewModel TextEditingController(
.isArabic text: isSelected
? mySelectedAllergy
.selectedAllergySeverity !=
null
? projectViewModel.isArabic
? mySelectedAllergy ? mySelectedAllergy
.selectedAllergySeverity .selectedAllergySeverity
.nameAr .nameAr
: mySelectedAllergy : mySelectedAllergy
.selectedAllergySeverity .selectedAllergySeverity
.nameEn .nameEn
: null : null); : null
: null);
return HeaderBodyExpandableNotifier( return HeaderBodyExpandableNotifier(
headerWidget: InkWell( headerWidget: Row(
mainAxisAlignment:
MainAxisAlignment.spaceBetween,
children: [
Row(
children: [
Checkbox(
value:
widget.isServiceSelected(
items[index]),
activeColor: Colors.red[800],
onChanged: (bool newValue) {
// setState(() {
// if (widget
// .isServiceSelected(items[index])) {
// widget.removeHistory(items[index]);
// } else {
// widget.addHistory(items[index]);
// }
// });
}),
InkWell(
onTap: () { onTap: () {
setState(() { setState(() {
if (widget.isServiceSelected( if (widget
.isServiceSelected(
items[index])) { items[index])) {
widget widget.removeAllergy(
.removeAllergy(
items[index]); items[index]);
} else { } else {
// TODO add Allergy // TODO add Allergy
@ -139,36 +165,21 @@ class _MasterKeyCheckboxSearchAllergiesWidgetState
selectedAllergySeverity: selectedAllergySeverity:
_selectedAllergySeverity, _selectedAllergySeverity,
remark: null, remark: null,
isChecked: true); isChecked: true,
isExpanded: true);
widget.addAllergy( widget.addAllergy(
mySelectedAllergy); mySelectedAllergy);
} }
}); });
}, },
child: Row( child: Expanded(
children: [
Checkbox(
value: widget
.isServiceSelected(
items[index]),
activeColor:
Colors.red[800],
onChanged: (bool newValue) {
// setState(() {
// if (widget
// .isServiceSelected(items[index])) {
// widget.removeHistory(items[index]);
// } else {
// widget.addHistory(items[index]);
// }
// });
}),
Expanded(
child: Padding( child: Padding(
padding: const EdgeInsets padding: const EdgeInsets
.symmetric( .symmetric(
horizontal: 10, horizontal: 10,
vertical: 0), vertical: 0),
child: Container(
child: AppText( child: AppText(
projectViewModel.isArabic projectViewModel.isArabic
? items[index] ? items[index]
@ -184,16 +195,39 @@ class _MasterKeyCheckboxSearchAllergiesWidgetState
fontWeight: fontWeight:
FontWeight.w600, FontWeight.w600,
), ),
width: MediaQuery.of(context).size.width * 0.55,
),
),
), ),
), ),
InkWell(
// onTap: onTap,
child: Icon(
isSelected ? EvaIcons.arrowIosUpwardOutline: EvaIcons.arrowIosDownwardOutline))
], ],
), ),
InkWell(
onTap: () {
if (mySelectedAllergy != null) {
setState(() {
mySelectedAllergy
.isExpanded =
mySelectedAllergy
.isExpanded
? false
: true;
});
}
},
child: Icon((mySelectedAllergy !=
null
? mySelectedAllergy
.isExpanded
: false)
? EvaIcons
.arrowIosUpwardOutline
: EvaIcons
.arrowIosDownwardOutline))
],
), ),
bodyWidget: isSelected?Column(children: [ bodyWidget: Column(
children: [
TextFields( TextFields(
onTapTextFields: widget.model onTapTextFields: widget.model
.allergySeverityList != .allergySeverityList !=
@ -228,6 +262,7 @@ class _MasterKeyCheckboxSearchAllergiesWidgetState
} }
: null, : null,
hasLabelText: hasLabelText:
mySelectedAllergy != null &&
mySelectedAllergy mySelectedAllergy
.selectedAllergySeverity != .selectedAllergySeverity !=
null null
@ -315,8 +350,10 @@ class _MasterKeyCheckboxSearchAllergiesWidgetState
SizedBox( SizedBox(
height: 10, height: 10,
), ),
],):Column(), ],),
isExpand: isSelected, isExpand: mySelectedAllergy != null
? mySelectedAllergy.isExpanded
: false,
); );

Loading…
Cancel
Save