Exemple #1
0
        public ActionResult RenewTransaction(string id)
        {
            string bookId = string.Empty;

            try
            {
                BookTranscationTable bookTransactionTable = new BookTranscationTable(db);


                BookTranscation currentTransaction = bookTransactionTable.GetBookTransactionById(id);

                if (currentTransaction != null)
                {
                    currentTransaction.DueDate    = currentTransaction.DueDate.AddDays(Convert.ToDouble(WebConfigurationManager.AppSettings[ProjectConstants.BookDueDateDays]));
                    currentTransaction.BookStatus = BookTransactionStatus.Renewed.ToString();
                    bookTransactionTable.RenewBook(currentTransaction);
                    bookId = Convert.ToString(currentTransaction.BookID);
                }
                else
                {
                    return(RedirectToAction(ProjectConstants.ListBookTranscation));
                }
            }
            catch (Exception)
            {
                throw;
            }
            return(RedirectToAction(ProjectConstants.RenewBook, new { @id = bookId }));
        }
Exemple #2
0
        public ActionResult ReturnTransaction(string id)
        {
            string bookId = string.Empty;

            try
            {
                BookTranscationTable bookTransactionTable = new BookTranscationTable(db);


                BookTranscation currentTransaction = bookTransactionTable.GetBookTransactionById(id);

                if (currentTransaction != null)
                {
                    currentTransaction.BookStatus = BookTransactionStatus.Returned.ToString();
                    bookTransactionTable.RenewBook(currentTransaction);
                    bookId = Convert.ToString(currentTransaction.BookID);
                }
                else
                {
                    return(RedirectToAction(ProjectConstants.ListBookTranscation));
                }
            }
            catch (Exception)
            {
                throw;
            }
            return(RedirectToAction(ProjectConstants.ReturnBook, new { @id = bookId }));
        }
Exemple #3
0
        public ActionResult ReturnBook(string id)
        {
            BookTranscationTable          bookTranscationTable = new BookTranscationTable(db);
            IEnumerable <BookTranscation> edittranscations     = bookTranscationTable.GetBookTransactionsByBookId(Convert.ToInt32(id), true);

            return(View(edittranscations));
        }
Exemple #4
0
 public ActionResult IssueBook(BookTranscation booktranscation)
 {
     if (ModelState.IsValid)
     {
         BookTranscationTable bookTranscation = new BookTranscationTable(db);
         bookTranscation.Insert(booktranscation);
     }
     return(View(ProjectConstants.IssueBook));
 }
        public void GetBookTransactionById_Null()
        {
            Mock <IDatabase>     mock                  = new Mock <IDatabase>();
            BookTranscationTable booktable             = new BookTranscationTable(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.GetBookTransactionById("1"));
        }
        public void DeleteByTranscationId()
        {
            Mock <IDatabase> mock = new Mock <IDatabase>();

            mock.Setup(x => x.Execute(It.IsAny <string>(), It.IsAny <Dictionary <string, object> >())).Returns(1);
            BookTranscationTable booktable = new BookTranscationTable(mock.Object);
            int result = booktable.DeleteByTranscationId("25");

            Assert.AreEqual(1, result);
        }
        public void GetBookTransactionById_ExpectedException()
        {
            Mock <IDatabase>                    mock      = new Mock <IDatabase>();
            BookTranscationTable                booktable = new BookTranscationTable(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.GetBookTransactionById("1"), typeof(BookTranscation));
        }
        public void GetBookTransactionCountByBookId()
        {
            Mock <IDatabase>                    mock      = new Mock <IDatabase>();
            BookTranscationTable                booktable = new BookTranscationTable(mock.Object);
            Dictionary <string, string>         parameter = new Dictionary <string, string>();
            List <Dictionary <string, string> > result    = new List <Dictionary <string, string> >();

            parameter.Add("Book_ID", "1");
            result.Add(parameter);
            mock.Setup(x => x.Query(It.IsAny <string>(), It.IsAny <Dictionary <string, object> >())).Returns(result);
            Assert.AreEqual(1, booktable.GetBookTransactionCountByBookId(1, true));
        }
        public void RenewBook()
        {
            Mock <IDatabase> mock = new Mock <IDatabase>();

            mock.Setup(x => x.Execute(It.IsAny <string>(), It.IsAny <Dictionary <string, object> >())).Returns(1);
            BookTranscationTable booktable = new BookTranscationTable(mock.Object);
            BookTranscation      book      = new BookTranscation();

            book.SetTranscationID(1);
            book.SetBookStatus("Renewed");
            book.SetDueDate(DateTime.Now);
            int result = booktable.Insert(book);

            Assert.AreEqual(1, result);
        }
        public void GetBookTransactionById_Valid()
        {
            Mock <IDatabase>                    mock      = new Mock <IDatabase>();
            BookTranscationTable                booktable = new BookTranscationTable(mock.Object);
            Dictionary <string, string>         parameter = new Dictionary <string, string>();
            List <Dictionary <string, string> > result    = new List <Dictionary <string, string> >();

            parameter.Add("Transcation_ID", "20");
            parameter.Add("Book_ID", "4080");
            parameter.Add("BookStatus", "Renewed");
            parameter.Add("Member_ID", "10");
            parameter.Add("Due_Date", "2018-07-22 17:35:23");
            parameter.Add("Date_of_issue", "2018-07-22 17:35:23");
            result.Add(parameter);
            mock.Setup(x => x.Query(It.IsAny <string>(), It.IsAny <Dictionary <string, object> >())).Returns(result);
            Assert.IsInstanceOfType(booktable.GetBookTransactionById("20"), typeof(BookTranscation));
        }
Exemple #11
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));
        }
        public void GetBooksForIssue()
        {
            Mock <IDatabase>                    mock      = new Mock <IDatabase>();
            BookTranscationTable                booktable = new BookTranscationTable(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);
            Book book = new Book();

            Assert.IsInstanceOfType(booktable.GetBooksForIssue(), typeof(List <Book>));
        }