make index page of add new referral as page controller

merge-requests/226/merge
Elham Rababah 5 years ago
parent a4905783ad
commit f582eee991

@ -206,6 +206,7 @@ const CHECK_ACTIVATION_CODE_FOR_ADVANCE_PAYMENT = 'Services/Authentication.svc/R
const GET_ALL_RELATIONSHIP_TYPES = "Services/Patients.svc/REST/GetAllRelationshipTypes";
const SEND_ACTIVATION_CODE_FOR_E_REFERRAL = 'Services/Authentication.svc/REST/SendActivationCodeForEReferral';
const CHECK_ACTIVATION_CODE_FOR_E_REFERRAL = 'Services/Authentication.svc/REST/CheckActivationCodeForEReferral';
const GET_ALL_CITIES = 'services/Lists.svc/rest/GetAllCities';
const TIMER_MIN = 10;

@ -1,6 +1,7 @@
import 'package:diplomaticquarterapp/config/config.dart';
import 'package:diplomaticquarterapp/core/service/base_service.dart';
import 'package:diplomaticquarterapp/models/AlHabibMedicalServices/EReferral/check_activation_code_for_e_referral_request_model.dart';
import 'package:diplomaticquarterapp/models/AlHabibMedicalServices/EReferral/get_all_cities_response_model.dart';
import 'package:diplomaticquarterapp/models/AlHabibMedicalServices/EReferral/get_all_relationship_types_response_model.dart';
import 'package:diplomaticquarterapp/models/AlHabibMedicalServices/EReferral/send_activation_code_for_e_referral_request_model.dart';
@ -8,8 +9,11 @@ class EReferralService extends BaseService {
List<GetAllRelationshipTypeResponseModel> _relationTypes = List();
List<GetAllRelationshipTypeResponseModel> get relationTypes => _relationTypes;
List<GetAllCitiesResponseModel> _allCities = List();
List<GetAllCitiesResponseModel> get allCities => _allCities;
String _activationCode;
String _logInTokenID;
String get activationCode => _activationCode;
@ -31,12 +35,30 @@ class EReferralService extends BaseService {
}, body: {});
}
Future getAllCities() async {
await baseAppClient.post(GET_ALL_CITIES,
onSuccess: (dynamic response, int statusCode) {
_allCities.clear();
response['ListCities'].forEach((city) {
_allCities
.add(GetAllCitiesResponseModel.fromJson(city));
});
}, onFailure: (String error, int statusCode) {
hasError = true;
super.error = error;
}, body: {});
}
Future sendActivationCodeForEReferral(
SendActivationCodeForEReferralRequestModel
sendActivationCodeForEReferralRequestModel) async {
hasError = false;
await baseAppClient.post(SEND_ACTIVATION_CODE_FOR_E_REFERRAL,
onSuccess: (dynamic response, int statusCode) {
_activationCode = response["VerificationCode"];
_logInTokenID = response["LogInTokenID"];
}, onFailure: (String error, int statusCode) {
hasError = true;
super.error = error;
@ -46,6 +68,9 @@ class EReferralService extends BaseService {
Future checkActivationCodeForEReferral(
CheckActivationCodeForEReferralResponseModel
checkActivationCodeForEReferralRequestModel) async {
checkActivationCodeForEReferralRequestModel.isDentalAllowedBackend = false;
checkActivationCodeForEReferralRequestModel.logInTokenID= _logInTokenID;
hasError =false;
await baseAppClient.post(CHECK_ACTIVATION_CODE_FOR_E_REFERRAL,
onSuccess: (dynamic response, int statusCode) {
_isActivationCodeValid = true;

@ -3,6 +3,7 @@ import 'dart:core';
import 'package:diplomaticquarterapp/core/enum/viewstate.dart';
import 'package:diplomaticquarterapp/core/service/all_habib_medical_services/e_referral_service.dart';
import 'package:diplomaticquarterapp/models/AlHabibMedicalServices/EReferral/check_activation_code_for_e_referral_request_model.dart';
import 'package:diplomaticquarterapp/models/AlHabibMedicalServices/EReferral/get_all_cities_response_model.dart';
import 'package:diplomaticquarterapp/models/AlHabibMedicalServices/EReferral/get_all_relationship_types_response_model.dart';
import 'package:diplomaticquarterapp/models/AlHabibMedicalServices/EReferral/send_activation_code_for_e_referral_request_model.dart';
import 'package:diplomaticquarterapp/models/Appointments/DoctorListResponse.dart';
@ -15,6 +16,9 @@ class EReferralViewModel extends BaseViewModel {
List<GetAllRelationshipTypeResponseModel> get relationTypes =>
_eReferralService.relationTypes;
List<GetAllCitiesResponseModel> get allCities => _eReferralService.allCities;
void getRelationTypes() async {
setState(ViewState.Busy);
@ -22,8 +26,19 @@ class EReferralViewModel extends BaseViewModel {
if (_eReferralService.hasError) {
error = _eReferralService.error;
setState(ViewState.Error);
} else{
setState(ViewState.Idle);
}
}
void getAllCities() async {
setState(ViewState.Busy);
await _eReferralService.getAllCities();
if (_eReferralService.hasError) {
error = _eReferralService.error;
setState(ViewState.Error);
} else{
setState(ViewState.Idle);
}
setState(ViewState.Idle);
}
void sendActivationCodeForEReferral(SendActivationCodeForEReferralRequestModel sendActivationCodeForEReferralRequestModel) async {
@ -32,8 +47,9 @@ class EReferralViewModel extends BaseViewModel {
if (_eReferralService.hasError) {
error = _eReferralService.error;
setState(ViewState.ErrorLocal);
} else{
setState(ViewState.Idle);
}
setState(ViewState.Idle);
}
checkActivationCodeForEReferral(CheckActivationCodeForEReferralResponseModel checkActivationCodeForEReferralRequestModel) async {
@ -42,7 +58,8 @@ class EReferralViewModel extends BaseViewModel {
if (_eReferralService.hasError) {
error = _eReferralService.error;
setState(ViewState.ErrorLocal);
} else{
setState(ViewState.Idle);
}
setState(ViewState.Idle);
}
}

@ -0,0 +1,48 @@
class GetAllCitiesRequestModel {
double versionID;
int channel;
int languageID;
String iPAdress;
String generalid;
int patientOutSA;
Null sessionID;
bool isDentalAllowedBackend;
int deviceTypeID;
GetAllCitiesRequestModel(
{this.versionID,
this.channel,
this.languageID,
this.iPAdress,
this.generalid,
this.patientOutSA,
this.sessionID,
this.isDentalAllowedBackend,
this.deviceTypeID});
GetAllCitiesRequestModel.fromJson(Map<String, dynamic> json) {
versionID = json['VersionID'];
channel = json['Channel'];
languageID = json['LanguageID'];
iPAdress = json['IPAdress'];
generalid = json['generalid'];
patientOutSA = json['PatientOutSA'];
sessionID = json['SessionID'];
isDentalAllowedBackend = json['isDentalAllowedBackend'];
deviceTypeID = json['DeviceTypeID'];
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
data['VersionID'] = this.versionID;
data['Channel'] = this.channel;
data['LanguageID'] = this.languageID;
data['IPAdress'] = this.iPAdress;
data['generalid'] = this.generalid;
data['PatientOutSA'] = this.patientOutSA;
data['SessionID'] = this.sessionID;
data['isDentalAllowedBackend'] = this.isDentalAllowedBackend;
data['DeviceTypeID'] = this.deviceTypeID;
return data;
}
}

@ -0,0 +1,21 @@
class GetAllCitiesResponseModel {
int iD;
String description;
String descriptionN;
GetAllCitiesResponseModel({this.iD, this.description, this.descriptionN});
GetAllCitiesResponseModel.fromJson(Map<String, dynamic> json) {
iD = json['ID'];
description = json['Description'];
descriptionN = json['DescriptionN'];
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
data['ID'] = this.iD;
data['Description'] = this.description;
data['DescriptionN'] = this.descriptionN;
return data;
}
}

@ -0,0 +1,69 @@
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/E-Referral/New_E_Referral/new_e_referral_step_one_page.dart';
import 'package:flutter/material.dart';
import 'new_e_referral_step_two_page.dart';
class StartIndexForNewEReferral extends StatefulWidget {
StartIndexForNewEReferral();
@override
_StartIndexForNewEReferralState createState() =>
_StartIndexForNewEReferralState();
}
class _StartIndexForNewEReferralState extends State<StartIndexForNewEReferral>
with TickerProviderStateMixin {
PageController _controller;
int _currentIndex = 1;
int pageSelected = 2;
List<dynamic> attachments;
@override
void initState() {
super.initState();
_controller = new PageController();
}
@override
void dispose() {
super.dispose();
}
changePageViewIndex(pageIndex) {
_controller.jumpToPage(pageIndex);
}
@override
Widget build(BuildContext context) {
return Scaffold(
body: SafeArea(
child: SingleChildScrollView(
child: Container(
height: MediaQuery.of(context).size.height,
child: PageView(
physics: NeverScrollableScrollPhysics(),
controller: _controller,
onPageChanged: (index) {
setState(() {
_currentIndex = index;
});
},
scrollDirection: Axis.horizontal,
children: <Widget>[
NewEReferralStepOnePage(
changePageViewIndex: changePageViewIndex,
),
NewEReferralStepTowPage(
changePageViewIndex: changePageViewIndex,
),
],
),
),
),
),
);
}
}

@ -5,7 +5,7 @@ import 'package:diplomaticquarterapp/models/AlHabibMedicalServices/EReferral/get
import 'package:diplomaticquarterapp/models/AlHabibMedicalServices/EReferral/send_activation_code_for_e_referral_request_model.dart';
import 'package:diplomaticquarterapp/models/Authentication/authenticated_user.dart';
import 'package:diplomaticquarterapp/models/FamilyFiles/GetAllSharedRecordByStatusResponse.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/E-Referral/dialogs/e_referral_confirm_sms_dialog.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/E-Referral/e_referral_confirm_sms_dialog.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/E-Referral/dialogs/select_country_ingo_Dialog.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/E-Referral/dialogs/select_relation_type_dialog.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart';
@ -18,21 +18,20 @@ import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
enum BeneficiaryType { MyAccount, MyFamilyFiles, OtherAccount, NON }
class NewEReferralPage extends StatefulWidget {
class NewEReferralStepOnePage extends StatefulWidget {
final EReferralViewModel eReferralViewModel;
final Function changePageViewIndex;
const NewEReferralPage({Key key, this.eReferralViewModel}) : super(key: key);
const NewEReferralStepOnePage({Key key, this.eReferralViewModel, this.changePageViewIndex}) : super(key: key);
@override
_NewEReferralPageState createState() => _NewEReferralPageState();
_NewEReferralStepOnePageState createState() => _NewEReferralStepOnePageState();
}
class _NewEReferralPageState extends State<NewEReferralPage> {
class _NewEReferralStepOnePageState extends State<NewEReferralStepOnePage> {
TextEditingController _nameTextController = TextEditingController();
TextEditingController _mobileTextController = TextEditingController();
BeneficiaryType beneficiaryType = BeneficiaryType.NON;
GetAllRelationshipTypeResponseModel _selectedRelation;
String email;
AuthenticatedUser authenticatedUser;
@ -65,16 +64,15 @@ class _NewEReferralPageState extends State<NewEReferralPage> {
barrierDismissible: false,
child: EReferralConfirmSMSDialog(
phoneNumber: _selectedCountry['code']+_mobileTextController.text,
onSucces: ()=>
widget.changePageViewIndex(1)
),
).then((value) {
print("dialog dismissed");
print(value);
if (value != null && value) {
// AppoitmentAllHistoryResultList appo =
// new AppoitmentAllHistoryResultList();
// appo.projectID = patientInfoAndMobileNumber.projectID;
// openPayment(selectedPaymentMethod, authenticatedUser,
// double.parse(advanceModel.amount), appo);
}
});
}

@ -1,29 +1,35 @@
import 'package:diplomaticquarterapp/core/enum/viewstate.dart';
import 'package:diplomaticquarterapp/core/model/my_balance/AdvanceModel.dart';
import 'package:diplomaticquarterapp/core/viewModels/all_habib_medical_services/e_referral_view_model.dart';
import 'package:diplomaticquarterapp/models/AlHabibMedicalServices/EReferral/get_all_cities_request_model.dart';
import 'package:diplomaticquarterapp/models/AlHabibMedicalServices/EReferral/get_all_cities_response_model.dart';
import 'package:diplomaticquarterapp/models/AlHabibMedicalServices/EReferral/get_all_relationship_types_response_model.dart';
import 'package:diplomaticquarterapp/models/AlHabibMedicalServices/EReferral/send_activation_code_for_e_referral_request_model.dart';
import 'package:diplomaticquarterapp/models/Authentication/authenticated_user.dart';
import 'package:diplomaticquarterapp/models/FamilyFiles/GetAllSharedRecordByStatusResponse.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/E-Referral/dialogs/e_referral_confirm_sms_dialog.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/E-Referral/e_referral_confirm_sms_dialog.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/E-Referral/dialogs/select_country_ingo_Dialog.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/E-Referral/dialogs/select_relation_type_dialog.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/pages/medical/balance/new_text_Field.dart';
import 'package:diplomaticquarterapp/uitl/app_shared_preferences.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/bottom_options/BottomSheet.dart';
import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
import '../dialogs/select_city_dialog.dart';
enum BeneficiaryType { MyAccount, MyFamilyFiles, OtherAccount, NON }
class NewEReferralStepTowPage extends StatefulWidget {
final EReferralViewModel eReferralViewModel;
final Function changePageViewIndex;
const NewEReferralStepTowPage({Key key, this.eReferralViewModel}) : super(key: key);
const NewEReferralStepTowPage({Key key, this.eReferralViewModel, this.changePageViewIndex}) : super(key: key);
@override
_NewEReferralStepTowPageState createState() => _NewEReferralStepTowPageState();
@ -32,12 +38,9 @@ class NewEReferralStepTowPage extends StatefulWidget {
class _NewEReferralStepTowPageState extends State<NewEReferralStepTowPage> {
TextEditingController _nameTextController = TextEditingController();
TextEditingController _mobileTextController = TextEditingController();
BeneficiaryType beneficiaryType = BeneficiaryType.NON;
GetAllRelationshipTypeResponseModel _selectedRelation;
String email;
AuthenticatedUser authenticatedUser;
GetAllCitiesResponseModel _selectedCity ;
GetAllSharedRecordsByStatusList selectedPatientFamily;
AdvanceModel advanceModel = AdvanceModel();
List<String> images = [];
// todo create a model for Country
// todo use country from the json
@ -59,27 +62,8 @@ class _NewEReferralStepTowPageState extends State<NewEReferralStepTowPage> {
@override
Widget build(BuildContext context) {
void showSMSDialog() {
showDialog(
context: context,
barrierDismissible: false,
child: EReferralConfirmSMSDialog(
phoneNumber: _selectedCountry['code']+_mobileTextController.text,
),
).then((value) {
print("dialog dismissed");
print(value);
if (value != null && value) {
// AppoitmentAllHistoryResultList appo =
// new AppoitmentAllHistoryResultList();
// appo.projectID = patientInfoAndMobileNumber.projectID;
// openPayment(selectedPaymentMethod, authenticatedUser,
// double.parse(advanceModel.amount), appo);
}
});
}
return BaseView<EReferralViewModel>(
onModelReady: (model) => model.getRelationTypes(),
onModelReady: (model) => model.getAllCities(),
builder: (_, model, widget) => AppScaffold(
isShowAppBar: false,
body: SingleChildScrollView(
@ -98,7 +82,7 @@ class _NewEReferralStepTowPageState extends State<NewEReferralStepTowPage> {
Center(
child: Texts(
// TranslationBase.of(context).advancePaymentLabel,
"Steeeepppppppppp 2",
"Patient information",
textAlign: TextAlign.center,
),
),
@ -106,7 +90,14 @@ class _NewEReferralStepTowPageState extends State<NewEReferralStepTowPage> {
height: 12,
),
NewTextFields(
hintText: "Enter Referral Requester Name*",
hintText: "Enter Identification Number",
controller: _nameTextController,
),
SizedBox(
height: 12,
),
NewTextFields(
hintText: "Enter Patient Name",
controller: _nameTextController,
),
SizedBox(
@ -145,7 +136,7 @@ class _NewEReferralStepTowPageState extends State<NewEReferralStepTowPage> {
Center(
child: Texts(
// TranslationBase.of(context).advancePaymentLabel,
"Requester Relationship",
"Where the patient located",
textAlign: TextAlign.center,
),
),
@ -153,8 +144,8 @@ class _NewEReferralStepTowPageState extends State<NewEReferralStepTowPage> {
height: 12,
),
InkWell(
onTap: () => confirmSelectRelationTypeDialog(
model.relationTypes),
onTap: () => confirmSelectCityDialog(
model.allCities),
child: Container(
padding: EdgeInsets.all(12),
width: double.infinity,
@ -174,6 +165,73 @@ class _NewEReferralStepTowPageState extends State<NewEReferralStepTowPage> {
SizedBox(
height: 12,
),
InkWell(
onTap: () {
ImageOptions.showImageOptions(context, (String image) {
setState(() {
images.add(image);
});
});
},
child: Container(
margin: EdgeInsets.only(left: 10, right: 10, top: 15),
height: 50,
decoration: BoxDecoration(
border: Border.all(color: Colors.grey),
borderRadius: BorderRadius.circular(7),
color: Colors.white,
shape: BoxShape.rectangle,
),
child: Center(
child: Row(
crossAxisAlignment: CrossAxisAlignment.center,
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Icon(Icons.attach_file),
Texts(
'selected attachment',
variant: 'bodyText',
textAlign: TextAlign.center,
),
],
),
),
),
),
...List.generate(
images.length,
(index) => Container(
margin: EdgeInsets.all(10),
padding: EdgeInsets.all(8.0),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
Icon(FontAwesomeIcons.paperclip),
SizedBox(
width: 8,
),
Texts(
'image ${index + 1}.png',
),
],
),
InkWell(
onTap: () {
setState(() {
images.remove(images[index]);
});
},
child: Icon(
FontAwesomeIcons.trashAlt,
color: Colors.red[300],
))
],
),
)),
SizedBox(
height: 12,
),
@ -194,19 +252,12 @@ class _NewEReferralStepTowPageState extends State<NewEReferralStepTowPage> {
textColor: Colors.white,
label: "Next",
onTap: () async {
SendActivationCodeForEReferralRequestModel sendActivationCodeForEReferralRequestModel =
SendActivationCodeForEReferralRequestModel(
zipCode: _selectedCountry['code'],
patientMobileNumber: int.parse(
_mobileTextController.text),);
await model.sendActivationCodeForEReferral(sendActivationCodeForEReferralRequestModel);
showSMSDialog();
print(images.toString());
},
loading: model.state == ViewState.BusyLocal,
disabled:
_nameTextController.text.isEmpty ||
_selectedRelation == null ||
_selectedCity == null ||
_mobileTextController.text.isEmpty,
),
)));
@ -214,16 +265,16 @@ class _NewEReferralStepTowPageState extends State<NewEReferralStepTowPage> {
}
void confirmSelectRelationTypeDialog(
List<GetAllRelationshipTypeResponseModel> relations) {
void confirmSelectCityDialog(
List<GetAllCitiesResponseModel> cities) {
showDialog(
context: context,
child: SelectRelationTypeDialog(
relationTypes: relations,
selectedRelation: _selectedRelation,
child: SelectCityDialog(
cities: cities,
selectedCity: _selectedCity,
onValueSelected: (value) {
setState(() {
_selectedRelation = value;
_selectedCity = value;
});
},
),
@ -245,8 +296,8 @@ class _NewEReferralStepTowPageState extends State<NewEReferralStepTowPage> {
}
String getRelationName() {
if (_selectedRelation != null)
return _selectedRelation.text;
if (_selectedCity != null)
return _selectedCity.description;
else
return "Select Relationship" /*TranslationBase.of(context).selectHospital*/;
}
@ -297,7 +348,7 @@ class MobileNumberTextFiled extends StatelessWidget {
controller: controller,
keyboardType: TextInputType.phone,
decoration: InputDecoration(
border: InputBorder.none, hintText: '5xxxxxxxx'),
border: InputBorder.none, hintText: 'Mobile No'),
),
),
)

@ -0,0 +1,131 @@
import 'package:diplomaticquarterapp/core/model/hospitals/hospitals_model.dart';
import 'package:diplomaticquarterapp/models/AlHabibMedicalServices/EReferral/get_all_cities_response_model.dart';
import 'package:diplomaticquarterapp/models/AlHabibMedicalServices/EReferral/get_all_relationship_types_response_model.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
// ignore: must_be_immutable
class SelectCityDialog extends StatefulWidget {
final List<GetAllCitiesResponseModel> cities;
final Function(GetAllCitiesResponseModel) onValueSelected;
GetAllCitiesResponseModel selectedCity;
SelectCityDialog(
{Key key, this.cities, this.onValueSelected, this.selectedCity});
@override
_SelectCityDialogState createState() => _SelectCityDialogState();
}
class _SelectCityDialogState extends State<SelectCityDialog> {
@override
void initState() {
super.initState();
widget.selectedCity = widget.selectedCity ?? widget.cities[0];
}
@override
Widget build(BuildContext context) {
return SimpleDialog(
children: [
Column(
children: [
Divider(),
...List.generate(
widget.cities.length,
(index) => Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
SizedBox(
height: 2,
),
Row(
children: <Widget>[
Expanded(
flex: 1,
child: InkWell(
onTap: () {
setState(() {
widget.selectedCity = widget.cities[index];
});
},
child: ListTile(
title: Text(widget.cities[index].description),
leading: Radio(
value: widget.cities[index],
groupValue: widget.selectedCity,
activeColor: Colors.red[800],
onChanged: (value) {
setState(() {
widget.selectedCity = value;
});
},
),
),
),
)
],
),
SizedBox(
height: 5.0,
),
],
),
),
SizedBox(
height: 5.0,
),
Row(
// mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
Expanded(
flex: 1,
child: InkWell(
onTap: () {
Navigator.pop(context);
},
child: Padding(
padding: const EdgeInsets.all(8.0),
child: Container(
child: Center(
child: Texts(
TranslationBase.of(context).cancel.toUpperCase(),
color: Colors.red,
),
),
),
),
),
),
Container(
width: 1,
height: 30,
color: Colors.grey[500],
),
Expanded(
flex: 1,
child: InkWell(
onTap: () {
widget.onValueSelected(widget.selectedCity);
Navigator.pop(context);
},
child: Padding(
padding: const EdgeInsets.all(8.0),
child: Center(
child: Texts(
TranslationBase.of(context).ok,
fontWeight: FontWeight.w400,
)),
),
),
),
],
)
],
)
],
);
}
}

@ -8,7 +8,7 @@ import 'package:diplomaticquarterapp/core/model/my_balance/patient_info_and_mobi
import 'package:diplomaticquarterapp/core/viewModels/all_habib_medical_services/e_referral_view_model.dart';
import 'package:diplomaticquarterapp/core/viewModels/medical/my_balance_view_model.dart';
import 'package:diplomaticquarterapp/models/AlHabibMedicalServices/EReferral/check_activation_code_for_e_referral_request_model.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/E-Referral/new_e_referral_step_two_page.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/E-Referral/New_E_Referral/new_e_referral_step_two_page.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/uitl/utils.dart';
@ -19,8 +19,11 @@ import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:smart_progress_bar/smart_progress_bar.dart';
import 'New_E_Referral/new_e_referral_index_page.dart';
class EReferralConfirmSMSDialog extends StatefulWidget {
final String phoneNumber;
final Function onSucces;
// final AdvanceModel advanceModel;
// final PatientInfoAndMobileNumber patientInfoAndMobileNumber;
// final String selectedPaymentMethod;
@ -28,6 +31,7 @@ class EReferralConfirmSMSDialog extends StatefulWidget {
const EReferralConfirmSMSDialog(
{Key key,
this.phoneNumber,
this.onSucces
// this.advanceModel,
// this.selectedPaymentMethod,
// this.patientInfoAndMobileNumber
@ -341,13 +345,13 @@ class _EReferralConfirmSMSDialogState extends State<EReferralConfirmSMSDialog> {
// ToDo call service
CheckActivationCodeForEReferralResponseModel checkActivationCodeForEReferralRequestModel= new CheckActivationCodeForEReferralResponseModel();
CheckActivationCodeForEReferralResponseModel checkActivationCodeForEReferralRequestModel= new CheckActivationCodeForEReferralResponseModel(activationCode: activationCode);
await model.checkActivationCodeForEReferral(checkActivationCodeForEReferralRequestModel);
if(model.state == ViewState.ErrorLocal) {
Utils.showErrorToast(model.error);
// Utils.showErrorToast(model.error);
} else {
Navigator.push(context, FadePage(page: NewEReferralStepTowPage()));
widget.onSucces();
// Navigator.push(context, FadePage(page: StartIndexForAddProduct()));
// Navigate to new page
}
}

@ -2,7 +2,8 @@ import 'dart:ui';
import 'package:diplomaticquarterapp/core/viewModels/all_habib_medical_services/e_referral_view_model.dart';
import 'package:diplomaticquarterapp/core/viewModels/medical/prescriptions_view_model.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/E-Referral/new_e_referral_page.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/E-Referral/New_E_Referral/new_e_referral_index_page.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/E-Referral/New_E_Referral/new_e_referral_step_one_page.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/E-Referral/search_for_referrals_page.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/pages/medical/prescriptions/prescriptions_history_page.dart';
@ -111,8 +112,7 @@ class _EReferralPageState extends State<EReferralPage>
physics: BouncingScrollPhysics(),
controller: _tabController,
children: <Widget>[
NewEReferralPage(
eReferralViewModel: model,
StartIndexForNewEReferral(
),
SearchForReferralsPage(
)

Loading…
Cancel
Save