完成登录,合并

pull/1/head
you 5 years ago
commit 355fd97f10

@ -2,7 +2,7 @@
<html>
<head>
<meta charset="UTF-8">
<title>借阅者登录页面</title>
<title>图书管理员登录页面</title>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
<script src="https://cdn.staticfile.org/jquery/2.1.1/jquery.min.js"></script>
<!-- 最新版本的 Bootstrap 核心 CSS 文件 -->

@ -13,7 +13,11 @@
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@3.3.7/dist/css/bootstrap-theme.min.css" integrity="sha384-rHyoN1iRsVXV4nD0JutlnGaslCJuC7uwjduW9SVrLvRYooPp2bWYgmgJQIXwl/Sp" crossorigin="anonymous">
<link rel="stylesheet" href="./public/css/animate.css">
<link rel="stylesheet" href="./public/css/login.css" />
<style>
button:hover{
background-color:#ffd6e7;
}
</style>
</head>
<body>
<div class="container main">
@ -24,8 +28,13 @@
<input type="password" name="psw" class="form-control my_input" placeholder="请输入密码" required="required">
<input type="submit" class="form-control" value="登录" onclick="javascript:void(0);">
</form>
</div>
</div>
<div style="position:fixed; bottom:0; right:0;">
<a href="loginManager.html" target="_blank"><img src="public/image/login.png" width="50px" height="50px"></a><br>
<a href="adminLogin.html" target="_blank"><img src="public/image/manager.png" width="50px" height="50px"></a>
</div>
<script src="./public/js/layer/layer.js"></script>
<script>
$(function(){

@ -15,6 +15,17 @@
<div class="layui-logo">图书馆管理人员页面</div>
<!-- 头部区域可配合layui已有的水平导航 -->
<ul class="layui-nav layui-layout-left">
<li class="layui-nav-item">
<a href="javascript:;">其它系统</a>
<dl class="layui-nav-child">
<dd><a href="../reader/04readerFrame.jsp" target="parent">图书馆首页</a></dd>
<dd><a href="../adminLogin.html" target="parent">系统管理员</a></dd>
</dl>
</li>
</ul>
<ul class="layui-nav layui-layout-right">
<li class="layui-nav-item">
<a href="javascript:;">
@ -36,7 +47,7 @@
<a class="" href="javascript:;"><i class="layui-icon layui-icon-read" style="font-size: 20px; color: lightblue;"></i>&nbsp;图书管理</a>
<dl class="layui-nav-child">
<dd><a href="02borrow.jsp" target="content">借阅图书</a></dd>
<dd><a href="04return.jsp;" target="content">归还图书</a></dd>
<dd><a href="04judge.jsp;" target="content">归还图书</a></dd>
</dl>
</li>

@ -135,7 +135,7 @@
}else{
%>
<script>
alert('借阅证已挂失或注销');
alert('借阅证已挂失!');
window.location.href = "02borrow.jsp";
</script>
<%

@ -0,0 +1,95 @@
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<link rel="stylesheet" href="../public/layui/css/layui.css" media="all">
<script src="../public/layui/layui.js"></script>
<style>
.layui-form-label{
margin-left:20%;
}
</style>
</head>
<body>
<div align="center" style=" margin-top: 2%;"><h1>查询图书是否逾期</h1></div>
<div align="center"
style="margin-left:30%; margin-top: 5%; width: 40%;">
<form class="layui-form layui-form-pane" action="04judgeSus.jsp">
<div class="layui-form-item">
<label class="layui-form-label">图书编号</label>
<div class="layui-input-inline">
<input type="text" name="bookid" lay-verify="required"
placeholder="请输入图书编号" autocomplete="off" class="layui-input"><br>
</div>
</div>
<div class="layui-form-item" align="center">
<button class="layui-btn layui-btn-warm" lay-submit="" lay-filter="demo2">查询</button>
</div>
</form>
<script>
layui
.use(
[ 'form', 'layedit', 'laydate' ],
function() {
var form = layui.form, layer = layui.layer, layedit = layui.layedit, laydate = layui.laydate;
//日期
laydate.render({
elem : '#date1',
type : 'datetime',
format : 'yyyy-M-d H:m:s',
min:0,
max:0,
value: new Date()
});
//创建一个编辑器
var editIndex = layedit
.build('LAY_demo_editor');
//监听提交
form.on('submit(demo1)', function(data) {
layer.alert(JSON.stringify(data.field), {
title : '最终的提交信息'
})
return false;
});
//表单赋值
layui.$('#LAY-component-form-setval').on(
'click', function() {
form.val('example', {
"username" : "贤心" // "name": "value"
,
"password" : "123456",
"interest" : 1,
"like[write]" : true //复选框选中状态
,
"close" : true //开关状态
,
"sex" : "女",
"desc" : "我爱 layui"
});
});
//表单取值
layui.$('#LAY-component-form-getval').on(
'click', function() {
var data = form.val('example');
alert(JSON.stringify(data));
});
});
</script>
</div>
</body>
</html>

@ -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"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<jsp:useBean id="judge" scope="session" class="javabean.JDBCBean"></jsp:useBean>
<%
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);
%>
<script>
window.location.href = "04return.jsp";
</script>
<%
}else{
%>
<script>
alert("该书未借出或不存在!");
window.location.href = "04judge.jsp";
</script>
<%
}
}else{
%>
<script>
alert('请先登录!');
window.parent.location.href = "../loginManager.html";
</script>
<%
}
%>
</body>
</html>

@ -1,3 +1,4 @@
<%@ page import="java.sql.*" %>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
@ -14,20 +15,68 @@
</style>
</head>
<body>
<jsp:useBean id="judge" scope="session" class="javabean.JDBCBean"></jsp:useBean>
<div align="center" style=" margin-top: 2%;"><h1>归还图书</h1></div>
<div align="center"
style="margin-left:30%; margin-top: 5%; width: 40%;">
<%
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);
%>
<form class="layui-form layui-form-pane" action="05returnSus.jsp">
<div><blockquote class="layui-elem-quote layui-quote-nm">
<%=session.getAttribute("mes") %><br>
<%=session.getAttribute("mes2") %>
</blockquote>
</div>
<div class="layui-form-item">
<label class="layui-form-label">图书编号</label>
<div class="layui-input-inline">
<input type="text" name="bookid" lay-verify="required"
placeholder="请输入图书编号" autocomplete="off" class="layui-input"><br>
value=<%=session.getAttribute("book") %> autocomplete="off" class="layui-input"><br>
</div>
</div>
<%
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()) {
%>
<div class="layui-form-item">
<label class="layui-form-label">截止日期</label>
<div class="layui-input-inline">
<input type="text" name="end" autocomplete="off"
class="layui-input" value=<%=rs2.getString("end_date") %>><br>
</div>
</div>
<%} %>
<div class="layui-form-item">
<label class="layui-form-label">归还日期</label>
<div class="layui-input-inline">
@ -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()

@ -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);
%>
<script>
alert('归还成功!');
window.location.href = "04return.jsp";
window.location.href = "04judge.jsp";
</script>
<%
} else {
%>
<script>
alert('归还未成功!');
window.location.href = "04return.jsp";
</script>
<%
}
} catch (Exception e) {
%>
<script>
alert('归还未成功!');
window.location.href = "04return.jsp";
window.location.href = "04judge.jsp";
</script>
<%
}
@ -62,7 +59,7 @@
%>
<script>
alert('该图书未借出!');
window.location.href = "04return.jsp";
window.location.href = "04judge.jsp";
</script>
<%
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

@ -13,9 +13,12 @@
<!-- jQuery (Bootstrap 的所有 JavaScript 插件都依赖 jQuery所以必须放在前边) -->
<script src="../js/jquery.min.js"></script>
<script src="../js/bootstrap.min.js"></script>
<style>
</style>
</head>
<body>
<nav class="navbar navbar-inverse " role="navigation">
<nav class="navbar navbar-inverse" role="navigation">
<div class="container-fluid">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
@ -34,6 +37,7 @@
<li><p style="margin-top:25%;color:grey;">借阅者页面<span class="sr-only">(current)</span></p></li>
</ul>
<ul class="nav navbar-nav navbar-right">
<li><a href="javascript:;">
<%if(session.getAttribute("reader")==null){

@ -41,21 +41,17 @@
<option value="id">图书编号</option>
<option value="name">图书名称</option>
<option value="author">作者</option>
<option value="library_id">图书馆</option>
<option value="sort_id">分类</option>
<option value="position">位置</option>
<option value="status">状态</option>
<option value="description">描述</option>
</select>
</div>
<div class="layui-inline">
<input class="layui-input" id="conditionValue" name="conditionValue" id="demoReload" autocomplete="off">
</div>
<button class="layui-btn layui-bg-blue" name="condition" data-type="reload" lay-event="search">搜索</button>
</script>
<%
%>
<script>
@ -99,7 +95,7 @@
case 'search':
var conditionValue = $('#conditionValue');
var condition = $('#condition');
// 进行搜索,重新渲染
tableIns.reload({
where: { //设定异步数据接口的额外参数,任意设

@ -33,7 +33,7 @@
<jsp:useBean id="msg" scope="session" class="javabean.JDBCBean"></jsp:useBean>
<div align="center"><h3 style="color:#F08080;">☆★留言板★☆</h3></div>
<%
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);

@ -98,7 +98,7 @@
<p><span class="glyphicon glyphicon-star-empty">&nbsp;状态:
<%
if(rs.getString("STATUS").equals("1")){
out.println("正常");
out.println("可用");
}
else{
out.println("挂失");

Binary file not shown.

@ -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";

@ -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;
}
}

@ -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";

@ -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;
@ -29,15 +28,15 @@ public class CardList extends HttpServlet {
// 接收参数
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\"}]}");
}
}

@ -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");
// 接受参数
// 准备参数
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()));
}
}

@ -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();
@ -67,11 +67,30 @@ public class Book extends HttpServlet {
pstmt.setInt(2, Integer.parseInt(limit));
resultSet = pstmt.executeQuery();
while (resultSet.next()) {
String library = resultSet.getString("library_id");
String sql1 = "select * from library where ID =" + library;
PreparedStatement pstmt1 = connection.prepareStatement(sql1);
ResultSet rs1 = pstmt1.executeQuery();
String lib = "";
while (rs1.next()) {
lib = rs1.getString("name");
}
String sortid = resultSet.getString("sort_id");
String sql2 = "select * from book_sort where ID =" + sortid;
PreparedStatement pstmt2 = connection.prepareStatement(sql2);
ResultSet rs2 = pstmt2.executeQuery();
String sort = "";
while (rs2.next()) {
sort = rs2.getString("name");
}
jsonData.put("id", resultSet.getString("id"));
jsonData.put("name", resultSet.getString("name"));
jsonData.put("author", resultSet.getString("author"));
jsonData.put("library_id", resultSet.getString("library_id"));
jsonData.put("sort_id", resultSet.getString("sort_id"));
jsonData.put("library_id", lib);
jsonData.put("sort_id", sort);
jsonData.put("position", resultSet.getString("position"));
jsonData.put("status", resultSet.getString("status"));
jsonData.put("description", resultSet.getString("description"));

@ -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();

@ -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();

Loading…
Cancel
Save