Exemple #1
0
        public ActionResult Edit(string id)
        {
            // Get the Specific Book by Id
            BookTable bookTable = new BookTable(db);
            Book      editBook  = bookTable.GetBookById(id);

            return(View(editBook));
        }
Exemple #2
0
        public void GetBookbyId_Null()
        {
            Mock <IDatabase> mock      = new Mock <IDatabase>();
            BookTable        booktable = new BookTable(mock.Object);
            List <Dictionary <string, string> > result = new List <Dictionary <string, string> >();

            mock.Setup(x => x.Query(It.IsAny <string>(), It.IsAny <Dictionary <string, object> >())).Returns(result);
            Assert.AreEqual(null, booktable.GetBookById("1"));
        }
Exemple #3
0
        public void GetBookbyId_ExpectedException()
        {
            Mock <IDatabase>                    mock      = new Mock <IDatabase>();
            BookTable                           booktable = new BookTable(mock.Object);
            Dictionary <string, string>         parameter = new Dictionary <string, string>();
            List <Dictionary <string, string> > result    = new List <Dictionary <string, string> >();

            parameter.Add("new", "test");
            result.Add(parameter);
            mock.Setup(x => x.Query(It.IsAny <string>(), It.IsAny <Dictionary <string, object> >())).Returns(result);
            Assert.IsInstanceOfType(booktable.GetBookById("1"), typeof(Book));
        }
Exemple #4
0
        public void GetBookbyId_Valid()
        {
            Mock <IDatabase>                    mock      = new Mock <IDatabase>();
            BookTable                           booktable = new BookTable(mock.Object);
            Dictionary <string, string>         parameter = new Dictionary <string, string>();
            List <Dictionary <string, string> > result    = new List <Dictionary <string, string> >();

            parameter.Add("Author", "test");
            parameter.Add("Book_id", "9");
            parameter.Add("No_of_books", "10");
            parameter.Add("Name", "test");
            parameter.Add("Rack_No", "11");
            parameter.Add("Status", "test");
            result.Add(parameter);
            mock.Setup(x => x.Query(It.IsAny <string>(), It.IsAny <Dictionary <string, object> >())).Returns(result);
            Assert.IsInstanceOfType(booktable.GetBookById("1"), typeof(Book));
        }
Exemple #5
0
        public ActionResult Issue(BookTransactionViewModel transactionViewModel)
        {
            try
            {
                if (transactionViewModel == null)
                {
                    throw new ArgumentException(ProjectConstants.InvalidTransactionMsg);
                }

                MemberTable memberTable = new MemberTable(db);
                LibMember   member      = memberTable.GetMemberById(Convert.ToString(transactionViewModel.MemberID));
                if (member == null)
                {
                    ModelState.AddModelError(string.Empty, ProjectConstants.MemberIdNotExistMsg);
                    return(View(transactionViewModel));
                }

                BookTable bookTable = new BookTable(db);
                Book      book      = bookTable.GetBookById(Convert.ToString(transactionViewModel.BookID));

                BookTranscationTable bookTranscationTable = new BookTranscationTable(db);
                BookTranscation      bookTranscation      = new BookTranscation()
                {
                    BookID      = transactionViewModel.BookID, BookStatus = transactionViewModel.BookStatus, MemberID = transactionViewModel.MemberID,
                    DateofIssue = transactionViewModel.DateofIssue, DueDate = transactionViewModel.DueDate
                };
                bookTranscationTable.Insert(bookTranscation);

                int existingBookTransactionCount = bookTranscationTable.GetBookTransactionCountByBookId(bookTranscation.BookID);

                if (existingBookTransactionCount >= book.Count)
                {
                    // update the book status as Not Available
                    book.Status = BookStatus.NotAvailable.ToString();
                    bookTable.Update(book);
                }
            }
            catch (Exception)
            {
                throw;
            }
            return(RedirectToAction(ProjectConstants.ListBookTranscation));
        }
Exemple #6
0
        public ActionResult Issue(string id)
        {
            // Read the Due Date day from
            int dueDateDays = Convert.ToInt32(WebConfigurationManager.AppSettings[ProjectConstants.BookDueDateDays]);

            BookTable bookTable = new BookTable(db);
            Book      book      = bookTable.GetBookById(id);

            BookTransactionViewModel newTransaction = new BookTransactionViewModel()
            {
                Name        = book.Name,
                Author      = book.Author,
                BookStatus  = BookTransactionStatus.Issued.ToString(),
                BookID      = book.BookID,
                DateofIssue = DateTime.Now,
                DueDate     = DateTime.Now.AddDays(Convert.ToDouble(WebConfigurationManager.AppSettings[ProjectConstants.BookDueDateDays]))
            };

            // Get the Count of existing book transactions
            ViewBag.Remaining = book.Count - (new BookTranscationTable(db)).GetBookTransactionCountByBookId(book.BookID, true);

            return(View(newTransaction));
        }