You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
212 lines
7.3 KiB
Dart
212 lines
7.3 KiB
Dart
import 'package:diplomaticquarterapp/config/config.dart';
|
|
import 'package:diplomaticquarterapp/config/shared_pref_kay.dart';
|
|
import 'package:diplomaticquarterapp/core/service/base_service.dart';
|
|
import 'package:diplomaticquarterapp/models/Authentication/authenticated_user.dart';
|
|
import 'package:diplomaticquarterapp/models/Request.dart';
|
|
import 'package:diplomaticquarterapp/services/authentication/auth_provider.dart';
|
|
import 'package:diplomaticquarterapp/uitl/app_shared_preferences.dart';
|
|
import 'package:flutter/material.dart';
|
|
|
|
class ClinicListService extends BaseService {
|
|
AppSharedPreferences sharedPref = AppSharedPreferences();
|
|
AppGlobal appGlobal = new AppGlobal();
|
|
|
|
AuthenticatedUser authUser = new AuthenticatedUser();
|
|
AuthProvider authProvider = new AuthProvider();
|
|
|
|
double lat;
|
|
double long;
|
|
|
|
Future<Map> getClinicsList(context) async {
|
|
Map<String, dynamic> request = {};
|
|
|
|
dynamic localRes;
|
|
|
|
await baseAppClient.post(GET_CLINICS_LIST_URL, onSuccess: (response, statusCode) async {
|
|
localRes = response;
|
|
}, onFailure: (String error, int statusCode) {
|
|
throw error;
|
|
}, body: request);
|
|
sharedPref.setObject(CLINICS_LIST, localRes);
|
|
return Future.value(localRes);
|
|
}
|
|
|
|
Future<Map> getActiveAppointmentNo(context) async {
|
|
Map<String, dynamic> request = {};
|
|
|
|
request = {"IsActiveAppointment": true, "LanguageID": 1};
|
|
|
|
dynamic localRes;
|
|
|
|
await baseAppClient.post(GET_ACTIVE_APPOINTMENTS_LIST_URL, onSuccess: (response, statusCode) async {
|
|
localRes = response;
|
|
}, onFailure: (String error, int statusCode) {
|
|
throw error;
|
|
}, body: request);
|
|
return Future.value(localRes);
|
|
}
|
|
|
|
Future<Map> getProjectsList(int languageID, context) async {
|
|
Map<String, dynamic> request = {};
|
|
|
|
request = {"LanguageID": languageID};
|
|
|
|
dynamic localRes;
|
|
|
|
await baseAppClient.post(GET_PROJECTS_LIST, onSuccess: (response, statusCode) async {
|
|
localRes = response;
|
|
}, onFailure: (String error, int statusCode) {
|
|
throw error;
|
|
}, body: request);
|
|
return Future.value(localRes);
|
|
}
|
|
|
|
Future<Map> getChiefComplaintsList(int patientID, int clinicID, int projectID, int languageID, bool isContinueDentalPlan, BuildContext context, {doctorId}) async {
|
|
//Utils.showProgressDialog(context);
|
|
Map<String, dynamic> request;
|
|
|
|
if (await this.sharedPref.getObject(USER_PROFILE) != null) {
|
|
var data = AuthenticatedUser.fromJson(await this.sharedPref.getObject(USER_PROFILE));
|
|
authUser = data;
|
|
}
|
|
|
|
var languageID = await sharedPref.getStringWithDefaultValue(APP_LANGUAGE, 'ar');
|
|
Request req = appGlobal.getPublicRequest();
|
|
request = {
|
|
"ClinicID": clinicID,
|
|
"ProjectID": projectID,
|
|
"SelectedDate": "",
|
|
"SelectedTime": "",
|
|
"License": true,
|
|
// "VersionID": 5.6,
|
|
// "Channel": 3,
|
|
"LanguageID": languageID,
|
|
"IPAdress": "10.20.10.20",
|
|
"generalid": "Cs2020@2016\$2958",
|
|
"SessionID": null,
|
|
"isDentalAllowedBackend": true,
|
|
"DeviceTypeID": 1,
|
|
"PatientID": patientID,
|
|
"ContinueDentalPlan": isContinueDentalPlan,
|
|
"IsSearchAppointmnetByClinicID": false,
|
|
"DateofBirth": authUser.dateofBirth
|
|
};
|
|
|
|
dynamic localRes;
|
|
|
|
await baseAppClient.post(GET_DOCTORS_LIST_URL, onSuccess: (response, statusCode) async {
|
|
localRes = response;
|
|
}, onFailure: (String error, int statusCode) {
|
|
throw error;
|
|
}, body: request);
|
|
return Future.value(localRes);
|
|
}
|
|
|
|
Future<Map> getChiefComplaintDoctorList(int chiefComplaintID, int projectID, int languageID, BuildContext context, {doctorId}) async {
|
|
Map<String, dynamic> request;
|
|
|
|
if (await this.sharedPref.getObject(USER_PROFILE) != null) {
|
|
var data = AuthenticatedUser.fromJson(await this.sharedPref.getObject(USER_PROFILE));
|
|
authUser = data;
|
|
}
|
|
|
|
if (await this.sharedPref.getDouble(USER_LAT) != null && await this.sharedPref.getDouble(USER_LONG) != null) {
|
|
lat = await this.sharedPref.getDouble(USER_LAT);
|
|
long = await this.sharedPref.getDouble(USER_LONG);
|
|
}
|
|
|
|
var languageID = await sharedPref.getStringWithDefaultValue(APP_LANGUAGE, 'ar');
|
|
Request req = appGlobal.getPublicRequest();
|
|
request = {
|
|
"ChiefComplaintID": chiefComplaintID,
|
|
"ProjectID": projectID,
|
|
// "VersionID": 5.6,
|
|
// "Channel": 3,
|
|
"LanguageID": languageID,
|
|
// "IPAdress": req.IPAdress,
|
|
// "generalid": req.generalid,
|
|
"SessionID": null,
|
|
"isDentalAllowedBackend": true,
|
|
"Latitude": lat != null ? lat.toString() : "0.0",
|
|
"Longitude": long != null ? long.toString() : "0.0",
|
|
"DeviceTypeID": req.DeviceTypeID,
|
|
"IsPublicRequest": true
|
|
};
|
|
|
|
dynamic localRes;
|
|
|
|
await baseAppClient.post(GET_DENTAL_DOCTORS_LIST_URL, onSuccess: (response, statusCode) async {
|
|
localRes = response;
|
|
}, onFailure: (String error, int statusCode) {
|
|
throw error;
|
|
}, body: request);
|
|
return Future.value(localRes);
|
|
}
|
|
|
|
Future<Map> getCountries() async {
|
|
Map<String, dynamic> request = {};
|
|
dynamic localRes;
|
|
await baseAppClient.post(GET_NATIONALITY, onSuccess: (response, statusCode) async {
|
|
localRes = response;
|
|
}, onFailure: (String error, int statusCode) {
|
|
throw error;
|
|
}, body: request);
|
|
return Future.value(localRes);
|
|
}
|
|
|
|
Future<Map> getWeCareURL(int projectID) async {
|
|
Map<String, dynamic> request = {"ProjectID": projectID};
|
|
dynamic localRes;
|
|
await baseAppClient.post(GET_WE_CARE_TOUR_URL, onSuccess: (response, statusCode) async {
|
|
localRes = response;
|
|
}, onFailure: (String error, int statusCode) {
|
|
throw error;
|
|
}, body: request);
|
|
return Future.value(localRes);
|
|
}
|
|
|
|
Future<Map> getDentalInstructions() async {
|
|
Map<String, dynamic> request = {};
|
|
dynamic localRes;
|
|
await baseAppClient.post(GET_DENTAL_INSTRUCTIONS, onSuccess: (response, statusCode) async {
|
|
localRes = response;
|
|
}, onFailure: (String error, int statusCode) {
|
|
throw error;
|
|
}, body: request);
|
|
return Future.value(localRes);
|
|
}
|
|
|
|
Future<Map> getEROnlineCheckInPaymentDetails(int projectID, int clinicID) async {
|
|
Map<String, dynamic> request = {"ProjectID": projectID, "ClinicID": clinicID};
|
|
dynamic localRes;
|
|
await baseAppClient.post(GET_ER_ONLINE_PAYMENT_DETAILS, onSuccess: (response, statusCode) async {
|
|
localRes = response;
|
|
}, onFailure: (String error, int statusCode) {
|
|
throw error;
|
|
}, body: request);
|
|
return Future.value(localRes);
|
|
}
|
|
|
|
Future<Map> checkIfPatientHasArrived(int projectID, int clinicID) async {
|
|
Map<String, dynamic> request = {"ProjectID": projectID, "ClinicID": clinicID};
|
|
dynamic localRes;
|
|
await baseAppClient.post(CHECK_IF_PATIENT_ARRIVED_ER_ONLINE_CHECKIN, onSuccess: (response, statusCode) async {
|
|
localRes = response;
|
|
}, onFailure: (String error, int statusCode) {
|
|
throw error;
|
|
}, body: request, isAllowAny: true);
|
|
return Future.value(localRes);
|
|
}
|
|
|
|
Future<Map> getProjectIDFromNFC(String nfcID) async {
|
|
Map<String, dynamic> request = {"nFC_Code": nfcID};
|
|
dynamic localRes;
|
|
await baseAppClient.post(GET_PROJECT_FROM_NFC, onSuccess: (response, statusCode) async {
|
|
localRes = response;
|
|
}, onFailure: (String error, int statusCode) {
|
|
throw error;
|
|
}, body: request, isAllowAny: true);
|
|
return Future.value(localRes);
|
|
}
|
|
}
|