diff --git a/src/com/msksbr/MainFrm/MenuBar.java b/src/com/msksbr/MainFrm/MenuBar.java index 0e5b17f..84630f0 100644 --- a/src/com/msksbr/MainFrm/MenuBar.java +++ b/src/com/msksbr/MainFrm/MenuBar.java @@ -1,12 +1,9 @@ package com.msksbr.MainFrm; +import com.msksbr.MainFrm.MenuItemDiaog.*; import com.msksbr.MainFrm.MenuItemDiaog.Adder.BookAdder; import com.msksbr.MainFrm.MenuItemDiaog.Adder.RentAdder; import com.msksbr.MainFrm.MenuItemDiaog.Adder.StudentAdder; -import com.msksbr.MainFrm.MenuItemDiaog.AuthorDIalog; -import com.msksbr.MainFrm.MenuItemDiaog.MITDialog; -import com.msksbr.MainFrm.MenuItemDiaog.SearchDIalog; -import com.msksbr.MainFrm.MenuItemDiaog.aboutDIalog; import javax.swing.*; import java.awt.event.ActionEvent; @@ -76,8 +73,23 @@ public class MenuBar extends JMenuBar { // ”删除“菜单 JMenu removeMenu = new JMenu("删除"); JMenuItem bookRemove = new JMenuItem("删除图书信息"); + bookRemove.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + new Remover("books"); + } + }); JMenuItem studentRemove = new JMenuItem("删除学生信息"); + studentRemove.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + new Remover("students"); + } + }); JMenuItem rentRemove = new JMenuItem("删除借阅信息"); + rentRemove.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + new Remover("rents"); + } + }); removeMenu.add(bookRemove); removeMenu.add(studentRemove); removeMenu.add(rentRemove); diff --git a/src/com/msksbr/MainFrm/MenuItemDiaog/Remover.form b/src/com/msksbr/MainFrm/MenuItemDiaog/Remover.form new file mode 100644 index 0000000..bc0e5e5 --- /dev/null +++ b/src/com/msksbr/MainFrm/MenuItemDiaog/Remover.form @@ -0,0 +1,66 @@ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/src/com/msksbr/MainFrm/MenuItemDiaog/Remover.java b/src/com/msksbr/MainFrm/MenuItemDiaog/Remover.java new file mode 100644 index 0000000..3211a42 --- /dev/null +++ b/src/com/msksbr/MainFrm/MenuItemDiaog/Remover.java @@ -0,0 +1,106 @@ +package com.msksbr.MainFrm.MenuItemDiaog; + +import com.msksbr.LoginFrm.ScreenSize; +import com.msksbr.SQL.Connector; + +import javax.swing.*; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.sql.ResultSet; +import java.sql.SQLException; + +public class Remover extends JDialog { + private JPanel contentPane; + private JButton buttonOK; + private JLabel idLable; + private JTextField idField; + private String table; + private String Searchsql; + private String searchSQL; + private String deleteSQL; + private String searchErrMsg; + private int id; + private Connector searchConnector; + private Connector deleteConnector; + + public Remover(String table) { + try { + searchConnector = new Connector(); + deleteConnector = new Connector(); + } catch (ClassNotFoundException e) { + throw new RuntimeException(e); + } catch (SQLException e) { + throw new RuntimeException(e); + } + buttonOK.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + onOK(); + } + }); + this.table = table; + if (table.equals("books")) { + setTitle("删除图书信息"); + idLable.setText("请输入书号:"); + searchErrMsg = "未找到该图书信息"; + } else if (table.equals("students")) { + setTitle("删除学生信息"); + idLable.setText("请输入学号:"); + searchErrMsg = "未找到该学生信息"; + } else if (table.equals("rents")) { + setTitle("删除借阅信息"); + idLable.setText("请输入书号:"); + searchErrMsg = "未找到该借阅信息"; + } + setContentPane(contentPane); + setModal(true); + getRootPane().setDefaultButton(buttonOK); + pack(); + setResizable(false); + setLocation(); + setVisible(true); + } + + private void onOK() { + // 在此处添加您的代码 + try { + this.id = Integer.valueOf(idField.getText()); + searchSQLMaker(); + deleteSQLMaker(); + ResultSet rs = searchConnector.executeQuery(searchSQL); + if (rs.next()) { + deleteConnector.executeUpdate(deleteSQL); + } else { + JOptionPane.showMessageDialog(this, searchErrMsg, "错误", JOptionPane.WARNING_MESSAGE); + } + } catch (NumberFormatException e) { + JOptionPane.showMessageDialog(this, "请输入一个整数", "错误", JOptionPane.ERROR_MESSAGE); + } catch (SQLException e) { + throw new RuntimeException(e); + } + dispose(); + } + + private void searchSQLMaker() { + if (table.equals("books")) { + searchSQL = "select * from " + table + " where book_id=" + id + ";"; + } else if (table.equals("students")) { + searchSQL = "select * from " + table + " where student_id=" + id + ";"; + } else if (table.equals("rents")) { + searchSQL = "select * from " + table + " where book_id=" + id + ";"; + } + } + + private void deleteSQLMaker() { + if (table.equals("books")) { + deleteSQL = "delete from " + table + " where book_id=" + id + ";"; + } else if (table.equals("students")) { + deleteSQL = "delete from " + table + " where student_id=" + id + ";"; + } else if (table.equals("rents")) { + deleteSQL = "UPDATE books SET borrowed_by = null WHERE book_id=" + id + ";"; + } + } + + public void setLocation() { + setLocation(new ScreenSize().width / 2 - getWidth() / 2, new ScreenSize().height / 2 - getHeight() / 2); + } +}