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

📄 additionalconsumedframe.java

📁 一个KTV管理系统
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
package view.mainframe.guestconsumed;

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.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.ScrollPaneConstants;
import javax.swing.table.DefaultTableModel;

import vo.Goods;
import vo.GoodsConsumedInfo;

import common.centerwindow.CenterWindow;
import common.checkinputvalue.Check;
import common.currenttime.JLabelTime1;

import control.consumedcontrol.GoodsConsumedControl;
import control.goodssetting.GoodsSettingControl;
import dao.consumeddao.GuestConsumedDao;

/*
 * 增加消费面板
 */
public class AdditionalConsumedFrame {
	private static AdditionalConsumedFrame instance;

	private JFrame jFrameAdditionalConsumed = null;

	private JPanel jContentPaneAdditionalConsumed = null;

	private JPanel jPanelLeft = null;

	private JPanel jPanelRight = null;

	private JLabel jLabelGoodsList = null;

	private JLabel jLabelConsumedList = null;

	private JLabel jLabelGoodsAbbreviation = null;

	private JTextField jTextFieldgetGoodsAbbreviation = null;

	private JLabel jLabelConsumedNumber = null;

	private JTextField jTextFieldgetConsumedNumber = null;

	private JLabel jLabelRoomNumber = null;

	private JButton jButtonAdd = null;

	private JScrollPane jScrollPaneGoodsInfo = null;

	private JTable jTableGoodsInfo = null;

	private JButton jButtonDeleteGoods = null;

	private JScrollPane jScrollPaneGoodsConsumed = null;

	private JTable jTableGoodsConsumed = null;

	private JButton jButtonExit = null;

	private JLabel jLabelConsumedGoodsName = null;

	private JLabel jLabelConsumedMoney = null;

	private JLabel jLabelCurrentTime = null;

	private JLabel jLabelCurrent = null;

	private JLabel jLabelGoodsSellPrice = null;

	private JLabel temp = null;

	private JTextField jTextFieldgetRoomNumber = null;

	private JTextField jTextFieldgetGoodsName = null;

	private JTextField jTextFieldgetGoodsSellPrice = null;

	private JTextField jTextFieldgetConsumedMoney = null;

	private JLabel jLabelgetGoodsStock = null;

	private JLabel jLabelgetGoodsAlert = null;

	private JTextField jTextFieldgetConsumedId = null;

	private JTextField jTextFieldgetHadConsumedMoney = null;

	/**
	 * This method initializes jFrameAdditionalConsumed
	 * 
	 * @return javax.swing.JFrame
	 */
	  
	public static AdditionalConsumedFrame getOriginalRoom(String roomNumber,
			long consumedId) {
		if (instance == null) {
			instance = new AdditionalConsumedFrame();

		}

		instance.jFrameAdditionalConsumed.setVisible(true);
		instance.jTextFieldgetRoomNumber.setText(roomNumber);
		instance.jTextFieldgetConsumedId.setText(String.valueOf(consumedId));
		instance.flushtable1();
		instance.flushtable2();
		return instance;
	}

	public AdditionalConsumedFrame() {

		jFrameAdditionalConsumed = getJFrameAdditionalConsumed();

	}

	public JFrame getJFrameAdditionalConsumed() {
		if (jFrameAdditionalConsumed == null) {
			jFrameAdditionalConsumed = new JFrame();
			jFrameAdditionalConsumed.setSize(new java.awt.Dimension(899, 507));
			jFrameAdditionalConsumed.setTitle("增加消费");
			jFrameAdditionalConsumed
					.setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
			jFrameAdditionalConsumed.setResizable(false);
			new CenterWindow().centerWindow(jFrameAdditionalConsumed);
			jFrameAdditionalConsumed
					.setContentPane(getJContentPaneAdditionalConsumed());
			jFrameAdditionalConsumed.setVisible(true);
            jFrameAdditionalConsumed
					.addWindowListener(new java.awt.event.WindowAdapter() {
                            public void windowOpened(java.awt.event.WindowEvent e) {
							flushtable1();
							flushtable2();
       }

						public void windowClosing(java.awt.event.WindowEvent e) {
							jFrameAdditionalConsumed.setVisible(false);
							jFrameAdditionalConsumed.dispose();
						}

					});

		}
		return jFrameAdditionalConsumed;
	}

	/**
	 * This method initializes jContentPaneAdditionalConsumed
	 * 
	 * @return javax.swing.JPanel
	 */
	private JPanel getJContentPaneAdditionalConsumed() {
		if (jContentPaneAdditionalConsumed == null) {
			jContentPaneAdditionalConsumed = new JPanel();
			jContentPaneAdditionalConsumed.setLayout(null);
			jContentPaneAdditionalConsumed.add(getJPanelLeft(), null);
			jContentPaneAdditionalConsumed.add(getJPanelRight(), null);
		}
		return jContentPaneAdditionalConsumed;
	}

	/**
	 * This method initializes jPanelLeft
	 * 
	 * @return javax.swing.JPanel
	 */
	private JPanel getJPanelLeft() {
		if (jPanelLeft == null) {
			jLabelgetGoodsAlert = new JLabel();
			jLabelgetGoodsAlert.setBounds(new java.awt.Rectangle(304, 170, 38,
					18));
			jLabelgetGoodsAlert.setText("");
			jLabelgetGoodsAlert.setVisible(false);
			jLabelgetGoodsStock = new JLabel();
			jLabelgetGoodsStock.setBounds(new java.awt.Rectangle(249, 169, 38,
					18));
			jLabelgetGoodsStock.setText("");
			jLabelgetGoodsStock.setVisible(false);
			jLabelGoodsSellPrice = new JLabel();
			jLabelGoodsSellPrice.setBounds(new java.awt.Rectangle(250, 100, 70,
					20));
			jLabelGoodsSellPrice.setText("商品单价");
			jLabelCurrent = new JLabel();
			jLabelCurrent.setBounds(new java.awt.Rectangle(250, 60, 70, 20));
			jLabelCurrent.setText("当前时间");
			jLabelCurrentTime = new JLabelTime1("");
			jLabelCurrentTime
					.setBounds(new java.awt.Rectangle(330, 60, 110, 20));
			jLabelCurrentTime.setFont(new java.awt.Font("Default",
					java.awt.Font.BOLD, 10));
			jLabelCurrentTime.setText("");

			jLabelConsumedMoney = new JLabel();
			jLabelConsumedMoney.setBounds(new java.awt.Rectangle(250, 140, 70,
					20));
			jLabelConsumedMoney.setText("消费金额");
			jLabelConsumedGoodsName = new JLabel();
			jLabelConsumedGoodsName.setBounds(new java.awt.Rectangle(25, 100,
					70, 20));
			jLabelConsumedGoodsName.setText("商品名称");
			jLabelRoomNumber = new JLabel();
			jLabelRoomNumber.setBounds(new java.awt.Rectangle(25, 60, 70, 20));
			jLabelRoomNumber.setText("房间号");
			jLabelConsumedNumber = new JLabel();
			jLabelConsumedNumber.setBounds(new java.awt.Rectangle(25, 140, 70,
					20));
			jLabelConsumedNumber.setText("消费数量");
			jLabelGoodsAbbreviation = new JLabel();
			jLabelGoodsAbbreviation.setBounds(new java.awt.Rectangle(39, 174,
					86, 18));
			jLabelGoodsAbbreviation.setText("商品简拼");
			jLabelGoodsList = new JLabel();
			jLabelGoodsList.setText("商品清单");
			jLabelGoodsList
					.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
			jLabelGoodsList
					.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
			jLabelGoodsList.setFont(new java.awt.Font("Dialog",
					java.awt.Font.BOLD, 18));
			jLabelGoodsList.setBounds(new java.awt.Rectangle(0, 2, 456, 40));
			jPanelLeft = new JPanel();
			jPanelLeft.setLayout(null);
			jPanelLeft.setBounds(new java.awt.Rectangle(1, 3, 463, 470));
			jPanelLeft.add(jLabelGoodsList, null);
			jPanelLeft.add(jLabelGoodsAbbreviation, null);
			jPanelLeft.add(getJTextFieldgetGoodsAbbreviation(), null);
			jPanelLeft.add(jLabelConsumedNumber, null);
			jPanelLeft.add(getJTextFieldgetConsumedNumber(), null);
			jPanelLeft.add(jLabelRoomNumber, null);
			jPanelLeft.add(getJButtonAdd(), null);
			jPanelLeft.add(getJScrollPaneGoodsInfo(), null);
			jPanelLeft.add(jLabelConsumedGoodsName, null);
			jPanelLeft.add(jLabelConsumedMoney, null);
			jPanelLeft.add(jLabelCurrentTime, null);
			jPanelLeft.add(jLabelCurrent, null);
			jPanelLeft.add(jLabelGoodsSellPrice, null);
			jPanelLeft.add(getJTextFieldgetRoomNumber(), null);
			jPanelLeft.add(getJTextFieldgetGoodsName(), null);
			jPanelLeft.add(getJTextFieldgetGoodsSellPrice(), null);
			jPanelLeft.add(getJTextFieldgetConsumedMoney(), null);
			jPanelLeft.add(jLabelgetGoodsStock, null);
			jPanelLeft.add(jLabelgetGoodsAlert, null);
			jPanelLeft.add(getJTextFieldgetConsumedId(), null);
		}
		return jPanelLeft;
	}
	private JPanel getJPanelRight() {
		if (jPanelRight == null) {
			jLabelConsumedList = new JLabel();
			jLabelConsumedList.setBounds(new java.awt.Rectangle(3, 1, 415, 40));
			jLabelConsumedList
					.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
			jLabelConsumedList.setFont(new java.awt.Font("Dialog",
					java.awt.Font.BOLD, 18));
			jLabelConsumedList.setText("消费清单");
			jPanelRight = new JPanel();
			jPanelRight.setLayout(null);
			jPanelRight.setBounds(new java.awt.Rectangle(468, 3, 591, 470));
			jPanelRight.add(jLabelConsumedList, null);
			jPanelRight.add(getJButtonDeleteGoods(), null);
			jPanelRight.add(getJScrollPaneGoodsConsumed(), null);
			jPanelRight.add(getJButtonExit(), null);
			jPanelRight.add(getJTextFieldgetHadConsumedMoney(), null);
		}
		return jPanelRight;
	}

	/**
	 * This method initializes jTextFieldgetGoodsAbbreviation
	 * 
	 * @return javax.swing.JTextField
	 */
	private JTextField getJTextFieldgetGoodsAbbreviation() {
		if (jTextFieldgetGoodsAbbreviation == null) {
			jTextFieldgetGoodsAbbreviation = new JTextField();
			jTextFieldgetGoodsAbbreviation.setBounds(new java.awt.Rectangle(
					146, 171, 84, 22));
			jTextFieldgetGoodsAbbreviation.addKeyListener(new KeyAdapter() {
				public void keyReleased(KeyEvent e) {
					DefaultTableModel model = (DefaultTableModel) getJTableGoodsInfo()
							.getModel();
					int rows = model.getRowCount();
					for (int i = rows - 1; i >= 0; i--) {
						model.removeRow(i);
					}
					GoodsSettingControl control = new GoodsSettingControl();
					Vector v = control
							.getGoodsAbbreviationInfo(getJTextFieldgetGoodsAbbreviation()
									.getText().trim());
					Iterator iter = v.iterator();
					while (iter.hasNext()) {
						Goods value = (Goods) iter.next();
						Object[] data = { value.getGoodsName(),
								value.getGoodsUnit(),
								String.valueOf(value.getGoodsCostPrice()),
								String.valueOf(value.getGoodsSellPrice()),
								String.valueOf(value.getGoodsStock()),
								String.valueOf(value.getGoodsAlert()),
								value.getGoodsAbbreviation() };
						model.addRow(data);
					}
				}

			});
		}
		return jTextFieldgetGoodsAbbreviation;
	}

	/**
	 * This method initializes jTextFieldgetConsumedNumber
	 * 
	 * @return javax.swing.JTextField
	 */
	private JTextField getJTextFieldgetConsumedNumber() {
		if (jTextFieldgetConsumedNumber == null) {
			jTextFieldgetConsumedNumber = new JTextField();
			jTextFieldgetConsumedNumber.setBounds(new java.awt.Rectangle(130,
					140, 90, 20));

			jTextFieldgetConsumedNumber.addKeyListener(new KeyAdapter() {
				public void keyReleased(KeyEvent e) {
					System.out.println(jLabelgetGoodsStock.getText().trim());
					System.out.println(jLabelgetGoodsAlert.getText().trim());
					try {
						if (checkConsumedNumberInputValue()) {
							if (Integer
									.parseInt(getJTextFieldgetConsumedNumber()
											.getText().trim()) < Integer
									.parseInt(jLabelgetGoodsStock.getText()
											.trim())) {
								if ((Integer.parseInt(jLabelgetGoodsStock
										.getText().trim()) - Integer
										.parseInt(getJTextFieldgetConsumedNumber()
												.getText().trim())) > Integer
										.parseInt(jLabelgetGoodsAlert.getText()
												.trim())) {
									jTextFieldgetConsumedMoney
											.setText(

											String
													.valueOf(Integer
															.parseInt(getJTextFieldgetConsumedNumber()
																	.getText()
																	.trim())
															* Double
																	.parseDouble(getJTextFieldgetGoodsSellPrice()
																			.getText()
																			.trim())));
								} else {
									JOptionPane.showMessageDialog(null,
											"商品储量警报!!", "提示信息",
											JOptionPane.YES_OPTION);
									getJTextFieldgetConsumedNumber()
											.requestFocus();
									jTextFieldgetConsumedMoney
											.setText(

											String
													.valueOf(Integer
															.parseInt(getJTextFieldgetConsumedNumber()
																	.getText()
																	.trim())
															* Double
																	.parseDouble(getJTextFieldgetGoodsSellPrice()
																			.getText()
																			.trim())));
								}
							} else {
								JOptionPane.showMessageDialog(null, "库存量不足",
										"提示信息", JOptionPane.YES_OPTION);
								getJTextFieldgetConsumedNumber().requestFocus();
								getJTextFieldgetConsumedNumber().setText("");
							}
						}
					} catch (Exception e1) {
					}
				}

			});
		}
		return jTextFieldgetConsumedNumber;
	}

	/**
	 * This method initializes jButtonAdd
	 * 
	 * @return javax.swing.JButton
	 */
	private JButton getJButtonAdd() {
		if (jButtonAdd == null) {
			jButtonAdd = new JButton();
			jButtonAdd.setBounds(new java.awt.Rectangle(351, 171, 73, 23));
			jButtonAdd.setText("增加");
			jButtonAdd.addActionListener(new ActionListener() {
				public void actionPerformed(ActionEvent e) {
					if (checkGoodsInputValue()) {
						GoodsConsumedInfo value = getGoodsInputValue();
						GoodsConsumedControl control = new GoodsConsumedControl();
						GuestConsumedDao dao = new GuestConsumedDao();
						DefaultTableModel model = (DefaultTableModel) getJTableGoodsConsumed()
								.getModel();
						String goodsName = jTextFieldgetGoodsName.getText()
								.trim();
						String consumeId = jTextFieldgetConsumedId.getText();
						double consumedMoney = Double
								.parseDouble(jTextFieldgetConsumedMoney
										.getText());
						int number = Integer
								.parseInt(jTextFieldgetConsumedNumber.getText());
						if (control.insertGoodsInfo(value)
								& control.updateGoodsInfo(goodsName, number)
								& dao.updateGuestGoodsConsumedInfo(consumeId,
										consumedMoney)) {
							Object[] data = {

⌨️ 快捷键说明

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