public static AccountViewData ToAccountViewData(this Account Objectsource)
        {
            var newAccountViewData = new AccountViewData();

            newAccountViewData.Id = Objectsource.ID;
            newAccountViewData.Name = Objectsource.Name;
            newAccountViewData.BankName = Objectsource.BankName;
            newAccountViewData.Balance = Objectsource.Balance;

            if (Objectsource.TransactionList.HasLoadedOrAssignedValues)
            {
                newAccountViewData.ListTransaction = Objectsource.TransactionList.Select(t => t.ToTransactionMinimalViewData()).ToList();
            }

            //ATTENTION, LE SET DU FAVORITE SE FAIT DANS LA PAGE APPROPRIE, VIA LE OptionService

            return newAccountViewData;
        }
 public override void Dispose()
 {
     Account = new AccountViewData();
     base.Dispose();
 }
예제 #3
0
        private void HandleFavoriteAccountTaskSelected(AccountViewData args)
        {
            if (args == null) { return; }

            OptionService.SetFavoriteIdAccount(args.Id);

            if (optionViewData.Favorite != args.Id)
            {
                OptionViewData.Favorite = args.Id;
                ExecuteSafeDispatcher(() => RefreshAccountAndFavori(), () => SetFavori());
            }



        }
예제 #4
0
 private void HandleDeleteAccountTaskSelected(AccountViewData args)
 {
     if (args != null)
     {
         MessageBoxResult result = MessageBox.Show("Do you really want to delete " + args.Name + "?", "Delete an account", MessageBoxButton.OKCancel);
         if (result == MessageBoxResult.OK)
         {
             TransactionService.DeleteTransactionsByAccountId(args.Id);
             AccountService.DeleteAccountById(args.Id);
             this.ListeAccount.Remove(args);
         }
     }
 }
예제 #5
0
        private void HandleEditAccountTaskSelected(AccountViewData args)
        {
            if (args != null)
            {
                NavigateTo("/View/EditAccount.xaml?accountId={0}", args.Id);
            }

        }
예제 #6
0
        private void SetFavori()
        {
            //Set de la visibilite pour les favori : on check si le Favori Id dans l'object option contient un des id des comptes
            this.ListeAccount.ToList().ForEach(account =>
                {
                    if (account.Id == OptionViewData.Favorite)
                    {
                        account.Favorite = Visibility.Visible;
                        FavoriteAccountViewData = new AccountViewData();
                        FavoriteAccountViewData = account;
                    }
                    else
                    {
                        account.Favorite = Visibility.Collapsed;
                    }

                });

            // si le compte favori a �t� sett�, alors on eagger sur sa liste de prop
            if (FavoriteAccountViewData != null)
            {
                var donneMoiFavoriEnEagger = AccountService.GetAccountById(FavoriteAccountViewData.Id, false);
                if (donneMoiFavoriEnEagger.IsValid)
                    FavoriteAccountViewData = donneMoiFavoriEnEagger.Value.ToAccountViewData();

                if (FavoriteAccountViewData.ListTransaction.Count > 0)
                    FavoriteAccountViewData.Balance = FavoriteAccountViewData.ListTransaction.Sum(t => t.Amount);
            }
        }