public IHttpActionResult PuttblBorrow(int id, tblBorrow tblBorrow) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != tblBorrow.BorrowID) { return(BadRequest()); } db.Entry(tblBorrow).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!tblBorrowExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
// POST: BorrowsManage/End/5 public ActionResult End(int?BorrowId, string Status) { if (!isStaff()) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } if (ModelState.IsValid) { //check param if (BorrowId == null || Status == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } tblBorrow tblBorrow = db.tblBorrows.Find(BorrowId); if (tblBorrow == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } //End borrow tblBookDetail tblBookDetail = tblBorrow.tblBookDetail; tblBookDetail.Status = Status; tblBorrow.IsEnd = true; db.Entry(tblBorrow).State = EntityState.Modified; db.Entry(tblBookDetail).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View()); }
public IHttpActionResult GettblBorrow(int id) { tblBorrow tblBorrow = db.tblBorrows.Find(id); if (tblBorrow == null) { return(NotFound()); } return(Ok(tblBorrow)); }
public IHttpActionResult PosttblBorrow(tblBorrow tblBorrow) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } db.tblBorrows.Add(tblBorrow); db.SaveChanges(); return(CreatedAtRoute("DefaultApi", new { id = tblBorrow.BorrowID }, tblBorrow)); }
public IHttpActionResult DeletetblBorrow(int id) { tblBorrow tblBorrow = db.tblBorrows.Find(id); if (tblBorrow == null) { return(NotFound()); } db.tblBorrows.Remove(tblBorrow); db.SaveChanges(); return(Ok(tblBorrow)); }
// Allow User to Extend Book Borrow Transaction public ActionResult Extend(int?id) { //check params if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } tblBorrow tblBorrow = db.tblBorrows.Find(id); if (tblBorrow == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } //get USER EMAIL if (Session["USER"] == null) { return(RedirectToAction("Index", "Init")); } tblAccount tblAccount = (tblAccount)Session["USER"]; string email = tblAccount.Email; //check User have permission to change if (!tblBorrow.BorrowerEmail.Equals(email)) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } //check Book Transaction have right condition to change if (tblBorrow.ExtendNumber <= 0) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } int date = (int)Math.Round((tblBorrow.ReturnDate - DateTime.Now).TotalDays); if (date < -3 || date > 1) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } //pass check - extend borrow tblBorrow.ReturnDate = tblBorrow.ReturnDate.AddDays(10); tblBorrow.ExtendNumber -= 1; db.Entry(tblBorrow).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); }
// GET: BorrowsManage/End/5 // When student return book! Staff End borrows public ActionResult EndBorrow(int?id) { if (!isStaff()) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } tblBorrow tblBorrow = db.tblBorrows.Find(id); if (tblBorrow == null) { return(HttpNotFound()); } int date = (int)Math.Round((tblBorrow.ReturnDate - DateTime.Now).TotalDays); if (date < 0) { ViewBag.DayMessage = Math.Abs(date) + " DAYS OVER"; } else { if (date == 0) { ViewBag.DayMessage = "NO DAY LEFT"; } else { ViewBag.DayMessage = Math.Abs(date) + " DAYS LEFT"; } } return(View("End", tblBorrow)); }
// POST: BorrowsManage/Create // Create new transaction for Borrowing public ActionResult Create(string BookID, string SubID, string Email) { if (!isStaff()) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } if (ModelState.IsValid) { //check param if (BookID == null || SubID == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } tblBook tblBook = db.tblBooks.Find(BookID); if (tblBook == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ViewBag.BookName = tblBook.Name; //neu book khong available thi return va bao loi if (!tblBook.Status.Equals("Available")) { ViewBag.BookID = BookID; ViewBag.CreateMessage = "This Book is not available to borrow!"; return(View()); } //neu Book Instance ID khong ton tai thi return ve View va bao loi // Book InstanceID = BookID + SubID string InstanceID = BookID + SubID; tblBookDetail tblBookDetail = db.tblBookDetails.Find(InstanceID); if (tblBookDetail == null) { ViewBag.BookID = BookID; ViewBag.CreateMessage = "This Instance ID does not exist!"; return(View()); } //BookInstance is Lost or Borrowed if (tblBookDetail.Status != "Free") { ViewBag.BookID = BookID; ViewBag.CreateMessage = "This Book Instance does not available!"; return(View()); } //neu Email khong ton tai thi return View va bao loi tblAccount tblAccount = db.tblAccounts.Find(Email); if (tblAccount == null) { ViewBag.BookID = BookID; ViewBag.CreateMessage = "This Email does not exist"; return(View()); } //end validate //Add tblBookDetail.Status = "Borrowed"; db.Entry(tblBookDetail).State = EntityState.Modified; tblBorrow tblBorrow = new tblBorrow(); tblBorrow.BorrowerEmail = Email; tblBorrow.BookSubID = InstanceID; tblBorrow.ExtendNumber = 3; tblBorrow.CreateDate = DateTime.Now; tblBorrow.ReturnDate = DateTime.Now.AddDays(10); tblBorrow.IsEnd = false; db.tblBorrows.Add(tblBorrow); db.SaveChanges(); return(RedirectToAction("Index")); } return(View()); }