From 6fe59a52bdae3e0a0be7c1b7112c8eef49cb2e51 Mon Sep 17 00:00:00 2001 From: xicheny <771832800@qq.com> Date: Tue, 9 Jun 2020 16:48:08 +0800 Subject: [PATCH 1/5] update checkMessage --- WebContent/manager/04judge.jsp | 12 ++++++++++++ WebContent/reader/15checkMessage.jsp | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) create mode 100644 WebContent/manager/04judge.jsp diff --git a/WebContent/manager/04judge.jsp b/WebContent/manager/04judge.jsp new file mode 100644 index 0000000..a3ba920 --- /dev/null +++ b/WebContent/manager/04judge.jsp @@ -0,0 +1,12 @@ +<%@ page language="java" contentType="text/html; charset=UTF-8" + pageEncoding="UTF-8"%> + + + + +Insert title here + + + + + \ No newline at end of file diff --git a/WebContent/reader/15checkMessage.jsp b/WebContent/reader/15checkMessage.jsp index 95d80e4..410bfab 100644 --- a/WebContent/reader/15checkMessage.jsp +++ b/WebContent/reader/15checkMessage.jsp @@ -33,7 +33,7 @@

☆★留言板★☆

<% - String sql = "select CARD_ID,DETAIL,PUBLIC_DATE from message"; + String sql = "select CARD_ID,DETAIL,PUBLIC_DATE from message order by PUBLIC_DATE desc"; ResultSet rs = msg.executeQuery(sql); From ec6f24a519ac13b75a97988c5de9f376737281e2 Mon Sep 17 00:00:00 2001 From: xicheny <771832800@qq.com> Date: Tue, 9 Jun 2020 17:00:58 +0800 Subject: [PATCH 2/5] update web.xml --- WebContent/{WEB-INF => }/web.xml | 0 build/classes/javabean/Admin.class | Bin 6147 -> 6147 bytes build/classes/javabean/Base.class | Bin 2787 -> 2790 bytes src/javabean/Base.java | 2 +- src/javabean/JDBCBean.java | 2 +- 5 files changed, 2 insertions(+), 2 deletions(-) rename WebContent/{WEB-INF => }/web.xml (100%) diff --git a/WebContent/WEB-INF/web.xml b/WebContent/web.xml similarity index 100% rename from WebContent/WEB-INF/web.xml rename to WebContent/web.xml diff --git a/build/classes/javabean/Admin.class b/build/classes/javabean/Admin.class index f4037de7edd2209733cff33a9e346f98f6d145fd..13f2d1771c504571bc4c100480e3ec7e279090d6 100644 GIT binary patch delta 17 YcmZoRXg1(D^>5cc1_lO`jU2zl0Y170t^fc4 delta 17 YcmZoRXg1(D^>5cc1_lPRjU2zl0Y1bAumAu6 diff --git a/build/classes/javabean/Base.class b/build/classes/javabean/Base.class index a3a1edc4ec618e50d952f75e5a0aa893ebab22e4..82f1a14152b4589a5cb1c69f188d5284aec07370 100644 GIT binary patch delta 34 qcmaDX`b?DL)W2Q(7#J8#CUP|KN+jp!>g84z7v|_CXKkF~&jkSO;tcEn delta 31 ncmaDR`dF0X)W2Q(7#JALCUP`!i6-ag>g84z7v^l7?#~4P$sr5y diff --git a/src/javabean/Base.java b/src/javabean/Base.java index d815e50..ca85126 100644 --- a/src/javabean/Base.java +++ b/src/javabean/Base.java @@ -7,7 +7,7 @@ import java.sql.ResultSet; import java.sql.SQLException; public class Base { - private static String driver = "com.mysql.jdbc.Driver"; + private static String driver = "com.mysql.cj.jdbc.Driver"; private static String url = "jdbc:mysql://localhost:3306/library?&useSSL=false&serverTimezone=UTC&userUnicode=true&characterEncoding=UTF-8"; private static String username = "root"; private static String password = "root"; diff --git a/src/javabean/JDBCBean.java b/src/javabean/JDBCBean.java index c8147e3..bb20bb4 100644 --- a/src/javabean/JDBCBean.java +++ b/src/javabean/JDBCBean.java @@ -6,7 +6,7 @@ import java.sql.ResultSet; import java.sql.Statement; public class JDBCBean { - private static String driver = "com.mysql.jdbc.Driver"; + private static String driver = "com.mysql.cj.jdbc.Driver"; private static String url = "jdbc:mysql://localhost:3306/library?&useSSL=false&serverTimezone=UTC&userUnicode=true&characterEncoding=UTF-8"; private static String username = "root"; private static String password = "root"; From c47d51dc551b45c89bdcdbbfa658349309983b5d Mon Sep 17 00:00:00 2001 From: xicheny <771832800@qq.com> Date: Tue, 9 Jun 2020 17:29:52 +0800 Subject: [PATCH 3/5] web.xml and charset --- WebContent/admin/cardborrow.jsp | 2 +- WebContent/manager/03borrowSus.jsp | 2 +- WebContent/reader/index.jsp | 2 +- src/servlet/admin/CardList.java | 53 +++++++++++++++--------------- src/servlet/admin/SortList.java | 19 +++++------ src/servlet/reader/Book.java | 2 +- src/servlet/reader/Borrow.java | 2 +- src/servlet/reader/Illegal.java | 2 +- 8 files changed, 41 insertions(+), 43 deletions(-) diff --git a/WebContent/admin/cardborrow.jsp b/WebContent/admin/cardborrow.jsp index ca00f39..3255d2e 100644 --- a/WebContent/admin/cardborrow.jsp +++ b/WebContent/admin/cardborrow.jsp @@ -1,6 +1,6 @@ <%@page import="javabean.Util"%> <%@page import="java.sql.PreparedStatement"%> -<%@page import="com.mysql.jdbc.Connection"%> +<%@page import="java.sql.Connection"%> <%@page import="javabean.Base"%> <%@page import="java.sql.ResultSet"%> <%@page import="javabean.JDBCBean"%> diff --git a/WebContent/manager/03borrowSus.jsp b/WebContent/manager/03borrowSus.jsp index 2815fc6..28588c5 100644 --- a/WebContent/manager/03borrowSus.jsp +++ b/WebContent/manager/03borrowSus.jsp @@ -135,7 +135,7 @@ }else{ %> <% diff --git a/WebContent/reader/index.jsp b/WebContent/reader/index.jsp index 3048d3f..0400a1d 100644 --- a/WebContent/reader/index.jsp +++ b/WebContent/reader/index.jsp @@ -98,7 +98,7 @@

 状态: <% if(rs.getString("STATUS").equals("1")){ - out.println("正常"); + out.println("可用"); } else{ out.println("挂失"); diff --git a/src/servlet/admin/CardList.java b/src/servlet/admin/CardList.java index 592094f..bed1374 100644 --- a/src/servlet/admin/CardList.java +++ b/src/servlet/admin/CardList.java @@ -2,6 +2,7 @@ package servlet.admin; import java.io.IOException; import java.io.PrintWriter; +import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; @@ -12,8 +13,6 @@ import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; -import java.sql.Connection; - import javabean.Base; import net.sf.json.JSONArray; import net.sf.json.JSONObject; @@ -25,19 +24,19 @@ import net.sf.json.JSONObject; public class CardList extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - resp.setContentType("application/json; charset:utf8"); + resp.setContentType("application/json; charset=utf8"); // 接收参数 String limit = req.getParameter("limit"); String page = req.getParameter("page"); - String condition = (String) req.getParameter("condition"); - String conditionValue = (String) req.getParameter("conditionValue"); - String where = null; // 无限制条件 - if(page == null) { - page = "1"; - } - if(limit == null) { - limit = "10"; - } + String condition = (String) req.getParameter("condition"); + String conditionValue = (String) req.getParameter("conditionValue"); + String where = null; // 无限制条件 + if (page == null) { + page = "1"; + } + if (limit == null) { + limit = "10"; + } Connection connection = null; PreparedStatement pstmt = null; ResultSet resultSet = null; @@ -45,7 +44,7 @@ public class CardList extends HttpServlet { String msg = "error"; int count = 0; String sql = ""; - //String countSql = "" + // String countSql = "" JSONObject jsonObject = new JSONObject(); JSONArray jsonArray = new JSONArray(); JSONObject jsonResult = new JSONObject(); @@ -54,20 +53,20 @@ public class CardList extends HttpServlet { connection = (Connection) Base.getConnection(); sql = "select id,password,reader,rule_id,status from borrow_card"; // where - if(condition != null && conditionValue != null && !condition.isEmpty() && !conditionValue.isEmpty()) { - where = " where "+ condition +" like '%" +conditionValue +"%'"; - sql = sql+where; - } + if (condition != null && conditionValue != null && !condition.isEmpty() && !conditionValue.isEmpty()) { + where = " where " + condition + " like '%" + conditionValue + "%'"; + sql = sql + where; + } // 分页 - sql +=" order by id desc limit ?,?"; + sql += " order by id desc limit ?,?"; pstmt = connection.prepareStatement(sql); try { - pstmt.setInt(1, (Integer.parseInt(page)-1) * Integer.parseInt(limit) ); + pstmt.setInt(1, (Integer.parseInt(page) - 1) * Integer.parseInt(limit)); pstmt.setInt(2, Integer.parseInt(limit)); } catch (NumberFormatException | SQLException e1) { } resultSet = pstmt.executeQuery(); - while(resultSet.next()) { + while (resultSet.next()) { jsonObject.put("id", resultSet.getString("id")); jsonObject.put("password", resultSet.getString("password")); jsonObject.put("reader", resultSet.getString("reader")); @@ -78,16 +77,16 @@ public class CardList extends HttpServlet { // 获取总数 sql = "select count(*) as count from borrow_card "; // 有限制 - if(where!=null) { - sql = sql+where; + if (where != null) { + sql = sql + where; } pstmt = connection.prepareStatement(sql); resultSet = pstmt.executeQuery(); - if(resultSet.next()) { + if (resultSet.next()) { count = resultSet.getInt("count"); } - - if(!jsonArray.isEmpty()) { + + if (!jsonArray.isEmpty()) { code = 0; msg = "成功"; } @@ -96,7 +95,7 @@ public class CardList extends HttpServlet { e.printStackTrace(); } catch (SQLException e) { msg = "sql错误"; - }finally { + } finally { try { Base.closeResource(connection, pstmt, resultSet); } catch (SQLException e) { @@ -109,7 +108,7 @@ public class CardList extends HttpServlet { jsonResult.put("data", jsonArray.toString()); PrintWriter out = resp.getWriter(); out.print(jsonResult.toString()); - //out.print("{\"code\":0,\"msg\":\"\",\"count\":\"234\",\"data\":[{\"id\":\"1\",\"password\":\"23442\",\"reader\":\"minm\",\"rule_id\":\"1\",\"status\":\"2\"}]}"); + // out.print("{\"code\":0,\"msg\":\"\",\"count\":\"234\",\"data\":[{\"id\":\"1\",\"password\":\"23442\",\"reader\":\"minm\",\"rule_id\":\"1\",\"status\":\"2\"}]}"); } } diff --git a/src/servlet/admin/SortList.java b/src/servlet/admin/SortList.java index e0e014e..f731e3e 100644 --- a/src/servlet/admin/SortList.java +++ b/src/servlet/admin/SortList.java @@ -18,14 +18,13 @@ import javabean.Util; import net.sf.json.JSONArray; import net.sf.json.JSONObject; - @WebServlet("/admin/sortList") public class SortList extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { - resp.setContentType("application/json; charset:utf8"); + resp.setContentType("application/json; charset=utf8"); // 接受参数 - + // 准备参数 Connection connection = null; PreparedStatement pstmt = null; @@ -44,16 +43,16 @@ public class SortList extends HttpServlet { sql = "select * from book_sort"; pstmt = connection.prepareStatement(sql); resultSet = pstmt.executeQuery(); - while(resultSet.next()) { + while (resultSet.next()) { jsonObject.put("id", resultSet.getString("id")); jsonObject.put("name", resultSet.getString("name")); jsonObject.put("description", resultSet.getString("description")); jsonArray.add(jsonObject.toString()); } - if(!jsonArray.isEmpty()) { + if (!jsonArray.isEmpty()) { code = 0; - msg = "查询成功"; - }else { + msg = "查询成功"; + } else { msg = "数据为空"; } } catch (ClassNotFoundException e) { @@ -61,15 +60,15 @@ public class SortList extends HttpServlet { e.printStackTrace(); } catch (SQLException e) { msg = "sql错误"; - }finally { + } finally { try { Base.closeResource(connection, pstmt, resultSet); } catch (SQLException e) { msg = "关闭失败"; } } - out.print( Util.jsonResponse(code, msg, jsonArray.toString()) ); - + out.print(Util.jsonResponse(code, msg, jsonArray.toString())); + } } diff --git a/src/servlet/reader/Book.java b/src/servlet/reader/Book.java index fa2e28b..2984b10 100644 --- a/src/servlet/reader/Book.java +++ b/src/servlet/reader/Book.java @@ -47,7 +47,7 @@ public class Book extends HttpServlet { String countSql = ""; // 准备返回参数 int code = 1; - String msg = "error"; + String msg = "无数据"; int count = 0; JSONObject jsonData = new JSONObject(); diff --git a/src/servlet/reader/Borrow.java b/src/servlet/reader/Borrow.java index 5d20ff7..a419b44 100644 --- a/src/servlet/reader/Borrow.java +++ b/src/servlet/reader/Borrow.java @@ -48,7 +48,7 @@ public class Borrow extends HttpServlet { String countSql = ""; // 准备返回参数 int code = 1; - String msg = "error"; + String msg = "无数据"; int count = 0; HttpSession session = req.getSession(); diff --git a/src/servlet/reader/Illegal.java b/src/servlet/reader/Illegal.java index 5217d59..fc8ad5e 100644 --- a/src/servlet/reader/Illegal.java +++ b/src/servlet/reader/Illegal.java @@ -48,7 +48,7 @@ public class Illegal extends HttpServlet { String countSql = ""; // 准备返回参数 int code = 1; - String msg = "error"; + String msg = "无数据"; int count = 0; HttpSession session = req.getSession(); From a4a248b3f1572e539e68f22aced04f23817a0452 Mon Sep 17 00:00:00 2001 From: xicheny <771832800@qq.com> Date: Tue, 9 Jun 2020 23:17:51 +0800 Subject: [PATCH 4/5] maybe finished return book --- WebContent/manager/01nav.jsp | 2 +- WebContent/manager/04judge.jsp | 83 ++++++++++++++++++++++++++++++ WebContent/manager/04judgeSus.jsp | 80 ++++++++++++++++++++++++++++ WebContent/manager/04return.jsp | 55 ++++++++++++++++++-- WebContent/manager/05returnSus.jsp | 25 ++++----- src/javabean/CompareDate.java | 25 +++++++++ 6 files changed, 252 insertions(+), 18 deletions(-) create mode 100644 WebContent/manager/04judgeSus.jsp create mode 100644 src/javabean/CompareDate.java diff --git a/WebContent/manager/01nav.jsp b/WebContent/manager/01nav.jsp index 7717f8a..c9479a2 100644 --- a/WebContent/manager/01nav.jsp +++ b/WebContent/manager/01nav.jsp @@ -36,7 +36,7 @@  图书管理

借阅图书
-
归还图书
+
归还图书
diff --git a/WebContent/manager/04judge.jsp b/WebContent/manager/04judge.jsp index a3ba920..d464854 100644 --- a/WebContent/manager/04judge.jsp +++ b/WebContent/manager/04judge.jsp @@ -5,8 +5,91 @@ Insert title here + + + +

查询图书是否逾期

+
+
+ +
+ +
+
+
+
+ + +
+ +
+
+ + + +
\ No newline at end of file diff --git a/WebContent/manager/04judgeSus.jsp b/WebContent/manager/04judgeSus.jsp new file mode 100644 index 0000000..ea9a38c --- /dev/null +++ b/WebContent/manager/04judgeSus.jsp @@ -0,0 +1,80 @@ +<%@ page import="javabean.DateTime" %> +<%@ page import="javabean.CompareDate" %> +<%@ page import="java.sql.*" %> +<%@ page language="java" contentType="text/html; charset=UTF-8" + pageEncoding="UTF-8"%> + + + + +Insert title here + + + +<% + + String book = request.getParameter("bookid"); + session.setAttribute("book", book); + if(session.getAttribute("manager")!=null){ + DateTime date = new DateTime(); + String now = date.show(); + String bookid = request.getParameter("bookid"); + + String sql="select*from borrow_books where book_id = "+bookid; + ResultSet rs = judge.executeQuery(sql); + String end = ""; + String ret = ""; + String card = ""; + while (rs.next()) { + end = rs.getString("end_date"); + ret = rs.getString("return_date"); + card = rs.getString("card_id"); + } + if(ret==null){ + //CompareDate cd = new CompareDate(); + long n = CompareDate.show(now,end); + //out.println(sql); + //out.println(n); + //out.println(end); + //out.println(now); + session.setAttribute("days", n); + + String sql1="select*from borrow_card where id = "+card; + ResultSet rs1 = judge.executeQuery(sql1); + String rule = ""; + while (rs1.next()) { + rule = rs1.getString("rule_id"); + } + + String sql2="select*from rules where id = "+rule; + ResultSet rs2 = judge.executeQuery(sql2); + String fee = ""; + while (rs2.next()) { + fee = rs2.getString("overtime_fee"); + } + session.setAttribute("fee", fee); + %> + + <% + }else{ + %> + + <% + } + }else{ + %> + + <% + } + +%> + + \ No newline at end of file diff --git a/WebContent/manager/04return.jsp b/WebContent/manager/04return.jsp index a325746..f9978cc 100644 --- a/WebContent/manager/04return.jsp +++ b/WebContent/manager/04return.jsp @@ -1,3 +1,4 @@ +<%@ page import="java.sql.*" %> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> @@ -14,20 +15,68 @@ +

归还图书

+ <% + Object days = session.getAttribute("days"); + Object fee = session.getAttribute("fee"); + int d = Integer.parseInt(days.toString()); + float f = Float.parseFloat(fee.toString()); + String book = session.getAttribute("book").toString(); + String mes = ""; + String mes2 = ""; + float sum = 0; + if(d<0){ + mes = "已逾期"+(-d)+"天"; + sum = d*f*(-1); + mes2 = "罚款"+sum; + } + else{ + mes = "还剩"+d+"天"; + //mes2 = "无需罚款"; + } + session.setAttribute("mes",mes); + session.setAttribute("mes2",mes2); + %> +
- +
+ + <%=session.getAttribute("mes") %>
+ <%=session.getAttribute("mes2") %> +
+

+ value=<%=session.getAttribute("book") %> autocomplete="off" class="layui-input">
+ <% + + String sql2="select*from borrow_books where return_date is null and book_id = "+book; + ResultSet rs2 = judge.executeQuery(sql2); + String end = ""; + while (rs2.next()) { + + + %> + +
+ +
+ >
+
+ +
+ + <%} %>
@@ -69,7 +118,7 @@ laydate.render({ elem : '#date1', type : 'datetime', - format : 'yyyy-M-d H:m:s', + format : 'yyyy-MM-dd H:m:s', min:0, max:0, value: new Date() diff --git a/WebContent/manager/05returnSus.jsp b/WebContent/manager/05returnSus.jsp index 16357db..c87a7f0 100644 --- a/WebContent/manager/05returnSus.jsp +++ b/WebContent/manager/05returnSus.jsp @@ -14,7 +14,7 @@ String book = request.getParameter("bookid"); String date1 = request.getParameter("date1"); String ill = request.getParameter("ill"); - out.println(ill); + //out.println(ill); String managerid = request.getParameter("managerid"); if(session.getAttribute("manager")!=null){ @@ -27,34 +27,31 @@ //String id = session.getAttribute("manager").toString(); int status=Integer.parseInt(rs2.getString("STATUS")); if(status==0){ - String sql = "update borrow_books set RETURN_DATE='" + date1 + "',ILLEGAL='" + ill + "',MANAGER_ID='" + managerid + "' where BOOK_ID="+ book+" order by BORROW_DATE desc limit 1"; + String sql = "update borrow_books set RETURN_DATE='" + date1 + "',ILLEGAL='" + ill + "',MANAGER_ID='" + managerid + "' where BOOK_ID="+ book; + + //out.println(sql); try { int i = ret.executeUpdate(sql); - if (i == 1) { + + + String sql1 = "update borrow_books set RETURN_DATE='" + date1 + "',ILLEGAL='" + ill + "',MANAGER_ID='" + managerid + "' order by BORROW_DATE desc limit 1 "; + int k = ret.executeUpdate(sql1); String sql3="update books set STATUS=1 where ID="+book; ret.executeUpdate(sql3); %> <% - } else { - %> - - <% - } } catch (Exception e) { %> <% } @@ -62,7 +59,7 @@ %> <% } diff --git a/src/javabean/CompareDate.java b/src/javabean/CompareDate.java new file mode 100644 index 0000000..414817d --- /dev/null +++ b/src/javabean/CompareDate.java @@ -0,0 +1,25 @@ +package javabean; + +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Date; + +public class CompareDate { + public static long show(String Str1, String Str2) { + long between = 0; + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + try { + Date date1 = format.parse(Str1); + Date date2 = format.parse(Str2); + between = (date2.getTime() - date1.getTime()); + System.out.println(date1); + System.out.println(date2); + } catch (ParseException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + long days = between / (24 * 60 * 60 * 1000); + return days; + } + +} From 8e0667ed76a3b15908c960047b0d92881844c888 Mon Sep 17 00:00:00 2001 From: xicheny <771832800@qq.com> Date: Wed, 10 Jun 2020 22:12:23 +0800 Subject: [PATCH 5/5] finish login --- WebContent/loginManager.html | 2 +- WebContent/loginReader.html | 11 ++++++++++- WebContent/manager/01nav.jsp | 11 +++++++++++ WebContent/public/image/login.png | Bin 0 -> 13030 bytes WebContent/public/image/manager.png | Bin 0 -> 11398 bytes WebContent/reader/02readerNav.jsp | 6 +++++- WebContent/reader/05book.jsp | 10 +++------- src/servlet/reader/Book.java | 23 +++++++++++++++++++++-- 8 files changed, 51 insertions(+), 12 deletions(-) create mode 100644 WebContent/public/image/login.png create mode 100644 WebContent/public/image/manager.png diff --git a/WebContent/loginManager.html b/WebContent/loginManager.html index 125d32e..0974e38 100644 --- a/WebContent/loginManager.html +++ b/WebContent/loginManager.html @@ -2,7 +2,7 @@ -借阅者登录页面 +图书管理员登录页面 diff --git a/WebContent/loginReader.html b/WebContent/loginReader.html index f25315d..7ceab8a 100644 --- a/WebContent/loginReader.html +++ b/WebContent/loginReader.html @@ -13,7 +13,11 @@ - +
@@ -24,8 +28,13 @@ +
+
+
+ +
+ -