📄 borrowbook.java
字号:
package book;
import database.DataBase;
import database.DateTime;
import java.sql.ResultSet;
import reader.Readers;
import admin.admin;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
/**
* <p>Title: library</p>
* <p>Description: library</p>
* <p>Copyright: Copyright (c) 2007</p>
* <p>Company: </p>
* @author nino
* @version 0.1
*/
public class borrowBook {
private String errMsg;
private String readerSN;
private String bookSN;
private javax.servlet.http.HttpServletRequest request; //建立页面请求
private javax.servlet.http.HttpSession session; //接收页面SESSION
public String getErrMsg() {
return errMsg;
}
public String getBookSN() {
return bookSN;
}
public String getReaderSN() {
return readerSN;
}
public boolean borrowBook(HttpServletRequest res, HttpSession ses) throws
Exception {
DataBase db = new DataBase();
//获取页面请求信息
request = res;
String newBookSN = db.toSql(request.getParameter("bookSN"));
String newReaderSN = db.toSql(request.getParameter("readerSN"));
//从SESSION中获取管理员ID
session = ses;
String supervisor = db.toSql( (String) session.getAttribute("supervisor"));
//关闭数据库连接
db.close();
admin admin = new admin();
if (admin.isAdminBB(supervisor)) {
Readers reader = new Readers();
if (reader.isReaderExist(newReaderSN)) {
if (!reader.isReaderLocked(newReaderSN)) {
if (!reader.isExpReader(newReaderSN)) {
if (!reader.isBBRL(newReaderSN)) {
Books book = new Books();
if (!book.isExpBook(newReaderSN)) {
if (book.isBookExist(newBookSN)) {
if (book.isBookIn(newBookSN)) {
if (book.canBorrow(newReaderSN, newBookSN)) {
return true;
}
else {
errMsg = "编号为" + newReaderSN + "的读者不够权限借阅编号为" + newBookSN +
"的图书!";
return false;
}
}
else {
errMsg = "编号为" + newBookSN + "的图书不在库,已借出!";
return false;
}
}
else {
errMsg = "编号为" + newBookSN + "的图书不存在!";
return false;
}
}
else {
errMsg = "编号为" + newReaderSN + "的读者有逾期未归还的图书,请先归还图书后再借阅新书!";
return false;
}
}
else {
errMsg = "编号为" + newReaderSN + "的读者的图书借阅数量已满!";
return false;
}
}
else {
errMsg = "编号为" + newReaderSN + "的读者借阅有效期已过期!";
return false;
}
}
else {
errMsg = "编号为" + newReaderSN + "的读者被已锁定!";
return false;
}
}
else {
errMsg = "编号为" + newReaderSN + "的读者编号不存在!";
return false;
}
}
else {
errMsg = "编号为" + supervisor + "的管理员没有权限进行借阅图书的操作!";
return false;
}
}
public boolean exeBorrow(HttpServletRequest res) throws Exception {
try {
DataBase db = new DataBase();
DateTime dt = new DateTime();
//获取页面请求信息
request = res;
String newBookSN = db.toSql(request.getParameter("bookSN"));
String newReaderSN = db.toSql(request.getParameter("readerSN"));
//执行借阅
//获取该读者信息
db.prepareStatement(
"select 读者姓名,借阅权限 from Reader where 读者编号 = ?");
db.setString(1, db.toSql(newReaderSN));
ResultSet rs = db.executeQuery();
rs.next();
String newReaderName = rs.getString(1);
String newReaderPower = rs.getString(2);
db.prepareStatement(
"select 借阅期限 from ReaderLevel where 借阅权限 = ?");
db.setString(1, newReaderPower);
rs = db.executeQuery();
rs.next();
int newRPBT = Integer.parseInt(rs.getString(1));
rs.close();
//计算还书日期
String newCD = db.toSql(dt.getDate());
String newRD = db.toSql(dt.gainMonth(newRPBT));
//将借阅信息写入
db.prepareStatement(
"insert into Borrow values(?,?,?,?,?,'0')");
db.setString(1, newBookSN);
db.setString(2, newReaderSN);
db.setString(3, newReaderName);
db.setString(4, newCD);
db.setString(5, newRD);
db.executeUpdate();
//将图书不在库信息写入
db.prepareStatement(
"update Book set 是否在库 = '0' where 图书编号 = ?");
db.setString(1, newBookSN);
db.executeUpdate();
//关闭数据库连接
db.close();
return true;
}
catch (Exception e) {
return false;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -