private void DisplayBorrowerDeails(int bookId) { try { BusinessLogicDBOperations dbOperations = new BusinessLogicDBOperations(); Borrower borrower = dbOperations.RetrieveBookBorrowerDetails(bookId); if (borrower != null) { lblName.Text = borrower.Name; lblMobile.Text = borrower.MobileNo; lblReqReturnDate.Text = borrower.ReturnDate.ToString(); lblReturnDate.Text = DateTime.Now.ToString(); hdnField.Value = borrower.Book.ModifiedOn.ToJson(); double penaltyAmount = Utilities.Instance.CalcultePenaltyAmount(DateTime.Now, borrower.ReturnDate); lblPenaltyAmount.Text = String.Format("{0:#,##0.00}", penaltyAmount); } else { btnCheckIn.Enabled = false; Utilities.Instance.SetPageMessage("Book is either already checked in or was not found.", Utilities.Severity.Error, Page.Master); return; } } catch (Exception ex) { btnCheckIn.Enabled = false; Utilities.Instance.SetPageMessage(ex.Message, Utilities.Severity.Error, Page.Master); } }
private void DisplayBookDetails(int bookId) { BusinessLogicDBOperations dbOp = new BusinessLogicDBOperations(); try { Book book = dbOp.RetrieveBookDetails(bookId); lblBookTitle.Text = book.Title; lblISBN.Text = book.ISBN; lblPrice.Text = book.CoverPrice.ToString("0.##", CultureInfo.InvariantCulture); lblPublishYear.Text = book.PublishYear; lblStatus.Text = book.CheckOutStatusDescription; if (lblStatus.Text == "Check out") { Borrower borrower = dbOp.RetrieveBookBorrowerDetails(bookId); lblCurrentBorrower.Text = borrower.Name; } else { lblCurrentBorrower.Text = "None"; } } catch (Exception ex) { Utilities.Instance.SetPageMessage(ex.Message, Utilities.Severity.Error, Page.Master); return; } }
private double calcultePenaltyAmount(DateTime ActualReturnDate, DateTime ReturnDate) { // if ReturnDate is greater and equal today as per i understand no fine BusinessLogicDBOperations dbOperations = new BusinessLogicDBOperations(); List <GazetteHoliday> holidays = dbOperations.RetriveGazetteHoliday(); if (ReturnDate.Date >= DateTime.Now.Date) { return(0); } else { // how days exceed total days * planty amount which is 5 double lateDays = 0; lateDays = (DateTime.Now.Date - ReturnDate.Date).TotalDays; //while (ReturnDate != DateTime.Now.Date) //{ // if (!(ReturnDate.DayOfWeek == DayOfWeek.Saturday || ReturnDate.DayOfWeek == DayOfWeek.Sunday || Utilities.Utilities.CheckHoliday(ReturnDate, holidays))) // { // lateDays++; // } // ReturnDate = ReturnDate.AddDays(1); //} return(lateDays * 5); } }
/// <summary> /// This function is responsible for populating the book history grid. /// </summary> /// <param name="bookID">Book ID</param> private void displayBookCheckOutHistory(int bookID) { BusinessLogicDBOperations dbOperations = new BusinessLogicDBOperations(); List <Borrower> borrowers = dbOperations.RetrieveBookCheckOutHistory(bookID); HistoryList.DataSource = borrowers; HistoryList.DataBind(); }
/// <summary> /// Check Out button event handler /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void btnCheckOut_Click(object sender, EventArgs e) { int selectedBookID = 0; if (!String.IsNullOrWhiteSpace(Request.QueryString["bookID"])) { selectedBookID = int.Parse(Request.QueryString["bookID"]); } else { Utilities.Utilities.setPageMessage("Please select a book.", Utilities.Utilities.severity.error, Page.Master); return; } BusinessLogicDBOperations dbOperations = new BusinessLogicDBOperations(); string bookName = txtName.Text; string mobileNo = txtMobile.Text; string nationalID = txtNationalID.Text; DateTime checkOutDate = DateTime.Parse(lblCheckOutDate.Text); DateTime returnDate = DateTime.Parse(lblReturnDate.Text); var book = dbOperations.RetrieveBooksList().Where(x => x.BookID == selectedBookID).FirstOrDefault(); if (book != null && book.CheckOutStatusID == 1) // CheckOutStatusID 1 is check in { int result = dbOperations.CheckOut(selectedBookID, bookName, mobileNo, nationalID, checkOutDate, returnDate ); if (result == 0) { Utilities.Utilities.setPageMessage("Encountered an error while checking out.", Utilities.Utilities.severity.error, Page.Master); return; } Utilities.Utilities.setPageMessage("Book has been checked out in the name of " + txtName.Text, Utilities.Utilities.severity.info, Page.Master); displayBookCheckOutHistory(selectedBookID); } else { Utilities.Utilities.setPageMessage("Book is already checkout", Utilities.Utilities.severity.error, Page.Master); } }
private void DisplayBookInfo(int BookID) { try { BusinessLogicDBOperations dbOperations = new BusinessLogicDBOperations(); Book book = dbOperations.RetrieveBooksList(BookID).Where(x => x.BookID == BookID).FirstOrDefault(); if (book != null) { lblBookTitle.Text = book.Title; lblCheckInStatus.Text = book.CheckOutStatusDescription; lblCoverPrice.Text = book.CoverPrice.ToString("N0"); lblISBN.Text = book.ISBN; lblName.Text = ""; lblPublishYear.Text = book.PublishYear; //Get book borrower history BusinessLogicDBOperations dbBorrowers = new BusinessLogicDBOperations(); List <Borrower> borrowers = dbOperations.RetrieveBookCheckOutHistory(BookID); if (book.CheckOutStatusID == 1) { Borrower borrower = borrowers.LastOrDefault(); if (borrower != null) { lblName.Text = borrower.Name; } } else { lblName.Text = "Book is checked in."; } HistoryList.DataSource = borrowers; HistoryList.DataBind(); } else { Utilities.Utilities.setPageMessage("Book is either already checked in or was not found.", Utilities.Utilities.severity.error, Page.Master); return; } } catch (Exception ex) { BusinessLogicDBOperations dbOperations = new BusinessLogicDBOperations(); dbOperations.ErrorLog(ex.Message, Request.Url.AbsoluteUri); } }
private void DisplayBookDetails(int bookId) { BusinessLogicDBOperations dbOp = new BusinessLogicDBOperations(); try { var bookInfo = dbOp.RetrieveBookDetails(bookId); hdnField.Value = bookInfo.ModifiedOn.ToJson(); } catch (Exception ex) { Utilities.Instance.SetPageMessage(ex.Message, Utilities.Severity.Error, Page.Master); return; } }
/// <summary> /// This function is responsible for populating the book history grid. /// </summary> /// <param name="bookId">Book ID</param> private void DisplayBookCheckOutHistory(int bookId) { try { BusinessLogicDBOperations dbOperations = new BusinessLogicDBOperations(); List <Borrower> borrowers = dbOperations.RetrieveBookCheckOutHistory(bookId); HistoryList.DataSource = borrowers; HistoryList.DataBind(); } catch (Exception ex) { Utilities.Instance.SetPageMessage(ex.Message, Utilities.Severity.Error, Page.Master); } }
protected void BtnCheckIn_Click(object sender, EventArgs e) { btnCheckIn.Enabled = false; BusinessLogicDBOperations dbOperations = new BusinessLogicDBOperations(); int selectedBookID = 0; if (!String.IsNullOrWhiteSpace(Request.QueryString["bookID"])) { selectedBookID = int.Parse(Request.QueryString["bookID"]); DateTime dt; try { dt = hdnField.Value.FromJson <DateTime>(); } catch (Exception) { Utilities.Instance.SetPageMessage("Either the book is not available or already checked out. Please try to refresh again", Utilities.Severity.Error, Page.Master); return; } int result = dbOperations.CheckIn(selectedBookID, dt); switch (result) { case 0: { Utilities.Instance.SetPageMessage("There was an error occured. Request can not be fulfil at the current movement.", Utilities.Severity.Error, Page.Master); return; } case 404: { Utilities.Instance.SetPageMessage("Either the book is already checked in or was not found.", Utilities.Severity.Error, Page.Master); return; } default: Utilities.Instance.SetPageMessage("Book has been checked in successfully.", Utilities.Severity.Info, Page.Master); break; } } else { Utilities.Instance.SetPageMessage("The resource which you are trying to access is not available.", Utilities.Severity.Error, Page.Master); } }
private void DisplayBooks() { BusinessLogicDBOperations dbOp = new BusinessLogicDBOperations(); try { BooksList.DataSource = Books; BooksList.DataBind(); } catch (Exception ex) { BusinessLogicExceptionOperations logger = new BusinessLogicExceptionOperations(); logger.SaveException(ex.Message); base.SetPageMessage(ex.Message, Utilities.Utilities.Severity.error); return; } }
/// <summary> /// This function calculates the date after specified number of work/business days /// Friday and Saturday are treated as off days. /// </summary> /// <param name="days">Business days</param> /// <returns>Target Date</returns> public static DateTime getDateAfterSpecifiedBusinessDays(int days) { BusinessLogicDBOperations dbOperations = new BusinessLogicDBOperations(); List <GazetteHoliday> holidays = dbOperations.RetriveGazetteHoliday(); DateTime TargetDate = DateTime.Now; for (int i = 0; i < 15;) { if (!(TargetDate.DayOfWeek == DayOfWeek.Saturday || TargetDate.DayOfWeek == DayOfWeek.Sunday || CheckHoliday(TargetDate, holidays))) { i++; } TargetDate = TargetDate.AddDays(1); } return(TargetDate); }
private void displayBooks() { BusinessLogicDBOperations dbOp = new BusinessLogicDBOperations(); try { List <Book> books = dbOp.RetrieveBooksList(); BooksList.DataSource = books; BooksList.DataBind(); } catch (Exception ex) { Utilities.Utilities.setPageMessage(ex.Message, Utilities.Utilities.severity.error, Page.Master); return; } }
private void DisplayBooks() { try { BusinessLogicDBOperations dbOp = new BusinessLogicDBOperations(); List <Book> books = dbOp.RetrieveBooksList(); BooksList.DataSource = books; BooksList.DataBind(); } catch (Exception ex) { Utilities.Instance.SetPageMessage(ex.Message, Utilities.Severity.Error, Page.Master); btnCheckIn.Enabled = false; btnCheckOut.Enabled = false; btnDetails.Enabled = false; return; } }
private void displayBorrowerDeails(int BookID) { BusinessLogicDBOperations dbOperations = new BusinessLogicDBOperations(); Borrower borrower = dbOperations.RetrieveBookBorrowerDetails(BookID); if (borrower != null) { lblName.Text = borrower.Name; lblMobile.Text = borrower.MobileNo; lblReqReturnDate.Text = borrower.ReturnDate.ToShortTimeString(); lblReturnDate.Text = DateTime.Now.ToString(); double penaltyAmount = calcultePenaltyAmount(DateTime.Now, borrower.ReturnDate); lblPenaltyAmount.Text = String.Format("{0:#,##0.00}", penaltyAmount); } else { Utilities.Utilities.setPageMessage("Book is either already checked in or was not found.", Utilities.Utilities.severity.error, Page.Master); return; } }
private void displayBookDeails(int BookID) { BusinessLogicDBOperations dbOperations = new BusinessLogicDBOperations(); Book book = dbOperations.RetrieveBookDetails(BookID); if (book != null) { lblTitle.Text = book.Title; lblISBN.Text = book.ISBN; lblpublishDate.Text = book.PublishYear; lblcoverprice.Text = book.CoverPrice.ToString(); lblcheckoutstatus.Text = book.CheckOutStatusDescription; // double penaltyAmount = calcultePenaltyAmount(DateTime.Now, borrower.ReturnDate); // lblPenaltyAmount.Text = String.Format("{0:#,##0.00}", penaltyAmount); } else { Utilities.Utilities.setPageMessage("Book is either already checked in or was not found.", Utilities.Utilities.severity.error, Page.Master); return; } }
protected void btnCheckIn_Click(object sender, EventArgs e) { BusinessLogicDBOperations dbOperations = new BusinessLogicDBOperations(); int selectedBookID = 0; if (!String.IsNullOrWhiteSpace(Request.QueryString["bookID"])) { selectedBookID = int.Parse(Request.QueryString["bookID"]); } else { } int result = dbOperations.CheckIn(selectedBookID); if (result == 0) { Utilities.Utilities.setPageMessage("Encountered an error while checking in.", Utilities.Utilities.severity.error, Page.Master); return; } Utilities.Utilities.setPageMessage("Book has been checked in successfully.", Utilities.Utilities.severity.info, Page.Master); }
/// <summary> /// Check Out button event handler /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void BtnCheckOut_Click(object sender, EventArgs e) { btnCheckOut.Enabled = false; int selectedBookID = 0; if (!String.IsNullOrWhiteSpace(Request.QueryString["bookID"])) { selectedBookID = int.Parse(Request.QueryString["bookID"]); BusinessLogicDBOperations dbOperations = new BusinessLogicDBOperations(); string bookName = txtName.Text; string mobileNo = txtMobile.Text; string nationalID = txtNationalID.Text; DateTime checkOutDate = DateTime.Parse(lblCheckOutDate.Text); DateTime returnDate = DateTime.Parse(lblReturnDate.Text); DateTime dt; try { dt = hdnField.Value.FromJson <DateTime>(); } catch (Exception) { Utilities.Instance.SetPageMessage("Either the book is not available or already checked out. Please try to refresh again", Utilities.Severity.Error, Page.Master); return; } int result = dbOperations.CheckOut(selectedBookID, bookName, mobileNo, nationalID, checkOutDate, returnDate, dt ); switch (result) { case 0: { Utilities.Instance.SetPageMessage("There was an error occured. Request can not be fulfil at the current movement.", Utilities.Severity.Error, Page.Master); return; } case 404: { Utilities.Instance.SetPageMessage("Either the book is not available or already checked out", Utilities.Severity.Error, Page.Master); return; } default: { Utilities.Instance.SetPageMessage("Book has been checked out in the name of " + txtName.Text, Utilities.Severity.Info, Page.Master); DisplayBookCheckOutHistory(selectedBookID); break; } } } else { Utilities.Instance.SetPageMessage("The resource you are trying to access is not available", Utilities.Severity.Error, Page.Master); } }