package com.dao;
import com.core.ConnDB;
import java.util.*;
import com.actionForm.BorrowForm;
import java.sql.*;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import com.actionForm.ReaderForm;
import com.actionForm.BookForm;
import java.util.Date;
public class BorrowDAO {
ConnDB conn = new ConnDB();
public int insert() {
String sql = "INSERT INTO tb_borrow (bookid) vlaues(1) ";
int ret = conn.executeUpdate(sql);
return ret;
}
// *****************************图书借阅******************************
public int insertBorrow(ReaderForm readerForm, BookForm bookForm,
String operator) {
int falg=0;
String sql3 = "select booklet from tb_bookinfo where barcode='"+bookForm.getBarcode()+"'";
ResultSet rs1 = conn.executeQuery(sql3);
int bl = 0;
try {
if (rs1.next()) {
bl = rs1.getInt(1);
}
} catch (SQLException ex) {
}
if(bl==0){
return bl;
}
// 获取系统日期
Date dateU = new Date();
java.sql.Date date = new java.sql.Date(dateU.getTime());
String sql1 = "select t.days from tb_bookinfo b left join tb_booktype t on b.typeid=t.id where b.id="
+ bookForm.getId() + "";
ResultSet rs = conn.executeQuery(sql1);
int days = 0;
try {
if (rs.next()) {
days = rs.getInt(1);
}
} catch (SQLException ex) {
}
// 计算归还时间
String date_str = String.valueOf(date);
String dd = date_str.substring(8, 10);
String DD = date_str.substring(0, 8)
+ String.valueOf(Integer.parseInt(dd) + days);
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
Date currdate = null;
try {
currdate = format.parse(date_str);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("现在的日期是:" + currdate);
Calendar ca = Calendar.getInstance();
ca.add(Calendar.DATE, days);// num为增加的天数,可以改变的
currdate = ca.getTime();
String enddate = format.format(currdate);
System.out.println("增加天数以后的日期:" + enddate);
java.sql.Date backTime = java.sql.Date.valueOf(enddate);
String sql = "Insert into tb_borrow (readerid,bookid,borrowTime,backTime,operator) values("
+ readerForm.getId()
+ ","
+ bookForm.getId()
+ ",'"
+ date
+ "','" + backTime + "','" + operator + "')";
String sql2="update tb_bookinfo set booklet='"+Integer.valueOf(bookForm.getBooklet() -1)+"' where barcode='"+bookForm.getBarcode()+"'";
conn.executeUpdate(sql2);
falg = conn.executeUpdate(sql);
System.out.println("添加图书借阅信息的SQL:" + sql);
conn.close();
return falg;
}
// *************************************图书继借*********************************
public int renew(int id) {
String sql0 = "SELECT bookid FROM tb_borrow WHERE id=" + id + "";
ResultSet rs1 = conn.executeQuery(sql0);
int flag = 0;
try {
if (rs1.next()) {
// 获取系统日期
Date dateU = new Date();
java.sql.Date date = new java.sql.Date(dateU.getTime());
String sql1 = "select t.days from tb_bookinfo b left join tb_booktype t on b.typeid=t.id where b.id="
+ rs1.getInt(1) + "";
ResultSet rs = conn.executeQuery(sql1);
int days = 0;
try {
if (rs.next()) {
days = rs.getInt(1);
}
} catch (SQLException ex) {
}
// 计算归还时间
String date_str = String.valueOf(date);
String dd = date_str.substring(8, 10);
String DD = date_str.substring(0, 8)
+ String.valueOf(Integer.parseInt(dd) + days);
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
Date currdate = null;
try {
currdate = format.parse(date_str);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("现在的日期是:" + currdate);
Calendar ca = Calendar.getInstance();
ca.add(Calendar.DATE, days);// num为增加的天数,可以改变的
currdate = ca.getTime();
String enddate = format.format(currdate);
System.out.println("增加天数以后的日期:" + enddate);
java.sql.Date backTime = java.sql.Date.valueOf(enddate);
String sql = "UPDATE tb_borrow SET backtime='" + backTime
+ "' where id=" + id + "";
flag = conn.executeUpdate(sql);
}
} catch (Exception ex1) {
}
conn.close();
return flag;
}
// *************************************图书归还*********************************
public int back(int id, String operator) {
String sql0 = "SELECT readerid,bookid FROM tb_borrow WHERE id=" + id
+ "";
ResultSet rs1 = conn.executeQuery(sql0);
int flag = 0;
try {
if (rs1.next()) {
// 获取系统日期
Date dateU = new Date();
java.sql.Date date = new java.sql.Date(dateU.getTime());
int readerid = rs1.getInt(1);
int bookid = rs1.getInt(2);
String sql1 = "INSERT INTO tb_giveback (readerid,bookid,backTime,operator) VALUES("
+ readerid
+ ","
+ bookid
+ ",'"
+ date
+ "','"
+ operator + "')";
int ret = conn.executeUpdate(sql1);
String sql4="select booklet from tb_bookinfo where id ='"+bookid+"'";
ResultSet rs2 = conn.executeQuery(sql4);
try {
if (rs2.next()) {
int bl=rs2.getInt(1);
String sql3="update tb_bookinfo set booklet='"+Integer.valueOf(bl +1)+"' where id='"+bookid+"'";
conn.executeUpdate(sql3);
}
} catch (Exception e) {
// TODO: handle exception
}
if (ret == 1) {
String sql2 = "UPDATE tb_borrow SET ifback=1 where id="
+ id + "";
flag = conn.executeUpdate(sql2);
} else {
flag = 0;
}
}
} catch (Exception ex1) {
}
conn.close();
return flag;
}
// *****************************查询图书借阅信息************************
public Collection borrowinfo(String str) {
String sql = "select borr.*,book.bookname,book.price,pub.pubname,bs.name bookcasename,r.barcode from (select * from tb_borrow where ifback=0) as borr left join tb_bookinfo book on borr.bookid=book.id join tb_publishing pub on book.isbn=pub.isbn join tb_bookcase bs on book.bookcase=bs.id join tb_reader r on borr.readerid=r.id where r.barcode='"
+ str + "'";
ResultSet rs = conn.executeQuery(sql);
Collection coll = new ArrayList();
BorrowForm form = null;
try {
while (rs.next()) {
form = new BorrowForm();
form.setId(Integer.valueOf(rs.getInt(1)));
form.setBorrowTime(rs.getString(4));
form.setBackTime(rs.getString(5));
form.setBookName(rs.getString(8));
form.setPrice(Float.valueOf(rs.getFloat(9)));
form.setPubName(rs.getString(10));
form.setBookcaseName(rs.getString(11));
coll.add(form);
}
} catch (SQLException ex) {
System.out.println("借阅信息:" + ex.getMessage());
}
conn.close();
return coll;
}
// *************************到期提醒******************************************
public Collection bremind() {
Date dateU = new Date();
java.sql.Date date = new java.sql.Date(dateU.getTime());
String sql = "select borr.borrowTime,borr.backTime,book.barcode,book.bookname,r.name readername,r.barcode readerbarcode from tb_borrow borr join tb_bookinfo book on book.id=borr.bookid join tb_reader r on r.id=borr.readerid where borr.backTime <='"
+ date + "' and borr.ifback=0";
ResultSet rs = conn.executeQuery(sql);
System.out.println("到时提醒的SQL:" + sql);
Collection coll = new ArrayList();
BorrowForm form = null;
try {
while (rs.next()) {
form = new BorrowForm();
form.setBorrowTime(rs.getString(1));
form.setBackTime(rs.getString(2));
form.setBookBarcode(rs.getString(3));
form.setBookName(rs.getString(4));
form.setReaderName(rs.getString(5));
form.setReaderBarcode(rs.getString(6));
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
基于web的图书馆借阅系统的设计与实现,一整套,工程,数据库文件,word,ppt,直接运行 (194个子文件)
BorrowDAO.class 11KB
Borrow.class 7KB
ManagerDAO.class 7KB
BookDAO.class 7KB
Manager.class 6KB
Book.class 6KB
ReaderDAO.class 5KB
Reader.class 5KB
BorrowForm.class 5KB
ReaderTypeDAO.class 4KB
BookTypeDAO.class 4KB
ReaderType.class 4KB
BookType.class 4KB
BookForm.class 4KB
BookCase.class 4KB
BookCaseDAO.class 4KB
ReaderForm.class 3KB
ConnDB.class 3KB
Library.class 3KB
LibraryDAO.class 3KB
Parameter.class 2KB
ManagerForm.class 2KB
Publishing.class 2KB
LibraryForm.class 2KB
ParameterDAO.class 2KB
SetCharacterEncodingFilter.class 2KB
PublishingDAO.class 2KB
PublishingForm.class 1KB
ChStr.class 1KB
ReaderTypeForm.class 1022B
BookTypeForm.class 1018B
ParameterForm.class 957B
BookCaseForm.class 811B
.classpath 485B
org.eclipse.wst.common.component 460B
org.eclipse.wst.jsdt.ui.superType.container 49B
style.css 3KB
Thumbs.db 35KB
部署要点.doc 199KB
图书馆借阅系统.docx 2.22MB
top_bg.gif 44KB
main_booksort.gif 8KB
borrow_if.gif 7KB
borrowBackRenew_r.gif 7KB
borrowBackRenew.gif 7KB
borrowBackRenew_back.gif 7KB
search.gif 1KB
error_b.gif 1KB
main_readersort_1.gif 1KB
main_booksort_2.gif 701B
more.GIF 634B
item_over.gif 354B
item_out.gif 354B
main_booksort_1.gif 141B
navigation_bg.gif 133B
copyright_t.gif 96B
navigation_bg_bottom.gif 94B
xalan-2.4.0.jar 974KB
freemarker-2.3.8.jar 784KB
struts.jar 537KB
xwork-2.0.4.jar 445KB
mysql-connector-java-3.1.12-bin.jar 436KB
antlr.jar 350KB
standard.jar 343KB
commons-beanutils.jar 184KB
commons-digester.jar 164KB
ognl-2.6.11.jar 164KB
commons-validator.jar 82KB
jakarta-oro.jar 64KB
commons-logging.jar 37KB
commons-fileupload.jar 22KB
jstl.jar 17KB
BorrowDAO.java 12KB
Borrow.java 12KB
ManagerDAO.java 9KB
Book.java 8KB
Manager.java 8KB
Reader.java 7KB
BookDAO.java 7KB
ReaderDAO.java 5KB
ReaderType.java 5KB
BookType.java 5KB
BookCase.java 5KB
BorrowForm.java 4KB
BookForm.java 3KB
ReaderTypeDAO.java 3KB
BookCaseDAO.java 3KB
BookTypeDAO.java 3KB
ReaderForm.java 3KB
Library.java 3KB
ConnDB.java 3KB
Parameter.java 2KB
LibraryDAO.java 2KB
SetCharacterEncodingFilter.java 2KB
LibraryForm.java 2KB
ManagerForm.java 2KB
Publishing.java 2KB
ChStr.java 1KB
ParameterDAO.java 1KB
PublishingForm.java 979B
共 194 条
- 1
- 2
资源评论
xxq121389527
- 粉丝: 325
- 资源: 42
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功