Skip to content
This repository was archived by the owner on Jun 9, 2024. It is now read-only.

Commit 1ea619f

Browse files
committed
Bug fixing
1 parent 149641b commit 1ea619f

3 files changed

Lines changed: 21 additions & 9 deletions

File tree

src/main/java/EJB/FineOracleBean.java

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -191,18 +191,26 @@ public void checkIssueFine(int loanId) {
191191
loanModel loan = (loanModel) loanObject;
192192
Date returnBy = loan.getReturnBy();
193193
Date returnDate = loan.getReturnedOn();
194-
LocalDate returnByLocalDate = returnBy.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
195-
LocalDate returnDateLocalDate = returnDate.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
196-
long daysDifference = ChronoUnit.DAYS.between(returnByLocalDate, returnDateLocalDate);
194+
195+
// Convert Date to java.sql.Date
196+
java.sql.Date returnBySqlDate = new java.sql.Date(returnBy.getTime());
197+
java.sql.Date returnDateSqlDate = new java.sql.Date(returnDate.getTime());
198+
199+
// Calculate the difference in days
200+
long daysDifference = ChronoUnit.DAYS.between(returnBySqlDate.toLocalDate(), returnDateSqlDate.toLocalDate());
201+
202+
// Convert the days difference to an integer
197203
int daysDifferenceInt = Math.toIntExact(daysDifference);
204+
205+
// Calculate the fine cost
198206
double fineCost = 2.5 * daysDifferenceInt;
199207

200208
String insertFine = "INSERT INTO fines"
201209
+ "(LOAN_ID, FINE_AMOUNT, FINE_DATE, PAID)" + "VALUES ("
202-
+ "'" + loanId + "',"
203-
+ "'" + fineCost + "',"
210+
+ loanId + ","
211+
+ fineCost + ","
204212
+ "CURRENT_TIMESTAMP,"
205-
+ "0,";
213+
+ "0)";
206214

207215
Statement stmt2 = null;
208216
try {

src/main/java/EJB/LoanOracleBean.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,13 @@ public void createLoan(loanModel loan) {
2727
calendar.add(Calendar.DAY_OF_MONTH, 14);
2828

2929
Date dateAfterTwoWeeks = calendar.getTime();
30+
Date test = new java.sql.Date(dateAfterTwoWeeks.getTime());
31+
3032
String insertLoan = "INSERT INTO loans"
3133
+ "(book_id, user_id, return_by, returned)" + "VALUES ("
3234
+ "'" + loan.getBookId() + "',"
3335
+ "'" + loan.getUserId() + "',"
34-
+ "'" + dateAfterTwoWeeks + "',"
36+
+ "'" + test + "',"
3537
+ "0,";
3638

3739
Statement stmt = null;

src/main/java/Loans.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,10 @@ protected void doPost(HttpServletRequest request, HttpServletResponse response)
4747

4848
loanModel loan = new loanModel();
4949
out.print("Creating Loan");
50-
loan.setUserId(Integer.parseInt(request.getParameter("user_id")));
51-
loan.setBookId(Integer.parseInt(request.getParameter("user_id")));
50+
out.print(request.getParameter("users"));
51+
out.print(request.getParameter("books"));
52+
loan.setUserId((long) Integer.parseInt(request.getParameter("users")));
53+
loan.setBookId((long) Integer.parseInt(request.getParameter("books")));
5254
loanBean.createLoan(loan);
5355
bookBean.markAsBorrowed(Integer.parseInt(request.getParameter("books")));
5456
}

0 commit comments

Comments
 (0)