working on ereferral

merge-requests/253/head
haroon amjad 5 years ago
parent 6846a8501a
commit 82e23efd32

@ -11,14 +11,18 @@ import 'package:diplomaticquarterapp/core/service/base_service.dart';
class EReferralService extends BaseService {
List<GetAllRelationshipTypeResponseModel> _relationTypes = List();
List<GetAllRelationshipTypeResponseModel> get relationTypes => _relationTypes;
List<GetAllCitiesResponseModel> _allCities = List();
List<GetAllCitiesResponseModel> get allCities => _allCities;
List<GetAllProjectsResponseModel> _allProjects = List();
List<GetAllProjectsResponseModel> get allProjects => _allProjects;
List<SearchEReferralResponseModel> _allReferral = List();
List<SearchEReferralResponseModel> get allReferral => _allReferral;
String _activationCode;
String _logInTokenID;
@ -46,33 +50,30 @@ class EReferralService extends BaseService {
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: {});
_allCities.clear();
response['ListCities'].forEach((city) {
_allCities.add(GetAllCitiesResponseModel.fromJson(city));
});
}, onFailure: (String error, int statusCode) {
hasError = true;
super.error = error;
}, body: {});
}
Future getAllProjects() async {
await baseAppClient.post(GET_PROJECT,
onSuccess: (dynamic response, int statusCode) {
_allProjects.clear();
response['ListProject'].forEach((city) {
_allProjects
.add(GetAllProjectsResponseModel.fromJson(city));
});
}, onFailure: (String error, int statusCode) {
hasError = true;
super.error = error;
}, body: {});
_allProjects.clear();
response['ListProject'].forEach((city) {
_allProjects.add(GetAllProjectsResponseModel.fromJson(city));
});
}, onFailure: (String error, int statusCode) {
hasError = true;
super.error = error;
}, body: {});
}
Future sendActivationCodeForEReferral(
SendActivationCodeForEReferralRequestModel
sendActivationCodeForEReferralRequestModel) async {
hasError = false;
@ -81,24 +82,21 @@ class EReferralService extends BaseService {
print(response["VerificationCode"]);
_activationCode = response["VerificationCode"];
_logInTokenID = response["LogInTokenID"];
}, onFailure: (String error, int statusCode) {
hasError = true;
super.error = error;
}, body: sendActivationCodeForEReferralRequestModel.toJson());
}
Future checkActivationCodeForEReferral(
CheckActivationCodeForEReferralResponseModel
checkActivationCodeForEReferralRequestModel) async {
checkActivationCodeForEReferralRequestModel.isDentalAllowedBackend = false;
checkActivationCodeForEReferralRequestModel.logInTokenID= _logInTokenID;
hasError =false;
checkActivationCodeForEReferralRequestModel.logInTokenID = _logInTokenID;
hasError = false;
await baseAppClient.post(CHECK_ACTIVATION_CODE_FOR_E_REFERRAL,
onSuccess: (dynamic response, int statusCode) {
_isActivationCodeValid = true;
_isActivationCodeValid = true;
}, onFailure: (String error, int statusCode) {
hasError = true;
super.error = error;
@ -106,40 +104,36 @@ class EReferralService extends BaseService {
}
Future<dynamic> createEReferral(
CreateEReferralRequestModel createEReferralRequestModel
) async {
hasError = false;
dynamic localRes;
await baseAppClient.post(CREATE_E_REFERRAL/*'Services/Patients.svc/REST/CreateEReferral'*/,
CreateEReferralRequestModel createEReferralRequestModel) async {
hasError = false;
dynamic localRes;
await baseAppClient.post(
CREATE_E_REFERRAL /*'Services/Patients.svc/REST/CreateEReferral'*/,
onSuccess: (dynamic response, int statusCode) {
// TODO Waiting for fix service
localRes = response;
}, onFailure: (String error, int statusCode) {
hasError = true;
super.error = error;
}, body: createEReferralRequestModel.toJson());
return Future.value(localRes);
// TODO Waiting for fix service
localRes = response;
}, onFailure: (String error, int statusCode) {
hasError = true;
super.error = error;
}, body: createEReferralRequestModel.toJson());
return Future.value(localRes);
}
Future getEReferrals(
SearchEReferralRequestModel searchEReferralRequestModel
) async {
SearchEReferralRequestModel searchEReferralRequestModel) async {
hasError = false;
// TODO return this code when the fix the server
// await baseAppClient.post(GET_E_REFERRALS,
// onSuccess: (dynamic response, int statusCode) {
// print("EEEEEE");
// // TODO Waiting for fix service
// // ToDo change this one when you have data
// _allReferral.clear();
// // response['ListCities'].forEach((city) {
// // _allReferral
// // .add(SearchEReferralResponseModel.fromJson(city));
// // });
//
// }, onFailure: (String error, int statusCode) {
// hasError = true;
// super.error = error;
// }, body: searchEReferralRequestModel.toJson());
dynamic localRes;
await baseAppClient.post(GET_E_REFERRALS,
onSuccess: (dynamic response, int statusCode) {
print("EEEEEE");
_allReferral.clear();
localRes = response;
}, onFailure: (String error, int statusCode) {
hasError = true;
super.error = error;
}, body: searchEReferralRequestModel.toJson());
return Future.value(localRes);
}
}

@ -54,6 +54,7 @@ class BaseAppClient {
: SETUP_ID
: SETUP_ID;
}
body['VersionID'] = VERSION_ID;
body['Channel'] = CHANNEL;
body['LanguageID'] = body.containsKey('LanguageID')

@ -1,9 +1,13 @@
import 'package:diplomaticquarterapp/config/shared_pref_kay.dart';
import 'package:diplomaticquarterapp/core/enum/viewstate.dart';
import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/EReferral/search_criteria_model.dart';
import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/EReferral/search_e_referral_request_model.dart';
import 'package:diplomaticquarterapp/core/service/AlHabibMedicalService/e_referral_service.dart';
import 'package:diplomaticquarterapp/core/viewModels/all_habib_medical_services/e_referral_view_model.dart';
import 'package:diplomaticquarterapp/models/Authentication/authenticated_user.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/widgets/buttons/secondary_button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/errors/app_embedded_error.dart';
@ -12,6 +16,7 @@ import 'package:diplomaticquarterapp/widgets/others/network_base_view.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import '../../../locator.dart';
import 'New_E_Referral/new_e_referral_step_one_page.dart';
import 'dialogs/select_country_ingo_Dialog.dart';
import 'dialogs/select_search_criteria_dialog.dart';
@ -28,6 +33,7 @@ class _SearchForReferralsPageState extends State<SearchForReferralsPage> {
TextEditingController _mobileTextController = TextEditingController();
bool _isSubmitted = false;
AuthenticatedUser authUser;
dynamic _selectedCountry = {
"name": "Saudi Arabia",
@ -41,6 +47,13 @@ class _SearchForReferralsPageState extends State<SearchForReferralsPage> {
SearchCriteriaModel selectedCriteria = SearchCriteriaModel(
name: "Identification Number", nameAr: "رقم المحول", value: 1);
@override
void initState() {
authUser = new AuthenticatedUser();
WidgetsBinding.instance.addPostFrameCallback((_) => getPatientData());
super.initState();
}
@override
Widget build(BuildContext context) {
return BaseView<EReferralViewModel>(
@ -123,9 +136,8 @@ class _SearchForReferralsPageState extends State<SearchForReferralsPage> {
if ((model.state == ViewState.Idle &&
model.allReferral.length == 0))
Text("There's No Referral To deliver"),
if ((
model.state == ViewState.ErrorLocal))
AppEmbeddedError( error:model.error),
if ((model.state == ViewState.ErrorLocal))
AppEmbeddedError(error: model.error),
NetworkBaseView(
baseViewModel: model,
child: ListView.builder(
@ -186,6 +198,50 @@ class _SearchForReferralsPageState extends State<SearchForReferralsPage> {
)));
}
void getEreferrals() {
EReferralService _eReferralService = locator<EReferralService>();
String mobileNumber;
String zipCode;
if (authUser.mobileNumber.length > 9) {
mobileNumber =
authUser.mobileNumber.substring(1, authUser.mobileNumber.length);
} else {
mobileNumber = authUser.mobileNumber;
}
if (authUser.outSA == 0) {
zipCode = "966";
} else {
zipCode = "971";
}
SearchEReferralRequestModel searchEReferralRequestModel =
new SearchEReferralRequestModel(
patientMobileNumber: zipCode + mobileNumber,
identificationNo: authUser.patientIdentificationNo,
referralNumber: 0);
_eReferralService
.getEReferrals(searchEReferralRequestModel)
.then((response) {
print(response['List_EReferrals']);
}).catchError(() {});
}
getPatientData() async {
AppSharedPreferences sharedPref = AppSharedPreferences();
if (await sharedPref.getObject(USER_PROFILE) != null) {
var data =
AuthenticatedUser.fromJson(await sharedPref.getObject(USER_PROFILE));
setState(() {
authUser = data;
getEreferrals();
});
}
}
void confirmSelectCountryTypeDialog() {
showDialog(
context: context,

@ -63,4 +63,4 @@ class _BaseViewState<T extends BaseViewModel> extends State<BaseView<T>> {
super.dispose();
}
}
}

@ -20,13 +20,11 @@ import 'package:diplomaticquarterapp/widgets/dialogs/confirm_dialog.dart';
import 'package:diplomaticquarterapp/widgets/input/text_field.dart';
import 'package:diplomaticquarterapp/widgets/mobile-no/mobile_no.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/progress_indicator/app_circular_progress_Indeicator.dart';
import 'package:diplomaticquarterapp/widgets/text/app_texts_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import 'package:smart_progress_bar/smart_progress_bar.dart';
class Login extends StatefulWidget {
@override
@ -121,7 +119,9 @@ class _Login extends State<Login> {
color: Colors.grey,
height: 2,
),
SizedBox(height: 10,),
SizedBox(
height: 10,
),
Row(
children: <Widget>[
Expanded(
@ -208,15 +208,13 @@ class _Login extends State<Login> {
okText: TranslationBase.of(context).confirm,
cancelText: TranslationBase.of(context).cancel_nocaps,
okFunction: () => {
ConfirmDialog.closeAlertDialog(context),
ConfirmDialog.closeAlertDialog(context),
Navigator.of(context).pushNamed(
REGISTER,
),
},
cancelFunction: () => {ConfirmDialog.closeAlertDialog(context)});
dialog.showAlertDialog(context);
});
// SMSOTP.showLoadingDialog(context, false),
}
@ -243,9 +241,9 @@ class _Login extends State<Login> {
this.authService.checkActivationCode(request, code).then((result) => {
sharedPref.remove(FAMILY_FILE),
result = CheckActivationCode.fromJson(result),
result.list.isFamily =false,
this.sharedPref.setObject(USER_PROFILE, result.list),
this.sharedPref.setObject(MAIN_USER, result.list),
result.list.isFamily = false,
this.sharedPref.setObject(USER_PROFILE, result.list),
this.sharedPref.setObject(MAIN_USER, result.list),
this.sharedPref.setObject(LOGIN_TOKEN_ID, result.logInTokenID),
this.sharedPref.setString(TOKEN, result.authenticationTokenID),
authenticatedUserObject.getUser(),

@ -158,6 +158,9 @@ dependencies:
badges: ^1.1.4
#Smartwatch Health Data Integration
fit_kit: ^1.1.2
dev_dependencies:
flutter_test:
sdk: flutter

Loading…
Cancel
Save