protected void Page_Load(object sender, EventArgs e) { _isbn = Request.QueryString["isbn"]; _borrowerId = Session["user"].ToString(); if (!string.IsNullOrEmpty(_isbn)) { var book = new Book(); book.Find(_isbn); lblIsbn.Text = book.Isbn; lblTitle.Text = book.Title; lblAuthor.Text = book.Author; lblPublisher.Text = book.Publisher; lblPubYear.Text = book.PubYear; lblEdition.Text = book.Edition.ToString(); lblGenre.Text = book.GetGenreDescription(book.GenreCode); var bookCopies = new BookCopyCollection(_isbn).BookCopies; var loans = new LoanCollection(); loans.FilterActiveLoansByIsbn(_isbn); DataTable copyDisplay = new DataTable(); var list = loans.LoanList; copyDisplay.Columns.Add("Barcode", typeof(string)); copyDisplay.Columns.Add("Shelf", typeof(string)); copyDisplay.Columns.Add("LoanType", typeof(string)); copyDisplay.Columns.Add("Status", typeof(string)); List <bool> copyAvailability = new List <bool>(); int copiesAvailable = 0; foreach (var bookCopy in bookCopies) { DataRow row = copyDisplay.NewRow(); row["Barcode"] = bookCopy.Barcode; row["Shelf"] = book.ShelfNo; row["LoanType"] = bookCopy.LoanType; var activeLoan = loans.LoanList.Find(loan => loan.CopyBarcode.Trim() == bookCopy.Barcode.Trim()); var isReservable = activeLoan != null; row["Status"] = !isReservable ? "Available" : activeLoan.LoanDueDate < DateTime.Now ? $"Overdue (was due back {activeLoan.LoanDueDate.ToString("d MMMM")})" : $"Due on {activeLoan.LoanDueDate.ToString("d MMMM yyyy")}"; copyDisplay.Rows.Add(row); copiesAvailable += !isReservable ? 1 : 0; copyAvailability.Add(isReservable && bookCopy.LoanType.Contains("Normal")); } btnReserve.Enabled = copyAvailability.Exists(available => available) && copyDisplay.Rows.Count != 0; btnReserve.Text = copyAvailability.Exists(available => available) && copyDisplay.Rows.Count != 0 ? "Reserve" : "Not Reservable"; lblAvailableCopy.Text = $"{copiesAvailable} copy/copies available at {book.ShelfNo}"; rptBookCopies.DataSource = copyDisplay; rptBookCopies.DataBind(); } }
public IActionResult PutLoanCollection([FromBody] LoanCollection loan) { var model = _context.LoanCollection.Find(loan.Id); model.LoanCollectAmount = loan.LoanCollectAmount; model.LoanCollectDate = loan.LoanCollectDate; _context.SaveChanges(); return(Json(loan)); }
public LoanController() { loanCollection = new LoanCollection(); if (loanCollection.LoanCellection != null) { loans = loanCollection.LoanCellection; } else { loans = new List<Loan>(); } }
public async Task <IActionResult> Update(string id, LoanCollection updatedLoanCollection) { if (!ModelState.IsValid) { return(BadRequest()); } var collection = await _collectionService.GetByIdAsync(id); if (collection == null) { return(NotFound()); } await _collectionService.UpdateAsync(id, updatedLoanCollection); return(NoContent()); }
public async Task UpdateAsync(string id, LoanCollection loanCollection) { await _collection.ReplaceOneAsync(s => s.Id == id, loanCollection); }
public async Task <LoanCollection> CreateAsync(LoanCollection collation) { await _collection.InsertOneAsync(collation); return(collation); }
public IActionResult GetLoanCollection([FromBody] LoanCollection loan) { _context.LoanCollection.Add(loan); _context.SaveChanges(); return(Json(loan)); }