private async void DisassociateBankCardDataCallback(GenericOutput genericOutput, Exception exception) { try { if (exception == null) { if (!string.IsNullOrEmpty(genericOutput.status)) { var handler = new StatusCodeDisassociateCardHandler(); await handler.HandleStatusCodeResult(genericOutput.status); if (handler.StatusCode == StatusCodeHandler.EnumStatusCodes.SUCCESS) { bool result = await LocalStoreCardsHelper.DeleteCardFromLocalCardsStore(SelectedCard.Idc); if (result) { if (SelectedCard.CardP2PParameters.IsDefaultForPurchases) { StorageUtils.removeData(StorageUtils.kCardDefaultForPurchases); } Cards.Remove(Cards.FirstOrDefault(c => c.Idc == SelectedCard.Idc)); } } IsLoading = false; NavigateServiceManager.Instance.HandleCompleteNavigation(handler); } } IsLoading = false; } catch (Exception) { IsLoading = false; } }
public async void SynchronizeBankCardDataCallback(Business.Network.Cards.Models.ListCardOutput responseCards, Exception exception) { try { if (exception == null && responseCards != null) { if (!string.IsNullOrEmpty(responseCards.status)) { var handler = new StatusCodeSyncCardDataHandler(false); await handler.HandleStatusCodeResult(responseCards.status); if (handler.StatusCode == StatusCodeHandler.EnumStatusCodes.SUCCESS) { responseCards.cardsList = await LocalStoreCardsHelper.ManageLocalCardsStoreBasedOnSyncCardData(responseCards.cardsList); if (responseCards.cardsList != null && responseCards.cardsList.Count > 0) { fillObservableCardArray(responseCards.cardsList); IsLoading = false; AppCustom.mListCardsViewModelInstance = null; return; } } responseCards.cardsList = await LocalStoreCardsHelper.GetListLocalCardsStore(); if (responseCards.cardsList != null && responseCards.cardsList.Count > 0) { fillObservableCardArray(responseCards.cardsList); IsLoading = false; NavigateServiceManager.Instance.HandleCompleteNavigation(handler); AppCustom.mListCardsViewModelInstance = null; return; } IsToHideControls = true; IsLoading = false; // If we reach this case, we want to navigate do the MainPage irrespectively of the Error Type handler.StatusCodeNavigationPage.PageType = HelperWindows.GetPageToNavigateBasedOnTag(HelperWindows.EnumNavigationPages.MainPage.ToString()); NavigateServiceManager.Instance.HandleCompleteNavigation(handler); } } else if (!Helper.IsInternetConnected()) { responseCards.cardsList = await LocalStoreCardsHelper.GetListLocalCardsStore(); IsLoading = false; if (responseCards.cardsList != null) { fillObservableCardArray(responseCards.cardsList); } else { NavigateServiceManager.Instance.Navigate(typeof(MainPage), typeof(MasterPage)); } } } catch (Exception) { } finally { AppCustom.mListCardsViewModelInstance = null; IsLoading = false; } }