コード例 #1
0
        // GET: AutoOrder
        public ActionResult AutoReorder()
        {
            ReorderListSet();

            DefaultReorder reorder = _context.ReorderQuantity.FirstOrDefault(u => u.DefaultReorderID == 1);

            List <BookOrder> autobookorders = _context.BookOrders.Include(o => o.Book).Where(b => b.InReorderList == true).ToList();

            foreach (BookOrder bo in autobookorders)
            {
                if (bo.Status == Status.Delivered)
                {
                    bo.InReorderList = false;
                    _context.Update(bo);
                }
            }

            _context.SaveChanges();

            List <BookOrder> updatedautoorders = _context.BookOrders.Include(o => o.Book).Where(b => b.InReorderList == true).ToList();

            ViewBag.ReorderID = reorder.DefaultReorderID;

            return(View(updatedautoorders));
        }
コード例 #2
0
        public async Task <IActionResult> Edit(int id, [Bind("DefaultReorderID,DefaultQuantity")] DefaultReorder defaultReorder)
        {
            if (id != defaultReorder.DefaultReorderID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(defaultReorder);

                    SetDefaultQuantity();

                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!DefaultReorderExists(defaultReorder.DefaultReorderID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }

                return(RedirectToAction("AutoReorder", "BookOrder"));
            }

            return(View(defaultReorder));
        }
コード例 #3
0
        public IActionResult ChangeDefault(int DefaultValue)
        {
            DefaultReorder reorder = _context.ReorderQuantity.FirstOrDefault(u => u.DefaultReorderID == 1);

            reorder.DefaultQuantity = DefaultValue;

            //TempData["quantity"] = DefaultValue;

            return(RedirectToAction("AutoRorder"));
        }
コード例 #4
0
        //POST : BookOrder/Create
        public IActionResult CreateAuto()
        {
            AppUser        user    = _context.Users.FirstOrDefault(u => u.UserName == User.Identity.Name);
            DefaultReorder reorder = _context.ReorderQuantity.FirstOrDefault(u => u.DefaultReorderID == 1);

            List <Book> ReorderBooks = GetReorderBooks();

            //list of orders
            List <BookOrder> bookorders = new List <BookOrder>();

            //list of book orders in database
            List <BookOrder> boalreadyindb = _context.BookOrders.ToList();

            //list of books we already have book orders for
            List <Book> titlesbookorder = new List <Book>();

            foreach (BookOrder bookorder in boalreadyindb)
            {
                titlesbookorder.Add(bookorder.Book);
            }

            //list of order details
            foreach (Book b in ReorderBooks)
            {
                bool alreadyExist = titlesbookorder.Contains(b);

                //if book doesnt have order
                if (alreadyExist == false)
                {
                    //create orders
                    BookOrder bo = new BookOrder();
                    bo.AppUser         = user;
                    bo.ReorderQuantity = reorder;

                    bo.Book          = b;
                    bo.Quantity      = bo.ReorderQuantity.DefaultQuantity;
                    bo.Price         = b.SupplierPrice;
                    bo.InReorderList = true;

                    bookorders.Add(bo);
                    _context.BookOrders.Add(bo);
                }
            }

            _context.SaveChanges();

            return(RedirectToAction("AutoReorder"));
        }
コード例 #5
0
        public void SetDefaultQuantity()
        {
            DefaultReorder   reorder        = _context.ReorderQuantity.FirstOrDefault(u => u.DefaultReorderID == 1);
            List <BookOrder> autobookorders = _context.BookOrders.Include(o => o.Book).Where(b => b.InReorderList == true).ToList();

            foreach (BookOrder bo in autobookorders)
            {
                if (bo.ReorderQuantity == reorder)
                {
                    bo.Quantity = bo.ReorderQuantity.DefaultQuantity;
                    bo.Quantity = reorder.DefaultQuantity;
                    _context.Update(bo);
                }
            }

            _context.SaveChanges();
        }