getAccountDetails method

Future<String> getAccountDetails(
  1. String ref,
  2. Map jsonMapTwo,
  3. String connection,
  4. String mail,
  5. String successRRoute,
  6. String CheckkOut,
)

Implementation

Future<String> getAccountDetails(String ref, Map jsonMapTwo,
    String connection, String mail, String successRRoute, String CheckkOut) async{

  HttpClient httpClient = new HttpClient();
  HttpClientRequest request = await httpClient.postUrl(Uri.parse(url));
  request.headers.set('content-type', 'application/json');
  request.add(utf8.encode(json.encode(jsonMapTwo)));
  HttpClientResponse response = await request.close();
  // todo - you should check the response.statusCode
  String resp = await response.transform(utf8.decoder).join();


  httpClient.close();

  Map <String, dynamic> map = json.decode(resp);
  Map <String, dynamic> accInfo = map["response_content"];
  Map <String, dynamic> currency = map["response_content"]["currency"];

  payable = accInfo["transaction_payable_amount"];
  fee = accInfo["transaction_fee_amount"];
  accountNumber = accInfo["account_number"];
  bankName = accInfo["bank_name"];
  unicode = currency["unicode"];



  Navigator.push(context, MaterialPageRoute(builder: (context) => AccountNumber(
    firstName: firstName,
    lastName: lastName, email: email,
    vendor: vendor, avatar: avatar,
    payable: payable, fee: fee,
    bankName: bankName, account: accountNumber,
    connectionMode: connectionMode, unicode: unicode,
    transactionRef: ref,
    SuccessRoute: successRRoute,
    Checkout: checkoutPage,
  )));

  return resp;
}