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

📄 changeteldialog.java

📁 用java编写的人事管理系统,很好的 学习下吧
💻 JAVA
字号:
/**
 * 源文件:ChangeTelDialog.java
 * 作用:调换信息窗体
 */
package mypro;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.table.*;
import java.util.*;

public class ChangeTelDialog extends JDialog implements ActionListener,MouseListener
{
	ChangeTelData chd=new ChangeTelData();
	Check check=new Check();
	private JLabel labChangeInvoice,labOldImei,labNewImei,labChangDate,labUserCode,labReason;
	private JTextField txtChangeInvoice,txtOldImei,txtNewImei,txtChangDate,txtUserCode;
	private JButton btnInsert,btnDelete;
	private JTextArea teaReason;
	private JScrollPane scop, scop1;
	private JTable tabShow;
	DefaultTableModel dtm;//定义表模型
	private int row=0;
	
	static 
	{
   	 	//设置窗体为豪华框架
   		JDialog.setDefaultLookAndFeelDecorated(true);		
	}
	
	public ChangeTelDialog(MainFrame owner,boolean bo)
	{
		super(owner,bo);
	  	labChangeInvoice = new JLabel("*调换单号");
  		txtChangeInvoice = new JTextField();
  		labOldImei = new JLabel("*换回的手机串号");
  		txtOldImei = new JTextField();
  		labNewImei = new JLabel("*换出的手机串号");
  		txtNewImei = new JTextField();
  		labChangDate = new JLabel("*调换日期");
  		txtChangDate = new JTextField();
  		labUserCode = new JLabel("*工号");
  		txtUserCode = new JTextField();
  		labReason = new JLabel("*退机原因");
  		teaReason = new JTextArea();
  		btnInsert = new JButton("插入");
  		btnDelete = new JButton("删除");
  		scop = new JScrollPane();
  		scop1 = new JScrollPane();
  		tabShow = new JTable();
  		
        labChangeInvoice.setBounds(new Rectangle(12, 16, 106, 14));
    	txtChangeInvoice.setBounds(new Rectangle(121, 16, 121, 23));
    	labOldImei.setBounds(new Rectangle(12, 49, 106, 14));
    	txtOldImei.setBounds(new Rectangle(121, 49, 121, 23));
    	labNewImei.setBounds(new Rectangle(12, 82, 106, 14));
    	txtNewImei.setBounds(new Rectangle(121, 82, 121, 23));
    	labChangDate.setBounds(new Rectangle(278, 18, 73, 14));
    	txtChangDate.setBounds(new Rectangle(355, 18, 121, 23));
    	labUserCode.setBounds(new Rectangle(278, 49, 73, 14));
    	txtUserCode.setBounds(new Rectangle(355, 49, 121, 23));
    	labReason.setBounds(new Rectangle(278, 82, 73, 14));
    	scop1.setBounds(new Rectangle(355, 82, 121, 55));
        
        btnInsert.setBounds(new Rectangle(100, 148, 89, 28));
    	btnInsert.setActionCommand("Insert");
        btnInsert.setToolTipText("插入新的调换信息");
    	btnDelete.setBounds(new Rectangle(270, 148, 89, 28));
    	btnDelete.setActionCommand("Delete");
    	btnDelete.setToolTipText("删除调换信息");
    	scop.setBounds(new Rectangle(12, 190, 462, 98));
    	
    	btnInsert.addActionListener(this);  
    	btnDelete.addActionListener(this);
    	tabShow.addMouseListener(this);
        
        Container me=this.getContentPane();
  		me.setLayout(null);
     	me.add(labChangeInvoice);
        me.add(txtChangeInvoice);
        me.add(labOldImei);
        me.add(txtOldImei);
        me.add(labNewImei);
        me.add(txtNewImei);
        me.add(labChangDate);
        me.add(txtChangDate);
        me.add(labUserCode);
   	 	me.add(txtUserCode);
   	 	me.add(labReason);
        me.add(btnInsert);
    	me.add(btnDelete);
    	me.add(scop);
        me.add(scop1);
        scop1.getViewport().add(teaReason);
        scop.getViewport().add(tabShow);
        DatabaseOperate datao = new DatabaseOperate();
  		dtm = new DefaultTableModel(datao.getDataByTabname("changeTel"),datao.getColumnNamesByTabname("changeTel"));
        tabShow.setModel(dtm);//通过dtm模型构造表
        tabShow.setAutoResizeMode(tabShow.AUTO_RESIZE_OFF);//当调整表的大小时,设置表的自动调整模式为不自动调整列的宽度;使用滚动条
    	
		this.setTitle("调换信息");
	  	this.setSize(500,400);
	  	this.setLocationRelativeTo(this);
	  	this.setResizable(false);
	  	this.setVisible(true);
	  }
	  public void actionPerformed(ActionEvent chae)
	  {
	  	String strbtn=chae.getActionCommand();
	  	
	  	if(strbtn.equals("Insert"))
	  	{
	  		int strchi=0;
			try
			{
			  	strchi=Integer.parseInt(txtChangeInvoice.getText().trim());
			}
			catch(NumberFormatException ne)
			{
			  	JOptionPane.showMessageDialog(null,"请输入4位以内整数","提示",JOptionPane.INFORMATION_MESSAGE);
			}
	  		if(check.checkPrimary("changeTel","调换单号",strchi))
			{
			  	JOptionPane.showMessageDialog(null,"该调换单号已存在","提示",JOptionPane.INFORMATION_MESSAGE);
			  	txtChangeInvoice.setText("");
		 		txtChangeInvoice.requestFocus();			
			}
	  		else if(operationBeforeCheck())
	  		{
	  			InsertData ind =new InsertData();
	  			Vector vid = new Vector();
				vid.add(chd.getChangeInvoice());
				vid.add(chd.getOldImei());
				vid.add(chd.getNewImei());
				vid.add(chd.getChangeDate());
				vid.add(chd.getUserCode());
				vid.add(chd.getReason());
				if(ind.ChangeTelInsert(chd))
			  	{
			  		JOptionPane.showMessageDialog(null,"成功插入一行数据,请修改手机状态信息","提示",JOptionPane.INFORMATION_MESSAGE);
			  		dtm.addRow(vid);//添加一行到模型的结尾
			  		new SellTelDialog(null,true);	
			  	}
			  	else
			  	{
			  		JOptionPane.showMessageDialog(null,"数据插入失败","提示",JOptionPane.INFORMATION_MESSAGE);	
			  	}
	  		}	
	  	}
	  	else if(strbtn.equals("Delete"))
		{
		  	Integer n=(Integer)tabShow.getValueAt(row,0);
		  	int strchi=n.intValue();
			DeleteData ded=new DeleteData();
			if(ded.deleteDate("changeTel","调换单号",strchi))
			{
				JOptionPane.showMessageDialog(null,"成功删除一行数据","提示",JOptionPane.INFORMATION_MESSAGE);
				dtm.removeRow(row);//移除模型中 row 位置的行。
			}
			else
			{
				JOptionPane.showMessageDialog(null,"数据删除失败","提示",JOptionPane.INFORMATION_MESSAGE);
			}	
		}
		txtChangeInvoice.setText("");
		txtOldImei.setText("");
		txtNewImei.setText("");
		txtChangDate.setText("");
		txtUserCode.setText("");
		teaReason.setText("");
	  }
	  /*单击表中的一行将数据返回到组件中*/
	  public void mouseEntered(MouseEvent me){}
	  public void mouseExited(MouseEvent me){}
	  public void mousePressed(MouseEvent me){}
	  public void mouseReleased(MouseEvent me){}
	  public void mouseClicked(MouseEvent me)
	  {
	  	row=tabShow.getSelectedRow();
	  	String strchi=String.valueOf(tabShow.getValueAt(row,0));
	  	String stroimei=(String)tabShow.getValueAt(row,1);
	  	String strnimei=(String)tabShow.getValueAt(row,2);
	  	String strchanged=(String)tabShow.getValueAt(row,3);
	  	String strcode=(String)tabShow.getValueAt(row,4);
	  	String strrea=(String)tabShow.getValueAt(row,5);
	  	
	  	txtChangeInvoice.setText(strchi.trim());
	  	txtOldImei.setText(stroimei.trim());
	  	txtNewImei.setText(strnimei.trim());
	  	txtChangDate.setText(strchanged.trim());
	  	txtUserCode.setText(strcode.trim());
	  	teaReason.setText(strrea.trim());
	  	
	  }
	  /* 执行操作前对数据进行验证*/
	  public boolean operationBeforeCheck()
	  {
			int strchi=0;
			try
			{
			  	strchi=Integer.parseInt(txtChangeInvoice.getText());
			}
			catch(NumberFormatException ne)
			{
			  	JOptionPane.showMessageDialog(null,"请输入4位以内整数","提示",JOptionPane.INFORMATION_MESSAGE);
			  	return false;
			}
			String stroimei=txtOldImei.getText().trim();
			String strnimei=txtNewImei.getText().trim();
			String strchanged=txtChangDate.getText().trim();
			String strcode=txtUserCode.getText().trim();
			String strrea=teaReason.getText().trim();
			
			chd.setChangeInvoice(strchi);
			chd.setOldImei(stroimei);
			chd.setNewImei(strnimei);
			chd.setChangeDate(strchanged);
			chd.setUserCode(strcode);
			chd.setReason(strrea);
			
			if(strchi==0||stroimei.length()==0||strnimei.length()==0||strchanged.length()==0||strcode.length()==0||strrea.length()==0)
			{
				JOptionPane.showMessageDialog(null,"带*号的必填,请填写完整","提示",JOptionPane.INFORMATION_MESSAGE);
				return false;
			}
			else if(strchi>9999&&strchi<0)
			{
			  	JOptionPane.showMessageDialog(null,"请输入4位以内整数","提示",JOptionPane.INFORMATION_MESSAGE);
			  	txtChangeInvoice.setText("");
		 		txtChangeInvoice.requestFocus();
		 		return false;
			}
			else if(!(check.checkPrimary("sellTel","手机串号",stroimei)))
			{
				JOptionPane.showMessageDialog(null,"手机未售出","提示",JOptionPane.INFORMATION_MESSAGE);
			  	txtOldImei.setText("");
		 		txtOldImei.requestFocus();
		 		return false;
			}
			else if(!check.checkTelWhetherExist("未卖",strnimei))
			{
				JOptionPane.showMessageDialog(null,"手机已售出","提示",JOptionPane.INFORMATION_MESSAGE);
			  	txtNewImei.setText("");
		 		txtNewImei.requestFocus();
		 		return false;	
			}
			else if(!check.checkDate(strchanged))
			{
			  	JOptionPane.showMessageDialog(null,"请输入准确的,如1996-02-03格式的日期","提示",JOptionPane.INFORMATION_MESSAGE);
			  	txtChangDate.setText("");
		 		txtChangDate.requestFocus();
		 		return false;
			}
			else if(!(check.checkPrimary("users","工号",strcode)))
			{
				JOptionPane.showMessageDialog(null,"无此员工信息","提示",JOptionPane.INFORMATION_MESSAGE);
			  	txtUserCode.setText("");
		 		txtUserCode.requestFocus();
		 		return false;
			}
			else if(strrea.length()>25)
			{
				JOptionPane.showMessageDialog(null,"字数过长","提示",JOptionPane.INFORMATION_MESSAGE);
		  		teaReason.setText("");
	 			teaReason.requestFocus();
	 			return false;
			}
			else
			{
				return true;
			}
	  }

}

⌨️ 快捷键说明

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