getSavedCards method

Future<void> getSavedCards()

Implementation

Future<void> getSavedCards() async {
  // loaderController.add(true);
  savedCardsList.clear();
  String? encodedMerchantId = CryptoUtils.encrypt(
      MerchantConstants.merchantId, KeywordConstants.internalKey);
  await appRepository.getSavedCards(encodedMerchantId!).then(
          (Response response) async {
        //debugPrint('Get saved cards api response is ${response.body}');
        SavedCardsResponse savedCardsResponse =
        SavedCardsResponse.fromJson(json.decode(response.body));
        if (savedCardsResponse.merchantSavedCards.isNotEmpty) {
          String? strSavedCard = CryptoUtils.decrypt(
              savedCardsResponse.merchantSavedCards,
              MerchantConstants.merchantKey);

          if (strSavedCard != null) {
            savedCardsList.clear();
            List<dynamic> savedCardsMap = json.decode(strSavedCard);
            for(Map<String, dynamic> map in savedCardsMap){
              SavedCard savedCard = SavedCard.fromJson(map);
              //debugPrint('Decoded saved card details are ${savedCard.nameOnCard}');
              savedCardsList.add(savedCard);
            }
          }
        }
        if(savedCardsList.isNotEmpty){
          savedCardsListController.add(true);
        } else {
          savedCardsListController.add(false);
        }
        // loaderController.add(false);
      }, onError: (dynamic e) {
    // loaderController.add(false);
    savedCardsListController.add(false);
    //debugPrint('Get saved cards api exception is ${e.toString()}');
  });
}