public ActionResult ReserveBook(int?id) { var book = db.BookTables.Find(id); if (string.IsNullOrEmpty(Convert.ToString(Session["UserID"]))) { return(RedirectToAction("Login", "Home")); } int userid = Convert.ToInt32(Convert.ToString(Session["UserID"])); int employeeid = Convert.ToInt32(Convert.ToString(Session["EmployeeID"])); var issueBookTable = new IssueBookTable() { BookID = book.BookID, Description = "Rezerwacja użytkownika", EmployeeID = employeeid, IssueCopies = 1, IssueDate = DateTime.Now, ReturnDate = DateTime.Now.AddDays(14), Status = false, ReserveNoOfCopies = true, UserID = userid }; issueBookTable.UserID = userid; if (ModelState.IsValid) { var find = db.IssueBookTables.Where(b => b.ReturnDate >= DateTime.Now && b.BookID == issueBookTable.BookID && (b.Status == true || b.ReserveNoOfCopies == true)).ToList(); int issuebooks = 0; foreach (var item in find) { issuebooks = issuebooks + item.IssueCopies; } var stockbooks = db.BookTables.Where(b => b.BookID == issueBookTable.BookID).FirstOrDefault(); if ((issuebooks == stockbooks.TotalCopies) || (issuebooks + issueBookTable.IssueCopies > stockbooks.TotalCopies)) { Message = "Brak książek na stanie!"; return(RedirectToAction("Index")); } db.IssueBookTables.Add(issueBookTable); db.SaveChanges(); Message = "Książka wypożyczona pomyślnie!"; return(RedirectToAction("Index")); } return(RedirectToAction("Index")); }
// GET: IssueBookTables/Details/5 public ActionResult Details(int?id) { if (string.IsNullOrEmpty(Convert.ToString(Session["UserID"]))) { return(RedirectToAction("Login", "Home")); } if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } IssueBookTable issueBookTable = db.IssueBookTables.Find(id); if (issueBookTable == null) { return(HttpNotFound()); } return(View(issueBookTable)); }
public ActionResult Create(IssueBookTable issueBookTable) { if (string.IsNullOrEmpty(Convert.ToString(Session["UserID"]))) { return(RedirectToAction("Login", "Home")); } int userid = Convert.ToInt32(Convert.ToString(Session["UserID"])); issueBookTable.UserID = userid; if (ModelState.IsValid) { var find = db.IssueBookTables.Where(b => b.ReturnDate >= DateTime.Now && b.BookID == issueBookTable.BookID && (b.Status == true || b.ReserveNoOfCopies == true)).ToList(); int issuebooks = 0; foreach (var item in find) { issuebooks = issuebooks + item.IssueCopies; } var stockbooks = db.BookTables.Where(b => b.BookID == issueBookTable.BookID).FirstOrDefault(); if ((issuebooks == stockbooks.TotalCopies) || (issuebooks + issueBookTable.IssueCopies > stockbooks.TotalCopies)) { ViewBag.Message = "Brak książek na stanie!"; return(View(issueBookTable)); } db.IssueBookTables.Add(issueBookTable); db.SaveChanges(); ViewBag.Message = "Książka wypożyczona pomyślnie!"; return(RedirectToAction("IssueBooks")); } ViewBag.BookID = new SelectList(db.BookTables, "BookID", "BookTitle", issueBookTable.BookID); ViewBag.EmployeeID = new SelectList(db.EmployeeTables, "EmployeeID", "FullName", issueBookTable.EmployeeID); ViewBag.UserID = new SelectList(db.UserTables, "UserID", "UserName", issueBookTable.UserID); return(View(issueBookTable)); }
public ActionResult Create(IssueBookTable issueBookTable) { if (string.IsNullOrEmpty(Convert.ToString(Session["UserID"]))) { return(RedirectToAction("Login", "Home")); } int userid = Convert.ToInt32(Convert.ToString(Session["UserID"])); issueBookTable.UserID = userid; if (ModelState.IsValid) { var find = db.IssueBookTables.Where(b => b.ReturnDate >= DateTime.Now && b.BookID == issueBookTable.BookID && (b.Status == true || b.ReservedNoOfCopies == true)).ToList(); int issueBook = 0; foreach (var item in find) { issueBook = issueBook + item.IssueCopies; } var stockBook = db.BookTables.Where(b => b.BookID == issueBook).FirstOrDefault(); if ((issueBook == stockBook.NoOfCopies) || (issueBook + issueBookTable.IssueCopies > stockBook.NoOfCopies)) { ViewBag.Message = "Stock is Empety !"; return(View(issueBookTable)); } db.IssueBookTables.Add(issueBookTable); db.SaveChanges(); ViewBag.Message = "Book Is Issue Successfully !"; return(RedirectToAction("Index")); } ViewBag.IssueBookID = new SelectList(db.BookTables, "BookID", "BookType", issueBookTable.IssueBookID); ViewBag.EmployeeID = new SelectList(db.EmployeeTables, "EmployeeID", "FullName", issueBookTable.EmployeeID); ViewBag.UserID = new SelectList(db.UserTables, "UserID", "UserName", issueBookTable.UserID); return(View(issueBookTable)); }