-
Notifications
You must be signed in to change notification settings - Fork 0
/
IssueBookDao.java
63 lines (55 loc) · 1.76 KB
/
IssueBookDao.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
import java.sql.*;
public class IssueBookDao {
public static boolean checkBook(String bookcallno){
boolean status=false;
try{
Connection con=DB.getConnection();
PreparedStatement ps=con.prepareStatement("select * from books where callno=?");
ps.setString(1,bookcallno);
ResultSet rs=ps.executeQuery();
status=rs.next();
con.close();
}catch(Exception e){System.out.println(e);}
return status;
}
public static int save(String bookcallno,int studentid,String studentname,String studentcontact){
int status=0;
try{
Connection con=DB.getConnection();
status=updatebook(bookcallno);//updating quantity and issue
if(status>0){
PreparedStatement ps=con.prepareStatement("insert into issuebooks(bookcallno,studentid,studentname,studentcontact) values(?,?,?,?)");
ps.setString(1,bookcallno);
ps.setInt(2,studentid);
ps.setString(3,studentname);
ps.setString(4,studentcontact);
status=ps.executeUpdate();
}
con.close();
}catch(Exception e){System.out.println(e);}
return status;
}
public static int updatebook(String bookcallno){
int status=0;
int quantity=0,issued=0;
try{
Connection con=DB.getConnection();
PreparedStatement ps=con.prepareStatement("select quantity,issued from books where callno=?");
ps.setString(1,bookcallno);
ResultSet rs=ps.executeQuery();
if(rs.next()){
quantity=rs.getInt("quantity");
issued=rs.getInt("issued");
}
if(quantity>0){
PreparedStatement ps2=con.prepareStatement("update books set quantity=?,issued=? where callno=?");
ps2.setInt(1,quantity-1);
ps2.setInt(2,issued+1);
ps2.setString(3,bookcallno);
status=ps2.executeUpdate();
}
con.close();
}catch(Exception e){System.out.println(e);}
return status;
}
}