|
|
|
@ -72,14 +72,38 @@ class _BloodDonationPageState extends State<BloodDonationPage> {
|
|
|
|
super.initState();
|
|
|
|
super.initState();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int getSelectedCityID(MyBalanceViewModel model) {
|
|
|
|
|
|
|
|
int cityID = 1;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
model.CitiesModelList.forEach((element) {
|
|
|
|
|
|
|
|
if (element.description == model.bloodModelList[0].city) {
|
|
|
|
|
|
|
|
cityID = element.iD;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return cityID;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@override
|
|
|
|
@override
|
|
|
|
Widget build(BuildContext context) {
|
|
|
|
Widget build(BuildContext context) {
|
|
|
|
projectProvider = Provider.of(context);
|
|
|
|
projectProvider = Provider.of(context);
|
|
|
|
|
|
|
|
|
|
|
|
return BaseView<MyBalanceViewModel>(
|
|
|
|
return BaseView<MyBalanceViewModel>(
|
|
|
|
onModelReady: (model) {
|
|
|
|
onModelReady: (model) {
|
|
|
|
model.getCities();
|
|
|
|
model.getCities().then((value) {
|
|
|
|
model.getBlood();
|
|
|
|
model.getBlood().then((value) {
|
|
|
|
|
|
|
|
if (model.bloodModelList.length > 0) {
|
|
|
|
|
|
|
|
CitiesModel citiesModel = new CitiesModel();
|
|
|
|
|
|
|
|
citiesModel.iD = getSelectedCityID(model);
|
|
|
|
|
|
|
|
_selectedHospitalIndex = (citiesModel.iD - 1);
|
|
|
|
|
|
|
|
citiesModel.description = model.CitiesModelList[_selectedHospitalIndex].description;
|
|
|
|
|
|
|
|
citiesModel.descriptionN = model.CitiesModelList[_selectedHospitalIndex].descriptionN;
|
|
|
|
|
|
|
|
_selectedHospital = citiesModel;
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
_selectedHospital = model.CitiesModelList[0];
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
});
|
|
|
|
},
|
|
|
|
},
|
|
|
|
builder: (_, model, w) => AppScaffold(
|
|
|
|
builder: (_, model, w) => AppScaffold(
|
|
|
|
isShowAppBar: true,
|
|
|
|
isShowAppBar: true,
|
|
|
|
@ -108,11 +132,10 @@ class _BloodDonationPageState extends State<BloodDonationPage> {
|
|
|
|
if (projectProvider.isLogin && model.state != ViewState.Busy)
|
|
|
|
if (projectProvider.isLogin && model.state != ViewState.Busy)
|
|
|
|
CommonDropDownView(
|
|
|
|
CommonDropDownView(
|
|
|
|
TranslationBase.of(context).city,
|
|
|
|
TranslationBase.of(context).city,
|
|
|
|
(model.bloodModelList.isNotEmpty && model.CitiesModelList.isNotEmpty)
|
|
|
|
// (model.bloodModelList.isNotEmpty && model.CitiesModelList.isNotEmpty)
|
|
|
|
? model.bloodModelList[0].city
|
|
|
|
// ? model.bloodModelList[0].city
|
|
|
|
: projectProvider.isArabic
|
|
|
|
// :
|
|
|
|
? model.CitiesModelList[_selectedHospitalIndex].descriptionN
|
|
|
|
projectProvider.isArabic ? _selectedHospital.descriptionN : _selectedHospital.description, () {
|
|
|
|
: model.CitiesModelList[_selectedHospitalIndex].description, () {
|
|
|
|
|
|
|
|
List<RadioSelectionDialogModel> list = [
|
|
|
|
List<RadioSelectionDialogModel> list = [
|
|
|
|
for (int i = 0; i < model.CitiesModelList.length; i++)
|
|
|
|
for (int i = 0; i < model.CitiesModelList.length; i++)
|
|
|
|
RadioSelectionDialogModel(projectProvider.isArabic ? model.CitiesModelList[i].descriptionN : model.CitiesModelList[i].description, i),
|
|
|
|
RadioSelectionDialogModel(projectProvider.isArabic ? model.CitiesModelList[i].descriptionN : model.CitiesModelList[i].description, i),
|
|
|
|
@ -127,6 +150,7 @@ class _BloodDonationPageState extends State<BloodDonationPage> {
|
|
|
|
onValueSelected: (index) {
|
|
|
|
onValueSelected: (index) {
|
|
|
|
_selectedHospitalIndex = index;
|
|
|
|
_selectedHospitalIndex = index;
|
|
|
|
_selectedHospital = model.CitiesModelList[index];
|
|
|
|
_selectedHospital = model.CitiesModelList[index];
|
|
|
|
|
|
|
|
setState(() {});
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
|
|
|
),
|
|
|
|
);
|
|
|
|
);
|
|
|
|
@ -249,7 +273,7 @@ class _BloodDonationPageState extends State<BloodDonationPage> {
|
|
|
|
AppToast.showErrorToast(message: TranslationBase.of(context).selectCity);
|
|
|
|
AppToast.showErrorToast(message: TranslationBase.of(context).selectCity);
|
|
|
|
return;
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
bloodDetails.city = projectProvider.isArabic ? _selectedHospital.descriptionN : _selectedHospital.description;
|
|
|
|
bloodDetails.city = _selectedHospital.description;
|
|
|
|
bloodDetails.cityCode = _selectedHospital.iD.toString();
|
|
|
|
bloodDetails.cityCode = _selectedHospital.iD.toString();
|
|
|
|
bloodDetails.gender = _selectedGenderIndex;
|
|
|
|
bloodDetails.gender = _selectedGenderIndex;
|
|
|
|
bloodDetails.bloodGroup = getBlood(_selectedBloodTypeIndex);
|
|
|
|
bloodDetails.bloodGroup = getBlood(_selectedBloodTypeIndex);
|
|
|
|
|