亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? bookborrowiframe.java

?? 圖書管理系統java+swing+SQL Server實現 包含了圖書管理系統的所有功能 純JAVA實現
?? JAVA
字號:
package com.lishan.iframe;

import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import java.util.Map;

import javax.swing.Timer;
import javax.swing.Icon;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JInternalFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JSplitPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.table.DefaultTableModel;

import com.lishan.JComPz.MapPz;
import com.lishan.dao.Dao;
import com.lishan.iframe.ReaderModiAndDelIFrame.TableListener;
import com.lishan.model.BookInfo;
import com.lishan.model.BookType;
import com.lishan.model.Operater;
import com.lishan.model.Reader;
import com.lishan.util.MyDocument;

public class BookBorrowIFrame extends JInternalFrame {
	private Operater user = BookLoginIFrame.getUser();// 操作人員
	private final JTextField operator;
	private JTextField todaydate;
	private JTable table;
	private JTextField price;
	private JTextField bookType;
	private JTextField bookName;
	private JTextField bookISBN;
	private JTextField keepMoney;
	private JTextField number;// 讀者可借數量
	private JTextField readerName;
	private JTextField readerISBN;
	private List readerlist, booklist;
	private String[] columnNames = { "書籍編號", "借書日期", "應還日期", "讀者編號" };
	private Map map = MapPz.getMap();
	private int secTableRow;

	DefaultTableModel model = new DefaultTableModel();
	SimpleDateFormat myfmt = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");

	public final void add() { // 把借書信息添加到table中
		String str[] = new String[4];
		str[0] = bookISBN.getText().trim();// 存放圖書編號
		str[1] = String.valueOf(myfmt.format(new java.util.Date()));// 存放借出日期
		str[2] = getBackTime().toLocaleString();// 存放歸還日期
		str[3] = readerISBN.getText().trim();// 存放讀者編號
		model.addRow(str);
	}

	public Date getBackTime() { // 取還書時間
		String days = "0";
		List list2 = Dao.selectBookCategory(bookType.getText().trim());
		for (int j = 0; j < list2.size(); j++) {
			BookType type = (BookType) list2.get(j);
			days = type.getDays(); // 取出該類圖書可借天數
		}
		java.util.Date date = new java.util.Date(); // 當前時間
		date.setDate(date.getDate() + Integer.parseInt(days));// 歸還日期 = 當前時間 + 可借日期
		return date;
	}

	/**
	 * create the frame
	 */
	public BookBorrowIFrame() {
		super();
		System.out.println(user.getName());
		setTitle("圖書借閱管理");
		setIconifiable(true); // 設置窗體可最小化---必須
		setClosable(true); // 設置窗體可關閉---必須
		setBounds(100, 100, 500, 375);

		final JPanel panel = new JPanel();
		getContentPane().add(panel);

		final JScrollPane scrollPane = new JScrollPane();
		scrollPane.setPreferredSize(new Dimension(400, 100));
		panel.add(scrollPane);

		table = new JTable();
		scrollPane.setViewportView(table);
		model.setColumnIdentifiers(columnNames);
		table.setModel(model);

		final JPanel panel_1 = new JPanel();
		panel_1.setPreferredSize(new Dimension(0, 120));
		getContentPane().add(panel_1, BorderLayout.NORTH);

		final JSplitPane splitPane = new JSplitPane();// 用于分隔兩個Component
		panel_1.add(splitPane);

		final JPanel panel_3 = new JPanel();// 顯示讀者信息的面板
		panel_3.setPreferredSize(new Dimension(240, 110));
		splitPane.setLeftComponent(panel_3);

		final JPanel panel_5 = new JPanel();
		final GridLayout gridLayout = new GridLayout(0, 2);
		gridLayout.setHgap(2); // 設置水平間距
		gridLayout.setVgap(10);// 設置垂直間距
		panel_5.setLayout(gridLayout);
		panel_5.setPreferredSize(new Dimension(150, 100));
		panel_3.add(panel_5);

		final JLabel label = new JLabel();
		label.setText("讀者編號:");
		panel_5.add(label);

		readerISBN = new JTextField(15);
		readerISBN.setDocument(new MyDocument(13));
		readerISBN.addKeyListener(new ISBNListenerlostFocus());// 注冊在文本框輸入事件監聽對象,用于在panel_5面板中顯示讀者信息
		panel_5.add(readerISBN);

		final JLabel label_1 = new JLabel();
		label_1.setText("讀者姓名:");
		panel_5.add(label_1);

		readerName = new JTextField();
		readerName.setEditable(false);
		panel_5.add(readerName);

		final JLabel label_2 = new JLabel();
		label_2.setText("可借數量:");
		panel_5.add(label_2);

		number = new JTextField();
		number.setEditable(false);
		panel_5.add(number);

		final JLabel label_4 = new JLabel();
		label_4.setText("押     金:");
		panel_5.add(label_4);

		keepMoney = new JTextField();
		keepMoney.setEditable(false);
		panel_5.add(keepMoney);
		// Icon icon = new ImageIcon("1.gif");

		final JPanel panel_4 = new JPanel();// 用于顯示書籍信息
		final GridLayout gridLayout_1 = new GridLayout(0, 2);
		gridLayout_1.setVgap(10);
		panel_4.setLayout(gridLayout_1);
		panel_4.setPreferredSize(new Dimension(240, 110));
		splitPane.setRightComponent(panel_4);

		final JLabel label_5 = new JLabel();
		label_5.setText("書籍編號:");
		panel_4.add(label_5);

		bookISBN = new JTextField();
		bookISBN.setEditable(false);
		bookISBN.setDocument(new MyDocument(13));
		bookISBN.addKeyListener(new bookISBNListenerlostFocus());// 注冊在文本框輸入事件監聽對象,用于在panel_4面板中顯示讀者信息
		panel_4.add(bookISBN);

		final JLabel label_6 = new JLabel();
		label_6.setText("書籍名稱:");
		panel_4.add(label_6);

		bookName = new JTextField();
		bookName.setEditable(false);
		panel_4.add(bookName);

		final JLabel label_7 = new JLabel();
		label_7.setText("書籍類別:");
		panel_4.add(label_7);

		bookType = new JTextField();
		bookType.setEditable(false);
		panel_4.add(bookType);

		final JLabel label_8 = new JLabel();
		label_8.setText("書籍價格:");
		panel_4.add(label_8);

		price = new JTextField();
		price.setEditable(false);
		panel_4.add(price);

		final JPanel panel_2 = new JPanel();
		panel_2.setPreferredSize(new Dimension(0, 100));
		getContentPane().add(panel_2, BorderLayout.SOUTH);

		final JPanel panel_7 = new JPanel();
		final GridLayout gridLayout_2 = new GridLayout(0, 2);
		gridLayout_2.setVgap(10);
		panel_7.setLayout(gridLayout_2);
		panel_7.setPreferredSize(new Dimension(280, 50));
		panel_2.add(panel_7);

		final JLabel label_9 = new JLabel();
		label_9.setText("當前時間:");
		panel_7.add(label_9);

		todaydate = new JTextField();
		todaydate.setEditable(false);
		todaydate.setPreferredSize(new Dimension(0, 0));
		todaydate.addActionListener(new TimeActionListener());// 注冊顯示當前時間事件監聽對象
		todaydate.setFocusable(false);
		panel_7.add(todaydate);

		final JLabel label_11 = new JLabel();
		label_11.setText("操作員:");
		panel_7.add(label_11);

		operator = new JTextField(user.getName());
		operator.setEditable(false);
		panel_7.add(operator);

		final JPanel panel_8 = new JPanel();
		panel_8.setLayout(new FlowLayout());
		panel_8.setPreferredSize(new Dimension(200, 60));
		panel_2.add(panel_8);

		final JButton buttonBorrow = new JButton();
		buttonBorrow.setText("借出當前圖書");
		buttonBorrow.addActionListener(new BorrowActionListener());// 注冊借書按鈕事件監聽對象
		panel_8.add(buttonBorrow);

		final JButton buttonClear = new JButton();
		buttonClear.setText("清除記錄");
		buttonClear.addActionListener(new ClearActionListener(model));// 注冊清除按鈕事件監聽對象
		panel_8.add(buttonClear);

		setVisible(true);
		//
	}

	class ISBNListenerlostFocus extends KeyAdapter {
		public void keyTyped(KeyEvent e) {
			if (e.getKeyChar() == '\n') {// 判斷文本款是否輸入回車鍵
				String ISBNs = readerISBN.getText().trim();
				readerlist = Dao.selectReader(ISBNs);
				if (readerlist.isEmpty() && !ISBNs.isEmpty()) {
					JOptionPane.showMessageDialog(null,
							"此讀者編號沒有注冊,查詢輸入讀者編號是否有誤!");
					return;
				}
				for (int i = 0; i < readerlist.size(); i++) {
					bookISBN.setEditable(true);
					Reader reader = (Reader) readerlist.get(i);
					readerName.setText(reader.getName());
					number.setText(reader.getRemainBorrowNum());
					keepMoney.setText(reader.getKeepMoney() + "");
					// System.out.println("讀者可借書量為" + number.getText().trim());
				}
				if (readerISBN.getText().trim().length() == 0) {
					JOptionPane.showMessageDialog(null, "輸入讀者條形碼!");
				}
			}
		}
	}

	class bookISBNListenerlostFocus extends KeyAdapter {
		public void keyTyped(KeyEvent e) {
			if (e.getKeyChar() == '\n') {// 判斷在文本框是否輸入回車
				if (readerISBN.getText().trim().length() != 0
						&& bookISBN.getText().trim().length() != 0) {// 判斷讀者文本框和圖書文本框是否為空
					String ISBNs = bookISBN.getText().trim();
					booklist = Dao.selectBookInfo(ISBNs);// 存放圖書信息集合
					for (int i = 0; i < booklist.size(); i++) {// 把圖書信息顯示到文本框中
						BookInfo book = (BookInfo) booklist.get(i);
						bookName.setText(book.getBookname());
						bookType.setText(String.valueOf(map.get(book
								.getTypeid())));
						price.setText(String.valueOf(book.getPrice()));
					}

					String days = "0";
					List list2 = Dao.selectBookCategory(bookType.getText()
							.trim());// 存放圖書類型集合
					for (int j = 0; j < list2.size(); j++) {
						BookType type = (BookType) list2.get(j);
						days = type.getDays(); // 取出該種類型的書籍可借天數
					}

					String readerISBNs = readerISBN.getText().trim();
					if (!readerISBNs.isEmpty() && readerlist.isEmpty()) {// 如果readerISBNs文本框輸入不為空,并且數據庫中不存在該readerISBN
						JOptionPane.showMessageDialog(null,
								"此讀者編號沒有注冊,查詢輸入讀者編號是否有誤!");
					} else if (booklist.isEmpty() && !ISBNs.isEmpty()) {// 如果數據庫中編號為ISBN的圖書為空,并且ISBNs文本框輸入不為空
						JOptionPane.showMessageDialog(null,
								"本圖書館沒有此書,查詢輸入圖書編號是否有誤!");
					} else if (Integer.parseInt(number.getText().trim()) <= 0) {
						bookISBN.setEditable(false);
						JOptionPane.showMessageDialog(null, "借書量已經超過最大借書量!");

					} else {
						add();
						number.setText(String.valueOf(Integer.parseInt(number
								.getText().trim()) - 1));
					}
				} else if (readerISBN.getText().trim().length() != 0
						&& bookISBN.getText().trim().length() == 0) {
					JOptionPane.showMessageDialog(null, "輸入圖書條形碼!");
					return;
				} else if (readerISBN.getText().trim().length() == 0) {
					JOptionPane.showMessageDialog(null, "輸入讀者條形碼!");
				}
			}
		}
	}

	class TimeActionListener implements ActionListener {
		public TimeActionListener() {
			Timer t = new Timer(1000, this);
			t.start();
		}

		public void actionPerformed(ActionEvent e) {
			todaydate.setText(myfmt.format(new java.util.Date()).toString());
		}
	}

	class BorrowActionListener implements ActionListener {// 完成借書功能
		public void actionPerformed(ActionEvent e) {
			String bookISBNs = bookISBN.getText().trim();
			String readerISBNs = readerISBN.getText().trim();
			String bookNames = bookName.getText().trim();
			String operatorId = user.getId();
			// String num = table.getRowCount() + "";
			String borrowDate = myfmt.format(new java.util.Date());
			String backDate = myfmt.format(getBackTime());
			int i = 0, j = 0;
			// System.out.println(borrowDate);
			// System.out.println(java.sql.Timestamp.valueOf(backDate));
			if (bookISBNs.length() != 0 || readerISBNs.length() != 0) {
				for (int count = 0; count < table.getRowCount(); count++) {
					String bookISBNtemp = table.getValueAt(count, 0).toString()
							.trim();
					i = Dao.InserBookBorrow(bookISBNtemp, readerISBNs,
							operatorId, java.sql.Timestamp.valueOf(borrowDate),
							java.sql.Timestamp.valueOf(backDate));// 將借書信息插入到借書表中
				}
				j = Dao.updateReaderBorrowBook(number.getText().trim(), readerISBNs);
				if (i == 1 && j == 1) {
					JOptionPane.showMessageDialog(null, "圖書借閱完成");
					doDefaultCloseAction();
				}
			} else {
				JOptionPane.showMessageDialog(null, "輸入讀者條形碼和圖書條形碼!");
			}
		}
	}

	class ClearActionListener implements ActionListener {// 完成清除所有記錄功能
		private final DefaultTableModel model;

		ClearActionListener(DefaultTableModel model) {
			this.model = model;
		}

		public void actionPerformed(ActionEvent e) {
			System.out.println(table.getRowCount());
			if (table.getRowCount() != 0) {
				int selRow = table.getSelectedRow();
				model.removeRow(selRow);
				number.setText(Integer.parseInt(number.getText().trim()) + 1
						+ "");
				bookISBN.setEditable(true);
				if (table.getRowCount() == 0) {
					bookISBN.setText("");
					bookType.setText("");
					bookName.setText("");
					price.setText("");
					readerISBN.setText("");
					readerName.setText("");
					number.setText("");
					keepMoney.setText("");
				}
			} else {
				JOptionPane.showMessageDialog(null, "表格中暫時沒有數據,請進行借閱操作");
			}
		}
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲精品一区二区三区蜜桃下载| 欧美三级在线播放| 日本不卡一区二区| 亚洲高清免费在线| 亚洲成人资源网| 一区二区免费在线| 亚洲一二三专区| 午夜欧美大尺度福利影院在线看| 亚洲成人在线免费| 日本中文字幕一区| 麻豆精品视频在线观看| 美女网站色91| 国产高清亚洲一区| 成人激情小说网站| 欧美性xxxxxxxx| 日韩一区二区三区在线观看| 日韩欧美国产成人一区二区| 久久久久国产一区二区三区四区| 欧美激情综合在线| 一区二区三区中文在线| 日本欧美一区二区三区| 国产一区不卡在线| 99这里都是精品| 欧美精品一卡两卡| 欧美精品一区二区不卡 | 偷拍亚洲欧洲综合| 毛片av一区二区三区| 国产精品系列在线播放| 色综合夜色一区| 日韩欧美国产午夜精品| 最新高清无码专区| 日本中文字幕一区| av爱爱亚洲一区| 欧美一级生活片| 中文字幕在线不卡| 美腿丝袜亚洲一区| 在线免费观看日本一区| 欧美成人女星排名| 一区二区三区在线观看国产| 久久成人综合网| 91国在线观看| 欧美国产日韩精品免费观看| 水野朝阳av一区二区三区| 国产精品一区在线| 欧美伦理影视网| 亚洲私人黄色宅男| 国产一区二区久久| 欧美日韩国产在线播放网站| 国产精品国产三级国产普通话99 | 亚洲永久免费视频| 国产高清亚洲一区| 日韩欧美中文一区| 亚洲高清免费视频| 一本到一区二区三区| 国产香蕉久久精品综合网| 日韩精品亚洲一区| 日本乱人伦aⅴ精品| 中文字幕不卡三区| 激情文学综合插| 日韩一级完整毛片| 午夜不卡在线视频| 欧美综合一区二区| 亚洲精品视频观看| 一本到高清视频免费精品| 国产精品国产三级国产三级人妇| 韩国毛片一区二区三区| 亚洲v精品v日韩v欧美v专区| 国产成人午夜精品影院观看视频 | 久久久综合九色合综国产精品| 婷婷激情综合网| 欧美在线观看禁18| 亚洲午夜电影在线观看| 日本福利一区二区| 亚洲一区电影777| 欧美日韩在线免费视频| 夜夜精品视频一区二区| 色偷偷久久人人79超碰人人澡| 国产精品久久久久一区二区三区共| 国产河南妇女毛片精品久久久| 久久亚洲免费视频| 国产精品996| 国产精品色婷婷久久58| aaa欧美日韩| 亚洲一区二区高清| 91精品国产91久久久久久最新毛片 | 欧美变态凌虐bdsm| 精品亚洲欧美一区| 久久久国际精品| 成人精品视频一区二区三区 | 国产精品久久99| 99这里只有久久精品视频| 亚洲啪啪综合av一区二区三区| 色综合激情久久| 日韩成人免费电影| 久久久久久久国产精品影院| 成人午夜激情片| 亚洲国产精品天堂| 日韩欧美在线影院| 不卡高清视频专区| 亚洲福中文字幕伊人影院| 欧美一区二区三区在线电影| 激情综合网最新| 亚洲欧美日韩系列| 在线不卡免费欧美| 秋霞午夜av一区二区三区| 欧美成人午夜电影| 一本大道久久精品懂色aⅴ| 奇米精品一区二区三区在线观看一 | 日韩精品一二三四| 国产午夜精品一区二区三区视频 | 日本黄色一区二区| 日韩高清不卡在线| 国产精品久久久久婷婷二区次| 欧美在线观看视频一区二区三区| 国内精品伊人久久久久av影院| 国产精品国产馆在线真实露脸| 欧美日韩在线亚洲一区蜜芽| 福利电影一区二区三区| 午夜精品免费在线观看| 国产精品护士白丝一区av| 欧美一个色资源| 一本色道久久综合亚洲aⅴ蜜桃 | 欧美日韩国产综合视频在线观看| 国产91精品在线观看| 日本不卡视频一二三区| 亚洲欧美激情视频在线观看一区二区三区 | 奇米四色…亚洲| 亚洲一级二级三级| 亚洲视频免费在线观看| 精品国产乱码久久| 欧美福利电影网| 99国产精品一区| 韩国中文字幕2020精品| 日韩和的一区二区| 一区二区三区精品| 亚洲色欲色欲www| 国产农村妇女精品| 欧美哺乳videos| 91精品欧美一区二区三区综合在| 色就色 综合激情| 成人aa视频在线观看| 国产精品一区二区x88av| 美女视频黄久久| 蜜桃精品视频在线观看| 日韩高清一级片| 日韩国产欧美三级| 欧美aaa在线| 免费久久精品视频| 美女视频黄频大全不卡视频在线播放| 午夜电影一区二区三区| 亚洲第一精品在线| 天天影视涩香欲综合网| 日韩黄色小视频| 日本少妇一区二区| 久久国产精品色婷婷| 麻豆国产欧美一区二区三区| 免费美女久久99| 久久爱www久久做| 精品无人区卡一卡二卡三乱码免费卡| 日韩精品国产欧美| 九色综合狠狠综合久久| 国产专区欧美精品| 国产精品一区二区三区99 | 国产精品国产三级国产a| 中文字幕av一区 二区| 国产精品不卡在线| 一区二区三区欧美日韩| 亚洲福利一区二区三区| 欧美bbbbb| 成人午夜av电影| 在线观看亚洲a| 欧美一区二区视频在线观看2020 | 国产日韩欧美激情| 亚洲三级电影网站| 亚洲成人av一区二区三区| 日本不卡一二三| 国产精品一色哟哟哟| 一本高清dvd不卡在线观看 | 久久电影网站中文字幕| 高清beeg欧美| 欧美猛男男办公室激情| 精品久久免费看| 亚洲欧美经典视频| 麻豆免费精品视频| 成人污污视频在线观看| 欧美日韩国产综合一区二区三区| 日韩女优av电影在线观看| 国产精品五月天| 水野朝阳av一区二区三区| 高清beeg欧美| 91麻豆精品国产自产在线| 久久久久久久综合狠狠综合| 亚洲免费伊人电影| 国产一区二区久久| 欧美日韩久久久| 国产精品每日更新在线播放网址| 亚洲成人免费影院| av在线播放一区二区三区| 51午夜精品国产| 亚洲免费观看在线视频|