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.
127 lines
4.3 KiB
Dart
127 lines
4.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 CovidDriveThruService extends BaseService {
|
|
AppSharedPreferences sharedPref = AppSharedPreferences();
|
|
AppGlobal appGlobal = new AppGlobal();
|
|
|
|
AuthenticatedUser authUser = new AuthenticatedUser();
|
|
AuthProvider authProvider = new AuthProvider();
|
|
|
|
Future<Map> getCovidProjectsList(BuildContext context) 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;
|
|
}
|
|
|
|
var languageID = await sharedPref.getStringWithDefaultValue(APP_LANGUAGE, 'ar');
|
|
Request req = appGlobal.getPublicRequest();
|
|
request = {
|
|
"LanguageID": languageID == 'ar' ? 1 : 2,
|
|
"IPAdress": "10.20.10.20",
|
|
"VersionID": req.VersionID,
|
|
"Channel": req.Channel,
|
|
"generalid": 'Cs2020@2016\$2958',
|
|
"PatientOutSA": authUser.outSA,
|
|
"TokenID": "",
|
|
"DeviceTypeID": req.DeviceTypeID,
|
|
"SessionID": "YckwoXhUmWBsnHKEKig",
|
|
"PatientID": authUser.patientID != null ? authUser.patientID : 0,
|
|
"License": true
|
|
};
|
|
|
|
dynamic localRes;
|
|
|
|
await baseAppClient.post(GET_COVID_DRIVETHRU_PROJECT_LIST,
|
|
onSuccess: (response, statusCode) async {
|
|
localRes = response;
|
|
}, onFailure: (String error, int statusCode) {
|
|
throw error;
|
|
}, body: request);
|
|
return Future.value(localRes);
|
|
}
|
|
|
|
Future<Map> getCovidPaymentInformation(BuildContext context, int projectID) 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;
|
|
}
|
|
|
|
var languageID = await sharedPref.getStringWithDefaultValue(APP_LANGUAGE, 'ar');
|
|
Request req = appGlobal.getPublicRequest();
|
|
request = {
|
|
"LanguageID": languageID == 'ar' ? 1 : 2,
|
|
"IPAdress": "10.20.10.20",
|
|
"ProjectID": projectID,
|
|
"VersionID": req.VersionID,
|
|
"Channel": req.Channel,
|
|
"generalid": 'Cs2020@2016\$2958',
|
|
"PatientOutSA": authUser.outSA,
|
|
"TokenID": "",
|
|
"DeviceTypeID": req.DeviceTypeID,
|
|
"SessionID": "YckwoXhUmWBsnHKEKig",
|
|
"PatientID": authUser.patientID != null ? authUser.patientID : 0,
|
|
"License": true
|
|
};
|
|
|
|
dynamic localRes;
|
|
|
|
await baseAppClient.post(GET_COVID_DRIVETHRU_PAYMENT_INFO,
|
|
onSuccess: (response, statusCode) async {
|
|
localRes = response;
|
|
}, onFailure: (String error, int statusCode) {
|
|
throw error;
|
|
}, body: request);
|
|
return Future.value(localRes);
|
|
}
|
|
|
|
Future<Map> getCovidFreeSlots(BuildContext context, int projectID) 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;
|
|
}
|
|
|
|
var languageID = await sharedPref.getStringWithDefaultValue(APP_LANGUAGE, 'ar');
|
|
Request req = appGlobal.getPublicRequest();
|
|
request = {
|
|
"LanguageID": languageID == 'ar' ? 1 : 2,
|
|
"IPAdress": "10.20.10.20",
|
|
"ProjectID": projectID,
|
|
"VersionID": req.VersionID,
|
|
"Channel": req.Channel,
|
|
"generalid": 'Cs2020@2016\$2958',
|
|
"PatientOutSA": authUser.outSA,
|
|
"TokenID": "",
|
|
"DeviceTypeID": req.DeviceTypeID,
|
|
"SessionID": "YckwoXhUmWBsnHKEKig",
|
|
"PatientID": authUser.patientID != null ? authUser.patientID : 0,
|
|
"License": true
|
|
};
|
|
|
|
dynamic localRes;
|
|
|
|
await baseAppClient.post(GET_COVID_DRIVETHRU_FREE_SLOTS,
|
|
onSuccess: (response, statusCode) async {
|
|
localRes = response;
|
|
}, onFailure: (String error, int statusCode) {
|
|
throw error;
|
|
}, body: request);
|
|
return Future.value(localRes);
|
|
}
|
|
}
|