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

📄 addclientdialog.java

📁 本文首先介绍了这些考试系统的形成和发展过程
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
			BorderLayout borderLayout2 = new BorderLayout();
			borderLayout2.setHgap(6);
			phonePanel = new JPanel();
			phonePanel.setLayout(borderLayout2);
			phonePanel.add(phoneLabel, java.awt.BorderLayout.WEST);
			phonePanel.add(getPhoneTextField(), java.awt.BorderLayout.CENTER);
		}
		return phonePanel;
	}

	/**
	 * This method initializes emailPanel	
	 * 	
	 * @return javax.swing.JPanel	
	 */
	private JPanel getEmailPanel() {
		if (emailPanel == null) {
			emailLabel = new JLabel();
			emailLabel.setText("电邮");
			BorderLayout borderLayout3 = new BorderLayout();
			borderLayout3.setHgap(6);
			emailPanel = new JPanel();
			emailPanel.setLayout(borderLayout3);
			emailPanel.add(emailLabel, java.awt.BorderLayout.WEST);
			emailPanel.add(getEmailTextField(), java.awt.BorderLayout.CENTER);
		}
		return emailPanel;
	}

	/**
	 * This method initializes mobilePanel	
	 * 	
	 * @return javax.swing.JPanel	
	 */
	private JPanel getMobilePanel() {
		if (mobilePanel == null) {
			mobileLabel = new JLabel();
			mobileLabel.setText("手机");
			BorderLayout borderLayout4 = new BorderLayout();
			borderLayout4.setHgap(6);
			mobilePanel = new JPanel();
			mobilePanel.setLayout(borderLayout4);
			mobilePanel.add(mobileLabel, java.awt.BorderLayout.WEST);
			mobilePanel.add(getMobileTextField(), java.awt.BorderLayout.CENTER);
		}
		return mobilePanel;
	}

	/**
	 * This method initializes qqPanel	
	 * 	
	 * @return javax.swing.JPanel	
	 */
	private JPanel getQqPanel() {
		if (qqPanel == null) {
			qqLabel = new JLabel();
			qqLabel.setText("QQ ");
			BorderLayout borderLayout5 = new BorderLayout();
			borderLayout5.setHgap(6);
			qqPanel = new JPanel();
			qqPanel.setLayout(borderLayout5);
			qqPanel.add(qqLabel, java.awt.BorderLayout.WEST);
			qqPanel.add(getQqTextField(), java.awt.BorderLayout.CENTER);
		}
		return qqPanel;
	}

	/**
	 * This method initializes sexPanel	
	 * 	
	 * @return javax.swing.JPanel	
	 */
	private JPanel getSexPanel() {
		if (sexPanel == null) {
			sexLabel = new JLabel();
			sexLabel.setText("性别");
			BorderLayout borderLayout6 = new BorderLayout();
			borderLayout6.setHgap(6);
			sexPanel = new JPanel();
			sexPanel.setLayout(borderLayout6);
			sexPanel.add(sexLabel, java.awt.BorderLayout.WEST);
			sexPanel.add(getSexComboBox(), java.awt.BorderLayout.CENTER);
		}
		return sexPanel;
	}

	/**
	 * This method initializes companyPanel	
	 * 	
	 * @return javax.swing.JPanel	
	 */
	private JPanel getCompanyPanel() {
		if (companyPanel == null) {
			companyLabel = new JLabel();
			companyLabel.setText("公司");
			BorderLayout borderLayout7 = new BorderLayout();
			borderLayout7.setHgap(6);
			companyPanel = new JPanel();
			companyPanel.setLayout(borderLayout7);
			companyPanel.add(companyLabel, java.awt.BorderLayout.WEST);
			companyPanel.add(getCompanyComboBox(), java.awt.BorderLayout.CENTER);
		}
		return companyPanel;
	}

	/**
	 * This method initializes birthdayPanel	
	 * 	
	 * @return javax.swing.JPanel	
	 */
	private JPanel getBirthdayPanel() {
		if (birthdayPanel == null) {
			birthdayLabel = new JLabel();
			birthdayLabel.setText("生日");
			BorderLayout borderLayout8 = new BorderLayout();
			borderLayout8.setHgap(6);
			birthdayPanel = new JPanel();
			birthdayPanel.setLayout(borderLayout8);
			birthdayPanel.add(birthdayLabel, java.awt.BorderLayout.WEST);
			birthdayPanel.add(getBirthdayDatePicker(), java.awt.BorderLayout.CENTER);
		}
		return birthdayPanel;
	}

	/**
	 * This method initializes nameTextField	
	 * 	
	 * @return javax.swing.JTextField	
	 */
	private JTextField getNameTextField() {
		if (nameTextField == null) {
			nameTextField = new JTextField();
		}
		return nameTextField;
	}

	/**
	 * This method initializes phoneTextField	
	 * 	
	 * @return javax.swing.JTextField	
	 */
	private JTextField getPhoneTextField() {
		if (phoneTextField == null) {
			phoneTextField = new JTextField();
		}
		return phoneTextField;
	}

	/**
	 * This method initializes emailTextField	
	 * 	
	 * @return javax.swing.JTextField	
	 */
	private JTextField getEmailTextField() {
		if (emailTextField == null) {
			emailTextField = new JTextField();
		}
		return emailTextField;
	}

	/**
	 * This method initializes mobileTextField	
	 * 	
	 * @return javax.swing.JTextField	
	 */
	private JTextField getMobileTextField() {
		if (mobileTextField == null) {
			mobileTextField = new JTextField();
		}
		return mobileTextField;
	}

	/**
	 * This method initializes qqTextField	
	 * 	
	 * @return javax.swing.JTextField	
	 */
	private JTextField getQqTextField() {
		if (qqTextField == null) {
			qqTextField = new JTextField();
		}
		return qqTextField;
	}

	/**
	 * This method initializes sexComboBox	
	 * 	
	 * @return javax.swing.JComboBox	
	 */
	private JComboBox getSexComboBox() {
		if (sexComboBox == null) {		
			sexComboBox = new JComboBox();
			
			DefaultComboBoxModel model = new DefaultComboBoxModel();
			
			model.addElement(Client.MALE);
			model.addElement(Client.FEMALE);
			model.setSelectedItem(Client.MALE);
			
			sexComboBox.setModel(model);
		}
		return sexComboBox;
	}

	/**
	 * This method initializes companyComboBox	
	 * 	
	 * @return javax.swing.JComboBox	
	 */
	private JComboBox getCompanyComboBox() {
		if (companyComboBox == null) {
			companyComboBox = new JComboBox();
		}
		return companyComboBox;
	}

	/**
	 * This method initializes birthdayDatePicker	
	 * 	
	 * @return com.michaelbaranov.microba.calendar.DatePicker	
	 */
	private DatePicker getBirthdayDatePicker() {
		if (birthdayDatePicker == null) {
			birthdayDatePicker = new DatePicker();
			birthdayDatePicker.setFieldEditable(false);
			birthdayDatePicker.setShowNoneButton(false);
		}
		return birthdayDatePicker;
	}
	
	public void intiView(Category category, Company company){
		action.initView(category, company);
	}
	

	/**
	 * This method initializes photoFileChooser	
	 * 	
	 * @return javax.swing.JFileChooser	
	 */
	private JFileChooser getPhotoFileChooser() {
		if (photoFileChooser == null) {
			photoFileChooser = new JFileChooser();
			photoFileChooser.setSize(new java.awt.Dimension(283,157));
			photoFileChooser.setFileFilter(getPhotoFileFilter());
		}
		return photoFileChooser;
	}

	/**
	 * This method initializes photoFileFilter	
	 * 	
	 * @return net.robin.crm.ui.PhotoFileFilter	
	 */
	private PhotoFileFilter getPhotoFileFilter() {
		if (photoFileFilter == null) {
			photoFileFilter = new PhotoFileFilter();
		}
		return photoFileFilter;
	}

	
	private class Action {
		
		private CRMService service;
		
		private DefaultComboBoxModel categoryComboBoxModel = new DefaultComboBoxModel();
		
		private DefaultComboBoxModel companyComboBoxModel = new DefaultComboBoxModel();
		
		private BufferedImage photo;
		//private static final int WIDTH = 150;
		//private static final int HEIGHT = 214;
		
		
		public Action(){
			try {
				service = ServiceHandeler.getInstance().getService();
			} catch (ConfigException e) {
				e.printStackTrace();
				Util.error("系统配置错误"+e.getMessage());
			} catch (InstanceExeption e) {
				e.printStackTrace();
				Util.error("不能实例化服务"+e.getMessage());
			} catch (ServiceException e) {
				e.printStackTrace();
				Util.error("服务异常"+e.getMessage());
			}
		}
		
		
		
		public void initView(Category category, Company company){
			
			try {
				
				//初始化分类列表
				List categories = service.findCategories();
				
				categoryComboBoxModel.removeAllElements();
				
				for (Iterator iter = categories.iterator(); iter.hasNext();) {
					Category c = (Category) iter.next();
					categoryComboBoxModel.addElement(c);
				}
				if(category!=null)
					categoryComboBoxModel.setSelectedItem(category);
				
				getCategoryComboBox().setModel(categoryComboBoxModel);
				
				//初始化公司列表
				List companies = service.findCompanies();
				
				companyComboBoxModel.removeAllElements();
				
				for (Iterator iter = companies.iterator(); iter.hasNext();) {
					Company c = (Company) iter.next();
					companyComboBoxModel.addElement(c);
				}
				if(company!=null)
					companyComboBoxModel.setSelectedItem(company);
				
				getCompanyComboBox().setModel(companyComboBoxModel);
				
				
			} catch (ServiceException e) {
				e.printStackTrace();
				Util.error("服务异常"+e.getMessage());
			}
		}

		private void loadPhoto(){
			
			int value = getPhotoFileChooser().showOpenDialog(AddClientDialog.this);
			
			if(value != JFileChooser.APPROVE_OPTION){
				return;
			}
			
			File file = getPhotoFileChooser().getSelectedFile();
			
			if(! file.isFile() ){
				JOptionPane.showMessageDialog(AddClientDialog.this, "你必须选择一个文件!");
				return;
			}
			
			if(!file.exists()){
				JOptionPane.showMessageDialog(AddClientDialog.this, "你必须选择一个文件!");
				return;
			}
			
			try {
				photo = Util.loadPhoto(file);
				
				photo = Util.resizePhoto(photo);
				
				photoLabel.setIcon(new ImageIcon(photo));
				
			} catch (IOException e) {
				e.printStackTrace();
				JOptionPane.showMessageDialog(AddClientDialog.this, "图片装载失败!"+ e.getMessage());
				return;
			}
			
		}
		
		public void ok(){
			
			String name = getNameTextField().getText();
			String email = getEmailTextField().getText();
			String phone =getPhoneTextField().getText();
			String mobile = getMobileTextField().getText();
			String qq = getQqTextField().getText();
			String sex = (String) getSexComboBox().getSelectedItem();
			
			Category category = (Category) getCategoryComboBox().getSelectedItem();
			Company company = (Company) getCompanyComboBox().getSelectedItem();
			
			Date birthday = getBirthdayDatePicker().getDate();
			
			String photo = "";
			if(this.photo!=null)
				try {
					photo = Util.savePhoto(this.photo);
				} catch (IOException e) {
					e.printStackTrace();
					JOptionPane.showMessageDialog(AddClientDialog.this, "图片保存失败!");
					return;
				}
			
			if(name==null || name.trim().equals("")){
				JOptionPane.showMessageDialog(AddClientDialog.this, "必须输入用户名");
				return;
			}
			
			Client client = new Client();
			client.setBirthday(birthday);
			client.setCategory(category);
			client.setCompany(company);
			client.setEmail(email);
			client.setMobile(mobile);
			client.setName(name);
			client.setPhone(phone);
			client.setQq(qq);
			client.setPhoto(photo);
			client.setSex(sex);
			
			try {
				service.insertClient(client);
				
				clear();
				setVisible(false);
				
			} catch (ServiceException e) {
				e.printStackTrace();
				JOptionPane.showMessageDialog(AddClientDialog.this, "添加失败"+e.getMessage());
				
				try {
					Util.removePhoto(photo);
				} catch (IOException e1) {
					e1.printStackTrace();
				}
				
				return;
			}
				
		}
		
		public void cancel(){
			clear();
			setVisible(false);
		}

		private void clear() {
			
			getNameTextField().setText(null);
			getPhoneTextField().setText(null);
			getMobileTextField().setText(null);
			getQqTextField().setText(null);
			getEmailTextField().setText(null);
			
			photo = null;
			
			photoLabel.setIcon(new ImageIcon(getClass().getResource("/net/robin/crm/ui/mk.jpg")));

		}
	}


	/**
	 * This method initializes jFileChooserfff	
	 * 	
	 * @return javax.swing.JFileChooser	
	 */
	private JFileChooser getJFileChooserfff() {
		if (jFileChooserfff == null) {
			jFileChooserfff = new JFileChooser();
			jFileChooserfff.setSize(new java.awt.Dimension(267,95));
		}
		return jFileChooserfff;
	}

}  //  @jve:decl-index=0:visual-constraint="10,25"

⌨️ 快捷键说明

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