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)); }
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)); }
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)); }
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" })); }