Beispiel #1
0
        public async Task <IActionResult> CreateExpense(CreateExpenseCategoryViewModel createExpense)
        {
            string userId = _userManager.GetUserId(User);

            if (ModelState.IsValid)
            {
                ExpenseCategory expenseCategory = _mapper.Map <ExpenseCategory>(createExpense);
                expenseCategory.UserId = userId;
                await _balanceService.AddExpenseCategory(expenseCategory);

                return(RedirectToAction("Index", "Category"));
            }

            var expenseCategories = await _balanceService.GetUserExpenseCategories(userId);

            var incomeCategories = await _balanceService.GetUserIncomeCategories(userId);

            CategoryViewModel categoryViewModel = new CategoryViewModel
            {
                CreateExpense     = createExpense,
                CreateIncome      = new CreateIncomeCategoryViewModel(),
                ExpenseCategories = _mapper.Map <IReadOnlyList <ExpenseCategory>, List <ItemCategoryViewModel> >(expenseCategories),
                IncomeCategories  = _mapper.Map <IReadOnlyList <IncomeCategory>, List <ItemCategoryViewModel> >(incomeCategories)
            };

            return(View("Index", categoryViewModel));
        }