public ActionResult SubmitNotReturned(ItemsNotReturnedViewModel vm) { if (Session["isAdmin"] == null || !(bool)Session["isAdmin"]) return RedirectToAction("Index", new { controller = "Home", action = "Index" }); if (vm == null || vm.ItemsLost == null || vm.ItemReturn == null) return RedirectToAction("Index"); if (!CheckReturnedAndLost(vm.ItemsNotReturned, vm.ItemsLost, vm.ItemReturn)) { TempData["error"] = "An item cannot be marked as lost and returned"; return RedirectToAction("Index"); } if (!UpdateItems(vm.ItemsNotReturned, vm.ItemsLost, vm.ItemReturn)) { TempData["error"] = "Item not found, cannot continue"; return RedirectToAction("Index"); } return RedirectToAction("Index"); }
public ActionResult NotReturned() { if (Session["isAdmin"] == null || !(bool)Session["isAdmin"]) return RedirectToAction("Index", new { controller = "Home", action = "Index" }); var allitems = db.Items.Where(item => item.CheckedOutById != null); allitems = allitems.Where(item => item.CheckedInById != null); allitems = allitems.Where(item => item.IsReturned == false); var notReturnedItems = allitems.OrderBy(item => item.ItemType.ItemName).ThenBy(item => item.InventoryLocation.InventoryLocationName).ThenBy(item => item.Label!=null? item.Label.LabelName : "").ToList(); if (notReturnedItems.Count == 0) { TempData["error"] = "No items are currently checked in and not returned"; return RedirectToAction("Index"); } IList<bool> lostItem = new List<bool>(); IList<bool> returnedItems = new List<bool>(); for (int i=0; i< notReturnedItems.Count; i++) { lostItem.Add(false); returnedItems.Add(false); } ItemsNotReturnedViewModel vm = new ItemsNotReturnedViewModel { ItemsNotReturned = notReturnedItems, ItemsLost = lostItem, ItemReturn = returnedItems }; return View(vm); }