private async void GetTransactionInfo()
        {
            var info            = new TransactionViewModel();
            var transactionCore = new TransactionCore();

            List <string> typeName   = new List <string>();
            List <string> statusName = new List <string>();
            List <string> subCatName = new List <string>();

            info.subCategories = await transactionCore.GetSubCategories();

            info.transactionStatuses = await transactionCore.GetTransactionStatus();

            info.transactionTypes = await transactionCore.GetTransactionType();

            foreach (var item in info.subCategories)
            {
                subCats.Add(item.Name, item.Id);
                subCatName.Add(item.Name);
            }

            foreach (var item in info.transactionStatuses.Where(s => s.Name != "Void"))
            {
                statuses.Add(item.Name, item.Id);
                statusName.Add(item.Name);
            }

            foreach (var item in info.transactionTypes)
            {
                types.Add(item.Name, item.Id);
                typeName.Add(item.Name);
            }

            subCat.ItemsSource = subCatName;
            status.ItemsSource = statusName;
            type.ItemsSource   = typeName;
        }
예제 #2
0
        async Task <List <Transactions> > PopulateList()
        {
            var transactionCore = new TransactionCore();

            _transactionList = await transactionCore.GetTransactions(accountId);

            transactionStatuses = await transactionCore.GetTransactionStatus();

            transactionTypes = await transactionCore.GetTransactionType();

            int voidCheck = 0;

            List <Transactions> filteredTransactions = new List <Transactions>();

            switch (filter)
            {
            case 0:
                foreach (var item in _transactionList)
                {
                    foreach (var item2 in transactionTypes)
                    {
                        if (item2.Id == item.TransactionTypeId && item2.Name == "Debit")
                        {
                            foreach (var item3 in transactionStatuses)
                            {
                                if (item3.Id == item.TransactionStatusId && item3.Name == "Void")
                                {
                                    voidCheck = 1;
                                }
                                else if (item3.Id == item.TransactionStatusId)
                                {
                                    item.StatusName = item3.Name;
                                }
                            }

                            if (voidCheck == 1)
                            {
                                voidCheck = 0;
                                break;
                            }

                            item.TypeName = item2.Name;
                            filteredTransactions.Add(item);
                        }
                    }
                }
                break;

            case 1:
                foreach (var item in _transactionList)
                {
                    foreach (var item2 in transactionTypes)
                    {
                        if (item2.Id == item.TransactionTypeId && item2.Name == "Credit")
                        {
                            foreach (var item3 in transactionStatuses)
                            {
                                if (item3.Id == item.TransactionStatusId && item3.Name == "Void")
                                {
                                    voidCheck = 1;
                                }
                                else if (item3.Id == item.TransactionStatusId)
                                {
                                    item.StatusName = item3.Name;
                                }
                            }

                            if (voidCheck == 1)
                            {
                                voidCheck = 0;
                                break;
                            }

                            item.TypeName = item2.Name;
                            filteredTransactions.Add(item);
                        }
                    }
                }
                break;

            case 2:
                foreach (var item in _transactionList)
                {
                    foreach (var item2 in transactionTypes)
                    {
                        if (item2.Id == item.TransactionTypeId)
                        {
                            item.TypeName = item2.Name;
                        }
                    }

                    foreach (var item3 in transactionStatuses)
                    {
                        if (item3.Id == item.TransactionStatusId && item3.Name == "Void")
                        {
                            item.StatusName = item3.Name;
                            filteredTransactions.Add(item);
                        }
                    }
                }
                break;

            default:
                foreach (var item in _transactionList)
                {
                    foreach (var item2 in transactionTypes)
                    {
                        if (item2.Id == item.TransactionTypeId)
                        {
                            item.TypeName = item2.Name;
                        }
                    }

                    foreach (var item3 in transactionStatuses)
                    {
                        if (item3.Id == item.TransactionStatusId)
                        {
                            item.StatusName = item3.Name;
                        }
                    }
                    filteredTransactions.Add(item);
                }
                break;
            }

            return(filteredTransactions);
        }