public ActionResult DeleteConfirmed(int id)
        {
            BORROWER bORROWER = db.BORROWERs.Find(id);

            db.BORROWERs.Remove(bORROWER);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
 public ActionResult Edit([Bind(Include = "CARD_ID,SSN,FNAME,LNAME,ADDRESS,PHONE")] BORROWER bORROWER)
 {
     if (ModelState.IsValid)
     {
         db.Entry(bORROWER).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(bORROWER));
 }
        // GET: BORROWERs/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            BORROWER bORROWER = db.BORROWERs.Find(id);

            if (bORROWER == null)
            {
                return(HttpNotFound());
            }
            return(View(bORROWER));
        }
示例#4
0
        public ActionResult SetCardId(BORROWER borrower)
        {
            int cardId = borrower.CARD_ID;

            Session["cardID"] = borrower.CARD_ID;
            bool result = db.BORROWERs.Where(x => x.CARD_ID == cardId).Any();

            if (result == false)
            {
                return(View("StudentNotFound"));
            }

            return(RedirectToAction("ReturnBookLoan"));
        }
        public ActionResult Create([Bind(Include = "CARD_ID,SSN,FNAME,LNAME,ADDRESS,PHONE")] BORROWER bORROWER)
        {
            if (ModelState.IsValid)
            {
                foreach (var ssns in db.BORROWERs)
                {
                    if (ssns.SSN == bORROWER.SSN)
                    {
                        return(View("UserExists"));
                    }
                }
                db.BORROWERs.Add(bORROWER);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            //Session["ssn"] = bORROWER.SSN;


            return(View(bORROWER));
        }
示例#6
0
        public ActionResult ValidateCheckOut(BORROWER borrower)
        {
            int cardId = borrower.CARD_ID;

            Session["cardID"] = borrower.CARD_ID;
            bool result = db.BORROWERs.Where(x => x.CARD_ID == cardId).Any();

            //1. First Condition--If the student is registered
            if (result == false)
            {
                return(View("StudentNotFound"));
            }
            //2. Second Condition--If the student has already issued three books
            //int count = db.BOOK_LOANS.Where(x => x.CARD_ID == cardId).Count();
            int count = (from bk in db.BOOK_LOANS
                         join b in db.BORROWERs
                         on bk.CARD_ID equals b.CARD_ID
                         where borrower.CARD_ID == bk.CARD_ID
                         where bk.DATE_IN == null
                         select bk.LOAN_ID).Count();

            int overDue_count = (from bk in db.BOOK_LOANS
                                 join b in db.BORROWERs
                                 on bk.CARD_ID equals b.CARD_ID
                                 where bk.CARD_ID == borrower.CARD_ID
                                 where DateTime.Now > bk.DUE_DATE
                                 select bk.LOAN_ID).Count();

            //Session["count"] = count;
            if (count == 3 || overDue_count > 0)
            {
                return(View("MaximumLimitReached"));
            }

            //3. If the student has unpaid Fine
            var query = (from bk in db.BOOK_LOANS
                         join f in db.FINES
                         on bk.LOAN_ID equals f.LOAN_ID
                         where f.PAID == null
                         select bk.CARD_ID).ToList();

            foreach (int value in query)
            {
                if (value == borrower.CARD_ID)
                {
                    return(View("Fine"));
                }
            }
            //4. If the book is overdue
            var query1 = (from bk in db.BOOK_LOANS
                          where DateTime.Now > bk.DUE_DATE
                          select bk.CARD_ID).ToList();

            foreach (int value in query1)
            {
                if (value == borrower.CARD_ID)
                {
                    return(View("BookOverDue"));
                }
            }

            //5. If Book is not Available
            var reqBook = (from b in db.BOOK_LOANS
                           where b.DATE_IN == null
                           select b.ISBN).ToList();

            foreach (var value in reqBook)
            {
                if (value == Convert.ToInt64(Session["ISBN"]))
                {
                    return(View("BookNotAvailable"));
                }
            }
            return(RedirectToAction("AddBookLoan"));
        }