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

📄 takeclothespanel.java

📁 一个优秀的干洗店管理系统
💻 JAVA
字号:
package view.panel.takeClothes;

import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.util.Iterator;
import java.util.Vector;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.table.DefaultTableModel;

import view.control.takeclothes.TakeClothesListener;
import view.control.takeclothes.TakeClothesMouseListener;
import vo.OrderVo;
import dao.common.DbException;
import dao.takeClothesDao.TakeClothesDao;
import dao.takeClothesDao.takeClothesDaoImpl.TakeClothesDaoImpl;

public class TakeClothesPanel extends JPanel {
	private JTextField cardIdTxFld;

	private JButton getClothesBtn, rewashBtn, refundBtn, quitBtn;

	private JTable orderTable, itemTable;

	private String[] orderTableHeaders = { "洗衣单号", "添衣日期", "取衣日期", "应收金额",
			"已付费", "是否取走", "会员卡号" };

	private String[] itemTableHeaders = { "衣服名称", "服务类型", "品牌", "衣服附件", "衣服瑕疵",
			"颜色", "折后价", "数量", "总额", "衣服备注" };

	private Vector orderVoVector;

	public TakeClothesPanel() {
		this.setLayout(new BorderLayout());
		this.add(buildTopPanel(), BorderLayout.NORTH);

		JPanel twoTablePanel = new JPanel();
		twoTablePanel.setLayout(new GridLayout(2, 1));
		twoTablePanel.add(buildOrderPanel());
		twoTablePanel.add(buildItemPanel());
		this.add(twoTablePanel);

		initialize();
	}

	public JPanel buildTopPanel() {
		JPanel panel = new JPanel();
		panel.add(buildSearchPanel());
		panel.add(buildOperBtnPanel());
		return panel;
	}

	public JPanel buildSearchPanel() {
		JPanel panel = new JPanel();
		panel.add(buildGetClothesBtn());
		return panel;
	}

	public JPanel buildlabelAndTxFldPanel() {
		JPanel panel = new JPanel();
		panel.setLayout(new GridLayout(1, 2));
		panel.add(new JLabel("请输入会员卡号:"));
		panel.add(buildCardIdTxFld());
		return panel;
	}

	public JTextField buildCardIdTxFld() {
		if (cardIdTxFld == null) {
			cardIdTxFld = new JTextField();
		}
		return cardIdTxFld;
	}

	public JButton buildGetClothesBtn() {
		if (getClothesBtn == null) {
			getClothesBtn = new JButton("取衣");
			getClothesBtn.addActionListener(new TakeClothesListener(this));
		}
		return getClothesBtn;
	}

	public JPanel buildOperBtnPanel() {
		JPanel panel = new JPanel();
		panel.add(buildRewashBtn());
		panel.add(buildRefundBtn());
		return panel;
	}

	public JButton buildRewashBtn() {
		if (rewashBtn == null) {
			rewashBtn = new JButton("重洗");
			rewashBtn.addActionListener(new TakeClothesListener(this));
		}
		return rewashBtn;
	}

	public JButton buildRefundBtn() {
		if (refundBtn == null) {
			refundBtn = new JButton("赔款");
			refundBtn.addActionListener(new TakeClothesListener(this));

		}
		return refundBtn;
	}

	public JButton buildQuitBtn() {
		if (quitBtn == null) {
			quitBtn = new JButton("退出");
			quitBtn.addActionListener(new TakeClothesListener(this));

		}
		return quitBtn;
	}

	public JPanel buildOrderPanel() {
		JPanel panel = new JPanel();
		panel.setLayout(new BorderLayout());
		panel.add(buildLabel("未领衣服洗衣单"), BorderLayout.NORTH);
		panel.add(buildOrderScrollPane());
		return panel;
	}

	public JLabel buildLabel(String content) {
		return new JLabel(content);
	}

	public JScrollPane buildOrderScrollPane() {
		return new JScrollPane(buildOrderTable());
	}

	public JTable buildOrderTable() {
		if (orderTable == null) {
			Object[][] data = {};
			DefaultTableModel tableModel = new DefaultTableModel(data,
					orderTableHeaders) {
				public boolean isCellEditable(int rowIndex, int columnIndex) {
					return false;
				}
			};
			orderTable = new JTable(tableModel);
			orderTable.addMouseListener(new TakeClothesMouseListener(this));
		}
		return orderTable;
	}

	public JPanel buildItemPanel() {
		JPanel panel = new JPanel();
		panel.setLayout(new BorderLayout());
		panel.add(buildLabel("洗衣单详细信息"), BorderLayout.NORTH);
		panel.add(buildItemScrollPane());
		return panel;
	}

	public JScrollPane buildItemScrollPane() {
		return new JScrollPane(buildItemTable());
	}

	public JTable buildItemTable() {
		if (itemTable == null) {
			Object[][] data = {};
			DefaultTableModel tableModel = new DefaultTableModel(data,
					itemTableHeaders) {
				public boolean isCellEditable(int rowIndex, int columnIndex) {
					return false;
				}
			};
			itemTable = new JTable(tableModel);
		}
		return itemTable;
	}

	public void initialize() {
		TakeClothesDao takeClotehsDao = new TakeClothesDaoImpl();
		try {
			this.orderVoVector = takeClotehsDao.getNotTakeOrderVo();
		} catch (DbException de) {
			JOptionPane.showMessageDialog(null, de.getMessage(), "提示",
					JOptionPane.YES_OPTION);
			return;
		}
		if (orderVoVector != null) {
			Iterator it = orderVoVector.iterator();
			DefaultTableModel tableModel = (DefaultTableModel) this.orderTable
					.getModel();
			while (it.hasNext()) {
				OrderVo orderVo = (OrderVo) it.next();
				Object[] content = { new Long(orderVo.getOrderId()).toString(),
						orderVo.getGetClothesDate(),
						orderVo.getTakeClothesDate(),
						new Double(orderVo.getOrderValue()).toString(),
						orderVo.isPaidOrNot() ? "是" : "否",
						orderVo.isTakeOrNot() ? "是" : "否",
						new Integer(orderVo.getCustomerId()).toString() };
				tableModel.addRow(content);
			}
		}
	}

	public void clearAll() {
		DefaultTableModel orderModel = (DefaultTableModel) this.orderTable
				.getModel();
		int orderCount = this.orderTable.getRowCount();
		while (orderCount > 0) {
			orderModel.removeRow(0);
			orderCount--;
		}

		DefaultTableModel itemModel = (DefaultTableModel) this.itemTable
				.getModel();
		int itemCount = this.itemTable.getRowCount();
		while (itemCount > 0) {
			itemModel.removeRow(0);
			itemCount--;
		}
	}

	public Vector getOrderVoVector() {
		return orderVoVector;
	}

	public OrderVo getSelectedOrderVo() {
		JTable orderTable = this.buildOrderTable();
		int row = orderTable.getSelectedRow();
		if (row < 0) {
			JOptionPane.showMessageDialog(null, "您没有选择任何洗衣单", "提示",
					JOptionPane.YES_OPTION);
			return null;
		}
		long orderId = Long.parseLong(orderTable.getValueAt(row, 0).toString());
		Vector orderVector = this.getOrderVoVector();
		Iterator itOrder = orderVector.iterator();
		while (itOrder.hasNext()) {
			OrderVo orderVo = ((OrderVo) itOrder.next());
			if (orderVo.getOrderId() == orderId) {
				return orderVo;
			}
		}
		return null;
	}
}

⌨️ 快捷键说明

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