Ejemplo n.º 1
0
        public async Task <IActionResult> Create(VirtualAccountForm virtualAccount)
        {
            var viewModel = new VirtualAccountViewModel()
            {
                VirtualAccounts = new List <VirtualAccountModel>()
            };

            try
            {
                await _virtualAccountService.Create(virtualAccount);

                var virtualAccs = await _virtualAccountService.GetAll(virtualAccount.BankAccountId);

                var virtualAcc = virtualAccs.FirstOrDefault();
                if (virtualAcc == null)
                {
                    return(RedirectToAction("Index", "BankAccount", new { area = "BankAccount" }));
                }
                viewModel.SelectedVirtualAccount = await _virtualAccountService.Get(virtualAcc.Id);

                viewModel.VirtualAccounts = virtualAccs;
            }
            catch (Exception e)
            {
                viewModel.Error = new Shared.Models.GackoError(e);
            }
            return(RedirectToAction("Index", "VirtualAccount", new { bankAccountId = virtualAccount.BankAccountId, area = "VirtualAccount" }));

            return(View("Index", viewModel));
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> ChangeVirtualAccActive(int bankAccId, int virtualAccId)
        {
            var viewModel = new VirtualAccountViewModel()
            {
                VirtualAccounts = new List <VirtualAccountModel>()
            };

            try
            {
                viewModel.SelectedVirtualAccount = await _virtualAccountService.Get(virtualAccId);

                viewModel.VirtualAccounts = await _virtualAccountService.GetAll(bankAccId);
            }
            catch (Exception e)
            {
                viewModel.Error = new Shared.Models.GackoError(e);
            }
            return(View("Index", viewModel));
        }
Ejemplo n.º 3
0
        public async Task <IActionResult> Index(int bankAccountId)
        {
            var viewModel = new VirtualAccountViewModel()
            {
                VirtualAccounts = new List <VirtualAccountModel>()
            };

            try
            {
                var virtualAccs = await _virtualAccountService.GetAll(bankAccountId);

                var virtualAcc = virtualAccs.FirstOrDefault();
                if (virtualAcc == null)
                {
                    var bankAccountViewModel = new VirtualAccountForm()
                    {
                        BankAccountId = bankAccountId
                    };
                    return(View("Create", bankAccountViewModel));
                }
                viewModel.SelectedVirtualAccount = await _virtualAccountService.Get(virtualAcc.Id);

                viewModel.VirtualAccounts = virtualAccs;
            }
            catch (Exception e)
            {
                viewModel.Error = new Shared.Models.GackoError(e);
            }

            viewModel.SelectedVirtualAccount.Expenses = await _expenseService.GetAll(viewModel.SelectedVirtualAccount.Id);

            viewModel.expSum = viewModel.SelectedVirtualAccount.Expenses != null?viewModel.SelectedVirtualAccount.Expenses.Sum(_ => _.Amount) : (0.00);

            viewModel.SelectedVirtualAccount.Subscriptions = await _subscriptionService.GetAll(viewModel.SelectedVirtualAccount.Id);

            viewModel.subSum = viewModel.SelectedVirtualAccount.Subscriptions != null?viewModel.SelectedVirtualAccount.Subscriptions.Sum(_ => _.Amount) : (0.00);

            return(View("Index", viewModel));
        }
Ejemplo n.º 4
0
        public async Task <IActionResult> Update(VirtualAccountForm virtualAccount)
        {
            var viewModel = new VirtualAccountViewModel()
            {
                VirtualAccounts = new List <VirtualAccountModel>()
            };

            try
            {
                await _virtualAccountService.Update(virtualAccount);

                if (virtualAccount.Id != null)
                {
                    int virtualAccountId = (int)virtualAccount.Id;
                    viewModel.SelectedVirtualAccount = await _virtualAccountService.Get(virtualAccountId);
                }
                viewModel.VirtualAccounts = await _virtualAccountService.GetAll(virtualAccount.BankAccountId);
            }
            catch (Exception e)
            {
                viewModel.Error = new Shared.Models.GackoError(e);
            }
            return(RedirectToAction("Index", "VirtualAccount", new { bankAccountId = virtualAccount.BankAccountId, area = "VirtualAccount" }));
        }