preProcessTransactionService function
Future<Map<String, dynamic>>
preProcessTransactionService(- BuildContext context,
- {required double transactionAmount,
- required int currencyId,
- required int bankAccountId,
- required String email1,
- required String email2,
- required String email3,
- required String description}
)
Implementation
Future<Map<String, dynamic>> preProcessTransactionService(
BuildContext context, {
required double transactionAmount,
required int currencyId,
required int bankAccountId,
required String email1,
required String email2,
required String email3,
required String description,
}) async {
final bool internetStatus = await checkInternetConnection();
if (!internetStatus) {
Transitions(
context: context,
child: const NoInternetPage(),
removeUntil: true,
);
return <String, dynamic>{
'no_network': internetStatus,
};
}
final Box<MyAccountModel> userBox = Hive.box('user');
final http.Response response = await http.post(
Uri.parse(
'${ServicesEnvironment.protocol}${ServicesEnvironment.authority}${ServicesEnvironment.unencodedPath}$_endPoint',
),
headers: <String, String>{
'Content-Type': 'application/json; charset=utf-8',
'Authorization': 'Bearer ${userBox.get('user')!.token}',
},
body: json.encode(
<String, dynamic>{
"transaction_amount": transactionAmount,
"currency_id": currencyId,
"bank_account_id": bankAccountId,
"email_1": email1,
"email_2": email2,
"email_3": email3,
"description": description,
},
),
);
Map<String, dynamic> decodedResponse;
try {
decodedResponse = json.decode(response.body);
} catch (exception) {
return Future.error(GlobalMessagesEnvironment.genericError);
}
return decodedResponse;
}