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

📄 dialogevent.java

📁 聊天工具
💻 JAVA
字号:
package server.userpane;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;

import javax.swing.JButton;
import javax.swing.JOptionPane;

import server.dao.UserDAO;
import server.factory.DaoFactory;
import utils.UserInfoBean;

/**
 * 用于显示、添加、修改用户信息的对话框中的事件
 * @author 洪景泉
 *
 */
public class DialogEvent implements ActionListener {
		private DialogPane dialog = null;
		public DialogEvent() {
			
		}
		public DialogEvent(DialogPane dialog) {
			this.dialog = dialog;

		}

		public void actionPerformed(ActionEvent e) {
			// TODO Auto-generated method stub
			JButton btnTemp = (JButton) e.getSource();
			// 添加事件
			if (btnTemp.getActionCommand().equals("save")) {
				if (dialog.getNameText().getText().trim().equals("")) {
					JOptionPane.showMessageDialog(dialog, "用户姓名不能为空");
					dialog.getNameText().setText("");
					dialog.getNameText().requestFocus();
					return;
				}
				if (dialog.getPwdText().getPassword().length<6) {
					JOptionPane.showMessageDialog(dialog, "用户密码不能小于6位,为确保安全请重新输入");
					dialog.getPwdText().setText("");
					dialog.getPwdText().requestFocus();
					return;
				}
				if (dialog.getDepartmentCom().getSelectedItem().toString().trim().equals("")) {
					JOptionPane.showMessageDialog(dialog, "请选择所在部门!");
					dialog.getDepartmentCom().requestFocus();
					return;
				}
				if(!dialog.getAgeText().getText().trim().equals("")){
					if(dialog.getAgeText().getText().trim().matches("\\D*")){
						//System.out.println(dialog.getAgeText().getText().matches("\\D*"));
						JOptionPane.showMessageDialog(dialog,"年龄只能是数字!");
						dialog.getAgeText().setText("");
						dialog.getAgeText().requestFocus();
						return;
					}
					else{
						int age =Integer.parseInt(dialog.getAgeText().getText());
						//你输入的年龄错误,请重新输入
						if(age<18||age>100){
							JOptionPane.showMessageDialog(dialog,"你输入的年龄只能在18-100岁之间!");
							dialog.getAgeText().setText("");
							dialog.getAgeText().requestFocus();
							return;
						}
					}
				}
				
				if(dialog.getPhoneText().getText().matches("\\D*")&&!(dialog.getPhoneText().getText().trim().equals(""))){
					JOptionPane.showMessageDialog(dialog,"电话号码只能是数字!");
					dialog.getPhoneText().setText("");
					dialog.getPhoneText().requestFocus();
					return;
				}
				
				UserInfoBean userBean=createUserBean();
					
				UserDAO userDao=DaoFactory.getUserDao();
				userDao.insert(userBean);
							
				dialog.getQqServerFrm().getUserPane().getCenterPane().reLoadTable();

				dialog.dispose();
				//infoDialog.getQqServerFrm().getUserPane().getBottomPane().setButtonEnabled(true);
					
	

//				dialog.getQqServerFrm().getUserPane().getCenterPane().resetTable();
//				dialog.dispose();
//				dialog.getQqServerFrm().getUserPane().getBottomPane().setButtonEnabled(true);
			
			}else if(btnTemp.getActionCommand().equals("ok")) {
				if (dialog.getNameText().getText().trim().equals("")) {
					JOptionPane.showMessageDialog(dialog, "用户姓名不能为空");
					dialog.getNameText().setText("");
					dialog.getNameText().requestFocus();
					return;
				}
				if (dialog.getPwdText().getPassword().length<6) {
					JOptionPane.showMessageDialog(dialog, "用户密码不能小于6位,为确保安全请重新输入");
					dialog.getPwdText().setText("");
					dialog.getPwdText().requestFocus();
					return;
				}
				if (dialog.getDepartmentCom().getSelectedItem().toString().trim().equals("")) {
					JOptionPane.showMessageDialog(dialog, "请选择所在部门!");
					dialog.getDepartmentCom().requestFocus();
					return;
				}
				if(!dialog.getAgeText().getText().trim().equals("")){
					if(dialog.getAgeText().getText().trim().matches("\\D*")){
						//System.out.println(dialog.getAgeText().getText().matches("\\D*"));
						JOptionPane.showMessageDialog(dialog,"年龄只能是数字!");
						dialog.getAgeText().setText("");
						dialog.getAgeText().requestFocus();
						return;
					}
					else{
						int age =Integer.parseInt(dialog.getAgeText().getText());
						//你输入的年龄错误,请重新输入
						if(age<18||age>100){
							JOptionPane.showMessageDialog(dialog,"你输入的年龄只能在18-100岁之间!");
							dialog.getAgeText().setText("");
							dialog.getAgeText().requestFocus();
							return;
						}
					}
				}
				
				if(dialog.getPhoneText().getText().matches("\\D*")&&!(dialog.getPhoneText().getText().trim().equals(""))){
					JOptionPane.showMessageDialog(dialog,"电话号码只能是数字!");
					dialog.getPhoneText().setText("");
					dialog.getPhoneText().requestFocus();
					return;
				}
				
				UserInfoBean userBean=createUserBean();
				
				UserDAO userDao=DaoFactory.getUserDao();	
				//OracleDAO userDao = new OracleDAO();
				userDao.update(userBean);
							
				dialog.getQqServerFrm().getUserPane().getCenterPane().reLoadTable();
				dialog.getQqServerFrm().getServerPane().getCenterPane().reLoadTable();
				dialog.dispose();
			}else if(btnTemp.getActionCommand().equals("cancle")){
				dialog.dispose();
			}else if(btnTemp.getActionCommand().equals("close")){
				dialog.dispose();
			}
			
			
			
		}

		/*
		 * 创建数据封装在传参
		 * */
		private UserInfoBean createUserBean() {
			UserInfoBean userBean = new UserInfoBean();
			byte age;
			if(dialog.getAgeText().getText().trim().equals("")){
				age=0;
			}else{
				age=Byte.parseByte(dialog.getAgeText().getText().trim());
			}

						
			userBean.setSID(dialog.getIDText().getText().trim());
			userBean.setSName(dialog.getNameText().getText().trim());
			userBean.setSPassword(new String(dialog.getPwdText().getPassword()));
			userBean.setSNickName(dialog.getNickNameText().getText().trim());
			userBean.setSSex(((String)dialog.getSexCom().getSelectedItem()).trim());
			userBean.setNAge(age);
			userBean.setSDepartment((dialog.getDepartmentCom().getSelectedItem()).toString());
			userBean.setSPhone(dialog.getPhoneText().getText().trim());
			userBean.setSAddress(dialog.getAddressText().getText().trim());
			
			//日期类型判断
		    DateFormat sdf = new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss");
			Date dateReg=new Date();
				
			try {
				dateReg=sdf.parse(dialog.getRegTimeText().getText().trim());
			} catch (java.text.ParseException e) {
				e.printStackTrace();
				JOptionPane.showMessageDialog(dialog,"日期格式错误!");
				return null;
			}
			
			userBean.setDRegTime(dateReg);
			
			userBean.setNLoginCount(Long.parseLong(dialog.getLoginCountText().getText().trim()));
			
			if(dialog.getOnLineText().getText().trim().equals("在线"))
				userBean.setSOnline("1");
			else
				userBean.setSOnline("0");
			userBean.setSIcon(String.valueOf(dialog.getIconCom().getSelectedIndex()+ 1));

			return userBean;

		}
	}

⌨️ 快捷键说明

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