Beispiel #1
0
        public RedirectToRouteResult PurchaseSingleItem(int id)
        {
            SimulationManager mgr = new SimulationManager();

            var item = db.StoreItems.Find(id);

            var userProfile = db.UserProfiles.Local.SingleOrDefault(u => u.UserName == User.Identity.Name)
                ?? db.UserProfiles.SingleOrDefault(u => u.UserName == User.Identity.Name);

            var student = db.Students.Find(userProfile.UserId);

            var accounts = db.Accounts.Where(x => x.StudentID == student.UserId);

            var account = accounts.FirstOrDefault();

            var accountSavings = accounts.Single(x => x.AccountName == "Savings");

            var purchase = mgr.PurchaseSingleItem(item, student, account, accountSavings);

            db.Purchases.Add(purchase);
            db.SaveChanges();

            return RedirectToAction("Index", "Student");
        }
Beispiel #2
0
        public RedirectToRouteResult PurchaseMultipleItems(List<int> MultipleItemsCheckboxes)
        {
            SimulationManager mgr = new SimulationManager();

            ICollection<StoreItem> items = new List<StoreItem>(); //Don't know if this will work

            var userProfile = db.UserProfiles.Local.SingleOrDefault(u => u.UserName == User.Identity.Name)
                ?? db.UserProfiles.SingleOrDefault(u => u.UserName == User.Identity.Name);

            var student = db.Students.Find(userProfile.UserId);

            var studentExpenses = student.StudentExpenses; //Not sure if this is right?

            var accounts = db.Accounts.Where(x => x.StudentID == student.UserId);

            var account = accounts.FirstOrDefault();

            var accountSavings = accounts.Single(x => x.AccountName == "Savings");

            if (MultipleItemsCheckboxes != null)
            {
                foreach (var item in MultipleItemsCheckboxes)
                {
                    var storeItem = db.StoreItems.Find(item);
                    items.Add(storeItem);
                }

                //var purchases = mgr.PurchaseMultipleItems(items, student, account, accountSavings, studentExpenses);

                //foreach (var item in purchases)
                //{
                //    db.Purchases.Add(item);
                //}

                db.SaveChanges();

                return RedirectToAction("Index", "Student");
            }
            else return RedirectToAction("Index"); //Set up error
        }