public ActionResult ConfigureHouse(ConfigureHouseVM model)
        {
            var bankAccount = new BankAccount(model.StartingBalance, model.BankAccount.WarningBalance, model.BankAccount.AccountName);

            bankAccount.AccountType = model.BankAccount.AccountType;
            db.BankAccounts.Add(bankAccount);

            var budget = new Budget();

            budget.HouseholdId = (int)model.HouseholdId;
            budget.BudgetName  = model.Budget.BudgetName;
            db.Budgets.Add(budget);

            db.SaveChanges();

            var budgetItem = new BudgetItem();

            budgetItem.BudgetId     = budget.Id;
            budgetItem.TargetAmount = model.BudgetItem.TargetAmount;
            budgetItem.ItemName     = model.BudgetItem.ItemName;
            db.BudgetItems.Add(budgetItem);

            db.SaveChanges();

            return(RedirectToAction("Dashboard", "Home"));
        }
        //[Authorize(Roles = "Head")]
        public ActionResult ConfigureHouse()
        {
            var model = new ConfigureHouseVM();

            model.HouseholdId = User.Identity.GetHouseholdId();
            if (model.HouseholdId == 0)
            {
                return(RedirectToAction("Create"));
            }

            return(View(model));
        }
예제 #3
0
        public ActionResult ConfigureHouse(ConfigureHouseVM model)
        {
            var userId  = User.Identity.GetUserId();
            var user    = db.Users.Find(userId);
            var houseId = (int)user.HouseholdId;

            if (ModelState.IsValid)
            {
                //Create Account
                var newAccount = new BankAccount
                {
                    HouseholdId     = houseId,
                    OwnerId         = userId,
                    Created         = DateTime.Now,
                    Name            = model.AccountName,
                    AccountType     = model.AccountType,
                    StartingBalance = model.StartingBalance,
                    CurrentBalance  = model.StartingBalance
                };
                db.BankAccounts.Add(newAccount);
                //Create Budget
                var newBudget = new Budget
                {
                    HouseholdId   = houseId,
                    OwnerId       = userId,
                    Created       = DateTime.Now,
                    Name          = model.BudgetName,
                    CurrentAmount = 0
                };
                db.Budgets.Add(newBudget);
                //Create Budget Item
                var newItem = new BudgetItem
                {
                    BudgetId      = newBudget.Id,
                    Created       = DateTime.Now,
                    Name          = model.ItemName,
                    TargetAmount  = model.ItemTarget,
                    CurrentAmount = 0
                };
                db.BudgetItems.Add(newItem);

                db.SaveChanges();

                return(RedirectToAction("Dashboard", "Home"));
            }


            //Something broke reroute back to form
            return(View(model));
        }