public static bool isBookLoanExceeds30Days(Book book, ref LibraryBooksOperationResult result, InfoRequest infoReq) { if (book.LoanDate.Value.AddDays(30) < infoReq.ReturnDate) { result.Message = ValidationMessages.BookLoanExceeds30Days; return true; } return false; }
public static bool isBookAlreadyRegistered(Book book, ref LibraryBooksOperationResult result) { if (book != null) { result.Message = ValidationMessages.BookAlreadyRegistered; return true; } return false; }
public static bool isBookLoaned(Book book, ref LibraryBooksOperationResult result) { if (book != null && book.IsLoaned.HasValue && book.IsLoaned.Value) { result.Message = ValidationMessages.BookAlreadyLoaned; return true; } return false; }
public static bool isBookNull(Book book, ref LibraryBooksOperationResult result) { if (book == null) { result.Message = ValidationMessages.BookNotExist; return true; } return false; }
private LibraryBooksOperationResult validate(InfoRequest infoReq, Book book) { var result = new LibraryBooksOperationResult(); result.Success = !LibraryValidator.isBookNull(book, ref result) && LibraryValidator.isBookLoaned(book, ref result) && LibraryValidator.isBookLoanExceeds30Days(book, ref result, infoReq); return result; }
private void Return(InfoRequest infoRequest, Book book) { book.IsLoaned = false; book.ReturnDate = infoRequest.ReturnDate; this._bookRepository.Edit(book); }