public IActionResult Info(int id) { Book book = _iBookRepository.GetByIdWithBookHistory(id); if (book == null) { return(RedirectToAction("List")); } Author author = _iAuthorRepository.GetById(book.AuthorId); BookInfoViewModel bookInfoViewModel = new BookInfoViewModel(); bookInfoViewModel.Book = book; bookInfoViewModel.Author = author; foreach (BookHistory history in book.BooksHistory) { BookHistoryModel model = new BookHistoryModel(); model.ReaderId = history.ReaderId; model.ReaderName = history.Reader.Name; model.BorrowedDate = history.BorrowedDate; model.ReturnDate = history.ReturnDate; bookInfoViewModel.BookHistoryModel.Add(model); } return(View(bookInfoViewModel)); }
public IActionResult Info(int id) { Reader reader = _readerRepository.GetByIdWithBookHistory(id); if (reader == null) { return(RedirectToAction("List")); } ReaderInfoViewModel readerInfoViewModel = new ReaderInfoViewModel(); readerInfoViewModel.Reader = reader; foreach (BookHistory history in reader.BooksHistory) { BookHistoryModel model = new BookHistoryModel(); model.BookId = history.BookId; model.BookTitle = history.Book.Title; model.BorrowedDate = history.BorrowedDate; model.ReturnDate = history.ReturnDate; readerInfoViewModel.BookHistoryModel.Add(model); } return(View(readerInfoViewModel)); }
public void ReturnBook(int userid, int bookid) { try { if (StaticDatabase._bookHistoryList.Any(m => m.BookID == bookid && m.UserID == userid)) { BookHistoryModel obj = StaticDatabase._bookHistoryList.Where(m => m.BookID == bookid && m.UserID == userid).FirstOrDefault(); obj.IsAvilable = false; } } catch { throw; } }
public string IssueBook(BookHistoryModel obj) { try { using (LINQ_to_SQLDataContext dbContext = new LINQ_to_SQLDataContext()) { if (dbContext.tbl_UserModels.Any(x => x.UserID == obj.UserID && x.IsAdmin == false) && dbContext.tbl_BookModels.Any(x => x.BookID == obj.BookID)) { if (dbContext.tbl_BookHistoryModels.Any(x => x.BookID == obj.BookID && x.ReturnedAt == null)) { return(StringLiterals.BookIsAssignedToUser); } if (dbContext.tbl_BookModels.Any(x => x.BookID == obj.BookID && (x.IsActive == false || x.IsAvailable == false))) { return(StringLiterals.Error); } dbContext.tbl_BookModels.SingleOrDefault(x => x.BookID == obj.BookID).IsAvailable = false; obj.OperationPerofrmedAt = DateTime.Now; SqlCommand cmd = new SqlCommand("spAddHistory"); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@BookID", obj.BookID); cmd.Parameters.AddWithValue("@UserID", obj.UserID); cmd.Parameters.AddWithValue("@OperationPerformedAt", obj.OperationPerofrmedAt); cmd.Parameters.AddWithValue("@ReturnedAt", System.Data.SqlTypes.SqlDateTime.MinValue); cmd.Parameters.AddWithValue("@Remarks", obj.Remarks); cmd.Parameters.AddWithValue("@PerformedByID", obj.PerformedByID); dbcon.ExeNonQuery(cmd); SqlCommand cmdForLog = new SqlCommand("spAddLog"); cmdForLog.CommandType = CommandType.StoredProcedure; cmdForLog.Parameters.AddWithValue("@BookID", obj.BookID); cmdForLog.Parameters.AddWithValue("@UserID", obj.UserID); dbcon.ExeNonQuery(cmdForLog); dbContext.SubmitChanges(); return(StringLiterals.IssueBookMsg + (obj.OperationPerofrmedAt.AddDays(30))); } else { return(StringLiterals.Error); } } } catch { throw; } }
public string IssueBook(BookHistoryModel obj) { try { if (StaticDatabase._bookHistoryList.Any(m => m.BookID == obj.BookID && m.ReturnedAt == null)) { return(StringLiterals.BookIsAssignedToUser); } StaticDatabase._bookHistoryList.Add(obj); return(StringLiterals.SuccesMsg); } catch { throw; } }
public string IssueBook(BookHistoryModel obj) { return(_bookObj.IssueBook(obj)); }
public string IssueBook(BookHistoryModel obj) { using (SqlConnection connection = new SqlConnection(dbstring)) { SqlCommand cmd = new SqlCommand("CheckBookAvailability", connection); cmd.Parameters.AddWithValue("@bookID", obj.BookID); cmd.CommandType = CommandType.StoredProcedure; try { connection.Open(); int choice = (int)cmd.ExecuteScalar(); if (choice == 1) { cmd = new SqlCommand("IssueBook", connection); cmd.Parameters.AddWithValue("@bookID", obj.BookID); cmd.Parameters.AddWithValue("@userID", obj.UserID); cmd.Parameters.AddWithValue("@operationPerformedAt", obj.OperationPerformedAt); cmd.Parameters.AddWithValue("@remarks", obj.Remarks); cmd.Parameters.AddWithValue("@performedbyID", obj.PerformedByID); cmd.CommandType = CommandType.StoredProcedure; try { cmd.ExecuteNonQuery(); return(StringLiterals.SuccesMsg); } catch { throw; } } else { return(StringLiterals.BookNotAvailable); } } catch { throw; } finally { cmd.Dispose(); connection.Close(); } } /*try * { * if (StaticDatabase._bookHistoryList.Any(m => m.BookID == obj.BookID && m.ReturnedAt == null)) * { * return StringLiterals.BookIsAssignedToUser; * } * else * { * obj.PerformedByID=1; * obj.Issued="Issued"; * obj.Returned="NA"; * StaticDatabase._bookHistoryList.Add(obj); * BookModel _issueupdate=StaticDatabase._booksList.Where(m=>m.BookID==obj.BookID).FirstOrDefault(); * if(_issueupdate.IsAvailable==true) _issueupdate.IsAvailable=false; * * return StringLiterals.SuccesMsg; * } * } * catch * { * throw; * * }*/ }
public static int AdminChoiceSelect() { IBookModule BookChoice = BALFactory.GetBookModuleObject(); int choice; Console.WriteLine(StringLiterals.Welcome); Console.WriteLine(StringLiterals.AdminChoice); Console.Write(StringLiterals.ChoiceEntry); choice = Int32.Parse(Console.ReadLine()); switch (choice) { case 1: Console.Clear(); Console.WriteLine(StringLiterals.EnterBookDetails); Console.Write(StringLiterals.BookName); string _bookName = Console.ReadLine(); Console.Write(StringLiterals.BookAuthor); string _bookAuthor = Console.ReadLine(); Console.Write(StringLiterals.BookDepartment); string _bookDept = Console.ReadLine(); Console.Write(StringLiterals.Remarks); string _bookRemarks = Console.ReadLine(); Console.Write(StringLiterals.NumberofBooks); int _bookCount = Int32.Parse(Console.ReadLine()); for (int _loopAdd = 0; _loopAdd < _bookCount; _loopAdd++) { BookChoice.AddBook(new BookModel { Name = _bookName, AuthorName = _bookAuthor, Department = _bookDept, Remarks = _bookRemarks, IsActive = true }); } break; case 2: Console.Clear(); BookHistoryModel issueInfo = new BookHistoryModel(); Console.WriteLine(StringLiterals.IssuingDetails); Console.Write(StringLiterals.BookID); issueInfo.BookID = Int32.Parse(Console.ReadLine()); Console.Write(StringLiterals.UserID); issueInfo.UserID = Int32.Parse(Console.ReadLine()); Console.Write(StringLiterals.IssueTime); issueInfo.OperationPerformedAt = DateTime.Now; Console.WriteLine(issueInfo.OperationPerformedAt); Console.Write(StringLiterals.Validity); issueInfo.ReturnedAt = DateTime.Now.AddDays(30); Console.WriteLine(issueInfo.ReturnedAt); Console.Write(StringLiterals.Remarks); issueInfo.Remarks = Console.ReadLine(); Console.Write(StringLiterals.AuthorityID); issueInfo.PerformedByID = Int32.Parse(Console.ReadLine()); string _issuemsg = BookChoice.IssueBook(issueInfo); Console.WriteLine(_issuemsg); break; case 3: Console.Clear(); Console.WriteLine(StringLiterals.EnterBookDetails); Console.Write(StringLiterals.BookID); int _returnID = Int32.Parse(Console.ReadLine()); string _retMsg = BookChoice.ReturnBook(_returnID); Console.WriteLine(_retMsg); break; case 4: Console.Clear(); Console.WriteLine(StringLiterals.BookID); int _removeID = Int32.Parse(Console.ReadLine()); string _removemsg = BookChoice.RemoveBook(_removeID); Console.WriteLine(_removemsg); break; case 5: Console.Clear(); int _getList = 0; Console.WriteLine(StringLiterals.BookListChoice); int _listChoice = Int32.Parse(Console.ReadLine()); Console.Clear(); if (_listChoice == 1) { _getList = 1; } else if (_listChoice == 2) { _getList = 2; } else if (_listChoice == 3) { _getList = 3; } else { Console.WriteLine(StringLiterals.InvalidEntry); } DataTable BookList = BookChoice.GetAllBooks(_getList); foreach (DataRow item in BookList.Rows) { Console.WriteLine(StringLiterals.BookListOut, item[0], item[1], item[3], item[2]); } Console.Write(StringLiterals.PressContinue); Console.ReadKey(); Console.Clear(); break; case 6: historylabel : Console.Clear(); Console.WriteLine(StringLiterals.BookHistoryChoice); _listChoice = Int32.Parse(Console.ReadLine()); DataTable histList = BookChoice.HistoryOfBook(_listChoice); if (_listChoice == 1) { foreach (DataRow item in histList.Rows) { Console.WriteLine(StringLiterals.IssueOut, item[0], item[1], item[2], item[7]); } } else if (_listChoice == 2) { foreach (DataRow item in histList.Rows) { Console.WriteLine(StringLiterals.ReturnOut, item[0], item[1], item[3], item[7]); } } else if (_listChoice == 3) { foreach (DataRow item in histList.Rows) { Console.WriteLine(StringLiterals.AllLog, item[0], item[1], item[2], item[3], item[7]); } } else { Console.Write(StringLiterals.InvalidEntry); goto historylabel; } Console.ReadKey(); Console.Clear(); break; case 7: Console.Clear(); Console.WriteLine(StringLiterals.BookName); string _searcharg = Console.ReadLine(); DataTable _srchList = BookChoice.SearchBook(_searcharg); foreach (DataRow item in _srchList.Rows) { Console.WriteLine(StringLiterals.SearchResult, item[0], item[1], item[3], item[2]); } Console.WriteLine(StringLiterals.PressContinue); Console.ReadKey(); Console.Clear(); break; case 8: Console.Clear(); IAuthentication _userEntry = BALFactory.GetAuthenticationObject(); UserModel _newuser = new UserModel(); Console.WriteLine(StringLiterals.UserEntry); Console.Write(StringLiterals.UserName); _newuser.Name = Console.ReadLine(); Console.Write(StringLiterals.UserEmail); _newuser.Email = Console.ReadLine(); Console.WriteLine(_userEntry.Register(_newuser)); break; case 9: Console.WriteLine(StringLiterals.SignOut); return(1); } return(0); }