📄 frmborrow.java
字号:
import java.awt.*;
import javax.swing.*;
import javax.swing.border.TitledBorder;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyVetoException;
import java.beans.VetoableChangeListener;
import java.beans.PropertyChangeListener;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.swing.event.CaretEvent;
import javax.swing.event.CaretListener;
public class FrmBorrow extends JDialog implements ActionListener {
FrmMain pr;
public FrmBorrow(Frame owner, String title, boolean modal) {
super(owner, title, modal);
Gload.checkLogin(this);
pr = (FrmMain)owner;
try {
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
jbInit();
this.setBounds((Gload.de.width - 400)/2, (Gload.de.height-340)/2, 400, 340);
this.setResizable(false);
} catch (Exception exception) {
exception.printStackTrace();
}
}
public FrmBorrow() {
this(new Frame(), "FrmBorrow", false);
}
private void jbInit() throws Exception {
this.getContentPane().setLayout(null);
jLabel1.setText("书号:");
jButton1.setText("查 看");
jButton2.setText("借 出");
jLabel1.setBounds(new Rectangle(6, 4, 37, 29));
jButton1.setBounds(new Rectangle(309, 5, 78, 22));
jButton1.addActionListener(this);
jButton2.setBounds(new Rectangle(310, 34, 77, 21));
jButton2.setEnabled(false);
jButton2.addActionListener(this);
t1.setBorder(titledBorder1);
t1.setBounds(new Rectangle(11, 69, 375, 170));
t2.setBorder(titledBorder2);
t2.setBounds(new Rectangle(13, 243, 371, 62));
t1.setEditable(false);
t2.setEditable(false);
t1.setBackground(this.getContentPane().getBackground());
t2.setBackground(this.getContentPane().getBackground());
this.getContentPane().add(jLabel1);
jTextField1.setBounds(new Rectangle(48, 7, 253, 20));
jTextField2.setBounds(new Rectangle(48, 34, 255, 21));
jLabel2.setText("读者号:");
jLabel2.setBounds(new Rectangle(4, 33, 53, 21));
this.getContentPane().add(jTextField2);
this.getContentPane().add(jLabel2);
this.getContentPane().add(jTextField1);
this.getContentPane().add(jButton1);
this.getContentPane().add(jButton2);
this.getContentPane().add(t1);
this.getContentPane().add(t2);
}
JLabel jLabel1 = new JLabel();
JTextField jTextField1 = new JTextField();
JLabel jLabel2 = new JLabel();
JTextField jTextField2 = new JTextField();
JButton jButton1 = new JButton();
JButton jButton2 = new JButton();
JTextArea t1 = new JTextArea();
TitledBorder titledBorder1 = new TitledBorder("图书信息");
JTextArea t2 = new JTextArea();
TitledBorder titledBorder2 = new TitledBorder("读者信息");
public void actionPerformed(ActionEvent e) {
Object o = e.getSource();
if (o.equals(jButton2)) {
this.jButton2_actionPerformed(e);
} else if (o.equals(this.jButton1)) {
this.jButton1_actionPerformed(e);
}
}
public void jButton1_actionPerformed(ActionEvent e) {
String s1, s2;
s1 = Gload.getText(this.jTextField1);
s2 = Gload.getText(this.jTextField2);
if (s1.equals("")) {
Gload.MSG(this, "请输入书号!");
return;
}
try { this.bid = Integer.parseInt(s1); }
catch(Exception e1) {
Gload.MSG(this, "书号不正确!");
return;
}
if (s2.equals("")) {
Gload.MSG(this, "请输入读者号!");
return;
}
try {
this.rid = Integer.parseInt(s2);
} catch(Exception e1) {
Gload.MSG(this, "读者号不正确!");
return;
}
ResultSet rs = Conn.query("select id from 图书信息 where id=" + s1);
try {
if (!rs.next()) {
Gload.MSG(this, "不存在书号为 " + s1 + " 的图书!");
rs.close();
return;
}
rs.close();
} catch (SQLException e1) { e1.printStackTrace(); }
rs = Conn.query("select id from 读者 where id=" + s2);
try {
if (!rs.next()) {
Gload.MSG(this, "不存在读者号为 " + s1 + " 的读者!");
rs.close();
return;
}
rs.close();
} catch (SQLException e1) { e1.printStackTrace(); }
this.t1.setText(Conn.getBookInfo(s1));
this.t2.setText(Conn.getReader(s2));
this.jButton2.setEnabled(true);
}
private int bid = -1, rid = -1;
public void jButton2_actionPerformed(ActionEvent e) {
//点击借出
this.jButton2.setEnabled(false);
ResultSet rs = Conn.query("select id from 图书状态 where 库存>0 and 书号=" + bid);
try {
if (!rs.next()) {
Gload.MSG(this, "书号为 " + bid + " 的图书已全部借出,没有库存了!");
rs.close();
return;
}
rs.close();
} catch (SQLException e1) { e1.printStackTrace(); }
rs = Conn.query("select id from 借书 where 书号=" + bid + " and 读者号=" + rid);
try {
if (rs.next()) {
Gload.MSG(this, "该读者已借了一本该书,不能再借此书!");
rs.close();
return;
}
rs.close();
} catch (SQLException e1) { e1.printStackTrace(); }
if (Gload.YES == Gload.Confirm(this, "确定借出吗?")) {
Conn.exec("insert into 借书(书号,读者号) values(" + bid + "," + rid + ")");
Conn.exec("insert into 运行记录(书号, 操作, 备注) values(" + bid + ", '借出', '读者号:" + rid + "')");
Conn.exec("update 图书状态 set 库存=库存-1, 借出=借出+1 where 书号=" + bid);
Gload.MSG(this, "操作成功!");
}
pr.initBook();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -