⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 givebackpanel.java

📁 碟片出租系统,后台是SQL SERVER,联系编程时可以全部采用或者部分采用.
💻 JAVA
字号:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.sql.*;

public class GiveBackPanel extends JPanel
{
	private JLabel title;
	private final Font font = new Font("华文新魏", Font.PLAIN, 20);
	private JPanel centerPanel;
	private JTextField id, name;
	private JButton loginButton;
	private JTable table;
	private String user, strname;
	private String query = "select hireAndBacks.CDID 碟片号, filmName 影片名, CDno 集号,"
		+ " hireTime 出租时间, givebackTime 归还时间, lesseeID 会员编号 from hireAndBacks join "
		+ "CDs on hireAndBacks.CDID = CDs.CDID join films on CDs.filmID = "
		+ "films.filmID where isback = 0";

	public GiveBackPanel()
	{
		super();
		setLayout(new BorderLayout());
		title = new JLabel("碟片归还", JLabel.CENTER);
		title.setFont(font);
		add(title, BorderLayout.NORTH);
		centerPanel = new JPanel();
		title = new JLabel("会员编号:");
		centerPanel.add(title);
		id = new JTextField(6);
		centerPanel.add(id);
		title = new JLabel("会员姓名:");
		centerPanel.add(title);
		name = new JTextField(6);
		centerPanel.add(name);
		loginButton = new JButton("登录");
		loginButton.addActionListener(
			new ActionListener()
			{
				public void actionPerformed(ActionEvent event)
				{
					if(id.getText().equals("") || name.getText().equals(""))
					{
						JOptionPane.showMessageDialog(GiveBackPanel.this, "请输入完整的信息!");
					}
					else
					{
						String str = "select lesseeID from lessees where lesseeID = '"
						+ id.getText() + "' and lesseeName = '" + name.getText() + "'";
						query(str);
						if(table.getRowCount() == 1)
						{
							user = id.getText();
							strname = name.getText();
							centerPanel.removeAll();
							centerPanel.setSize(0, 0);
							addPanel();
							centerPanel.updateUI();
							query(query + " and lesseeID = '" + table.getValueAt(0, 0).toString() + "'");
						}
						else
						{
							query(query);
							JOptionPane.showMessageDialog(GiveBackPanel.this, "此会员不存在!");
						}
					}
				}
			}
		);
		centerPanel.add(loginButton);
		centerPanel.setLayout(new FlowLayout());
		add(centerPanel, BorderLayout.CENTER);
		query(query);
		table = new JTable(FilmHireSystem.tableModel);
		table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
		table.getTableHeader().setReorderingAllowed(false);
		table.addMouseListener(
			new MouseAdapter()
			{
				public void mousePressed(MouseEvent event)
				{
					table.setRowSelectionAllowed(true);
				}
				
				public void mouseReleased(MouseEvent event)
				{
					int n = table.getSelectedRowCount();
					int cds[] = table.getSelectedRows();
					for (int i = 0; i<n; i++)
					{
						if(table.getValueAt(cds[i], 3).toString().equals("被租"))
						{
							JOptionPane.showMessageDialog(GiveBackPanel.this, "此碟片已经被租!");
							table.setCellSelectionEnabled(false);
							return;
						}
				    }
				}
			}
		);
		add(new JScrollPane(table), BorderLayout.SOUTH);
	}
	
	public void query(String query)
	{
		try
		{
			FilmHireSystem.tableModel.setQuery(query);
		}
		catch(Exception exception)
		{
			System.err.println("数据库查询错误:" + exception.getMessage());
		}
	}
	
	public void addPanel()
	{
		title = new JLabel(strname + ":   欢迎光临!");
		centerPanel.add(title);
		loginButton = new JButton("归还碟片");
		loginButton.addActionListener(
			new ActionListener()
			{
				public void actionPerformed(ActionEvent event)
				{
					if(table.getRowSelectionAllowed())
					{
						int n = table.getSelectedRowCount();
						if(n > 0)
						{
							int cds[] = table.getSelectedRows();
							String str[][] = new String[n][2];
							for (int i = 0; i<n; i++)
							{
								str[i][0] = table.getValueAt(cds[i], 0).toString();
								str[i][1] = table.getValueAt(cds[i], 3).toString();
						    }
							FilmHireSystem.tableModel.setAutoCommit(false);
							try
							{
								String exe = "";
								query += " and lesseeID = '" + user + "'";
								for (int i = 0; i<n; i++)
								{
									exe = "update hireAndBacks set givebackTime = '" + FilmHireSystem.getTime() + "', isback = 1 where lesseeID = '"
										+ user + "' and CDID = '" + str[i][0]
										+ "' and hireTime = '" + str[i][1] + "'";
									FilmHireSystem.tableModel.setExecute(exe, query);
									exe = "update CDs set state = '归还' where CDID = '" + str[i][0] + "'";
									FilmHireSystem.tableModel.setExecute(exe, query);
							    }
								query(query);
								FilmHireSystem.tableModel.commit();
							}
							catch(SQLException sql)
							{
								JOptionPane.showMessageDialog(null, sql.getMessage(), 
									"数据库查询错误", JOptionPane.ERROR_MESSAGE);
								FilmHireSystem.tableModel.rollback();
							}
							FilmHireSystem.tableModel.setAutoCommit(true);
						}
						else
						{
							JOptionPane.showMessageDialog(GiveBackPanel.this, "请选择碟片!");
						}
					}
					else
					{
						JOptionPane.showMessageDialog(GiveBackPanel.this, "请选择碟片!");
					}
				}
			}
		);
		centerPanel.add(loginButton);
	}	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -