亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? personnelsetpanel.java

?? &#61548 簡單適用的考勤和獎懲管理。 &#61548 簡單適用的培訓管理。 &#61548 針對企業中不同的待遇標準
?? JAVA
字號:
package com.mwq.frame.treatement;

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.util.Iterator;
import java.util.List;
import java.util.Set;
import java.util.Vector;

import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JSplitPane;
import javax.swing.JTextArea;
import javax.swing.ListSelectionModel;
import javax.swing.border.EtchedBorder;
import javax.swing.border.TitledBorder;
import javax.swing.table.DefaultTableModel;

import com.mwq.frame.common.DeptAndPersonnelDialog;
import com.mwq.hibernate.Dao;
import com.mwq.hibernate.HibernateSessionFactory;
import com.mwq.hibernate.mapping.TbDutyInfo;
import com.mwq.hibernate.mapping.TbReckoning;
import com.mwq.hibernate.mapping.TbReckoningList;
import com.mwq.hibernate.mapping.TbRecord;
import com.mwq.mwing.MTable;

public class PersonnelSetPanel extends JPanel {

	private JTextArea explainTextArea;

	private MTable listTable;

	private Vector<String> listTableColumnV;

	private Vector<Vector<String>> listTableValueV;

	private DefaultTableModel listTableModel;

	private MTable reckoningTable;

	private Vector<String> reckoningTableColumnV;

	private Vector<Vector<String>> reckoningTableValueV;

	private DefaultTableModel reckoningTableModel;

	private final Dao dao = Dao.getInstance();

	private final Vector<TbReckoning> reckoningV = new Vector<TbReckoning>();

	/**
	 * Create the panel
	 */
	public PersonnelSetPanel() {
		super();
		setLayout(new BorderLayout());

		final JPanel buttonPanel = new JPanel();
		buttonPanel.setBackground(Color.WHITE);
		add(buttonPanel, BorderLayout.NORTH);

		final JButton addButton = new JButton();
		addButton.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				int selectedRow = reckoningTable.getSelectedRow();
				if (selectedRow == -1) {
					JOptionPane.showMessageDialog(null,
							"請先到“賬套管理”模塊建立賬套,然后才能添加人員!", "友情提示",
							JOptionPane.INFORMATION_MESSAGE);
				} else {
					DeptAndPersonnelDialog dpDialog = new DeptAndPersonnelDialog();
					Dimension screenSize = Toolkit.getDefaultToolkit()
							.getScreenSize();
					int w = 550;
					int h = 400;
					int x = (screenSize.width - w) / 2;
					int y = (screenSize.height - h) / 2;
					dpDialog.setBounds(x, y, w, h);
					dpDialog.setVisible(true);
					int rowCount = listTable.getRowCount();
					Vector<Vector<String>> selectedRecordV = dpDialog
							.getSelectedRecordV();
					TbReckoning reckoning = reckoningV.get(selectedRow);
					for (int i = 0; i < selectedRecordV.size(); i++) {
						Vector<String> addRecordV = selectedRecordV.get(i);
						boolean had = false;
						Set eckoningLists = reckoning.getTbReckoningLists();
						Iterator reckoningListIt = eckoningLists.iterator();
						while (reckoningListIt.hasNext()) {
							TbReckoningList reckoningList = (TbReckoningList) reckoningListIt
									.next();
							String recordNumber = reckoningList.getTbRecord()
									.getRecordNumber();
							if (addRecordV.get(1).equals(recordNumber)) {
								had = true;
								break;
							}
						}
						if (!had) {
							addRecordV.set(0, ++rowCount + "");
							listTableModel.addRow(addRecordV);
							//
							TbReckoningList reckoningList = new TbReckoningList();
							reckoningList.setTbReckoning(reckoning);
							eckoningLists.add(reckoningList);
							TbRecord record = (TbRecord) dao
									.queryRecordByNum(addRecordV.get(1));
							record.setTbReckoningList(reckoningList);
							reckoningList.setTbRecord(record);
						}
					}
					rowCount -= 1;
					listTable.setRowSelectionInterval(rowCount, rowCount);
					dao.updateObject(reckoning);
					HibernateSessionFactory.closeSession();
				}
			}
		});
		addButton.setText("添加人員");
		buttonPanel.add(addButton);

		final JButton delButton = new JButton();
		delButton.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				int rSelectedRow = reckoningTable.getSelectedRow();
				int[] selectedRows = listTable.getSelectedRows();
				if (selectedRows.length == 0) {
					JOptionPane.showMessageDialog(null, "請選擇要刪除的人員!", "友情提示",
							JOptionPane.INFORMATION_MESSAGE);
					return;
				} else {
					String infos[] = new String[selectedRows.length + 1];
					infos[0] = "確定要從賬套“"
							+ reckoningTable.getValueAt(rSelectedRow, 1)
							+ "”中刪除下列人員?";
					for (int i = 0; i < selectedRows.length; i++) {
						infos[i + 1] = "    " + (i + 1) + "、"
								+ listTable.getValueAt(selectedRows[i], 1)
								+ "  "
								+ listTable.getValueAt(selectedRows[i], 2);
					}
					int i = JOptionPane.showConfirmDialog(null, infos, "友情提示",
							JOptionPane.YES_NO_OPTION);
					if (i == 0) {
						TbReckoning reckoning = reckoningV.get(rSelectedRow);
						for (int j = selectedRows.length - 1; j >= 0; j--) {
							Iterator reckoningListIt = reckoning
									.getTbReckoningLists().iterator();
							while (reckoningListIt.hasNext()) {
								TbReckoningList reckoningList = (TbReckoningList) reckoningListIt
										.next();
								String recordNumber = reckoningList
										.getTbRecord().getRecordNumber();
								if (listTable.getValueAt(selectedRows[j], 1)
										.equals(recordNumber)) {
									reckoning.getTbReckoningLists().remove(
											reckoningList);
									break;
								}
							}
							listTableModel.removeRow(selectedRows[j]);
						}
						dao.updateObject(reckoning);
						HibernateSessionFactory.closeSession();
						int row = selectedRows[0];
						if (row < listTable.getRowCount()) {
							for (int j = row; j < listTable.getRowCount(); j++) {
								listTable.setValueAt(j + 1, j, 0);
							}
						} else {
							row = listTable.getRowCount() - 1;
						}
						if (row >= 0)
							listTable.setRowSelectionInterval(row, row);
						//
						JOptionPane.showMessageDialog(null, "刪除完成!", "友情提示",
								JOptionPane.INFORMATION_MESSAGE);
					}
				}
			}
		});
		delButton.setText("刪除人員");
		buttonPanel.add(delButton);

		final JButton delAllButton = new JButton();
		delAllButton.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				int selectedRow = reckoningTable.getSelectedRow();
				int i = JOptionPane.showConfirmDialog(null, "確定要刪除賬套“"
						+ reckoningTable.getValueAt(selectedRow, 1)
						+ "”中的所有人員?", "友情提示", JOptionPane.YES_NO_OPTION);
				if (i == 0) {
					listTableValueV.removeAllElements();
					listTableModel.setDataVector(listTableValueV,
							listTableColumnV);
					TbReckoning reckoning = reckoningV.get(selectedRow);
					reckoning.getTbReckoningLists().clear();
					dao.updateObject(reckoning);
					HibernateSessionFactory.closeSession();
					JOptionPane.showMessageDialog(null, "刪除完成!", "友情提示",
							JOptionPane.INFORMATION_MESSAGE);
				}
			}
		});
		delAllButton.setText("全部刪除");
		buttonPanel.add(delAllButton);

		final JSplitPane splitPane = new JSplitPane();
		splitPane.setDividerLocation(260);
		add(splitPane);

		final JPanel reckoningPanel = new JPanel();
		reckoningPanel.setBackground(Color.WHITE);
		splitPane.setLeftComponent(reckoningPanel);
		reckoningPanel.setLayout(new BorderLayout());

		final JLabel reckoningLabel = new JLabel();
		reckoningLabel.setPreferredSize(new Dimension(0, 30));
		reckoningLabel.setText("  賬套列表:");
		reckoningPanel.add(reckoningLabel, BorderLayout.NORTH);

		final JScrollPane reckoningScrollPane = new JScrollPane();
		reckoningPanel.add(reckoningScrollPane);

		reckoningTableColumnV = new Vector<String>();
		reckoningTableColumnV.add("序號");
		reckoningTableColumnV.add("賬套名稱");

		reckoningTableValueV = new Vector<Vector<String>>();

		reckoningTableModel = new DefaultTableModel(reckoningTableValueV,
				reckoningTableColumnV);

		reckoningTable = new MTable(reckoningTableModel);
		reckoningTable.addMouseListener(new MouseAdapter() {
			public void mouseClicked(MouseEvent arg0) {
				refreshListTableValue(reckoningTable.getSelectedRow());
			}
		});
		reckoningTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
		reckoningScrollPane.setViewportView(reckoningTable);

		final JLabel reckoningRightLabel = new JLabel();
		reckoningRightLabel.setPreferredSize(new Dimension(12, 20));
		reckoningPanel.add(reckoningRightLabel, BorderLayout.EAST);

		final JLabel reckoningLeftLabel = new JLabel();
		reckoningLeftLabel.setPreferredSize(new Dimension(12, 20));
		reckoningPanel.add(reckoningLeftLabel, BorderLayout.WEST);

		final JPanel listPanel = new JPanel();
		listPanel.setBackground(Color.WHITE);
		splitPane.setRightComponent(listPanel);
		listPanel.setLayout(new BorderLayout());

		final JLabel listLabel = new JLabel();
		listLabel.setPreferredSize(new Dimension(0, 30));
		listLabel.setText("  人員列表:");
		listPanel.add(listLabel, BorderLayout.NORTH);

		final JScrollPane listScrollPane = new JScrollPane();
		listPanel.add(listScrollPane);

		listTableColumnV = new Vector<String>();
		String listTableColumns[] = { "序號", "檔案編號", "姓名", "性別", "部門", "職務" };
		for (int i = 0; i < listTableColumns.length; i++) {
			listTableColumnV.add(listTableColumns[i]);
		}

		listTableValueV = new Vector<Vector<String>>();

		listTableModel = new DefaultTableModel(listTableValueV,
				listTableColumnV);

		listTable = new MTable(listTableModel);
		listScrollPane.setViewportView(listTable);

		final JLabel listLeftLabel = new JLabel();
		listLeftLabel.setPreferredSize(new Dimension(12, 20));
		listPanel.add(listLeftLabel, BorderLayout.WEST);

		final JPanel explainPanel = new JPanel();
		explainPanel.setBorder(new TitledBorder(null, "", TitledBorder.DEFAULT_JUSTIFICATION, TitledBorder.DEFAULT_POSITION, null, null));
		explainPanel.setBackground(Color.WHITE);
		explainPanel.setLayout(new GridBagLayout());
		add(explainPanel, BorderLayout.SOUTH);

		final JLabel explainLabel = new JLabel();
		explainLabel.setText("賬套說明:");
		final GridBagConstraints gridBagConstraints_1 = new GridBagConstraints();
		gridBagConstraints_1.insets = new Insets(0, 0, 60, 0);
		explainPanel.add(explainLabel, gridBagConstraints_1);

		final JScrollPane explainScrollPane = new JScrollPane();
		explainScrollPane.setPreferredSize(new Dimension(766, 80));
		final GridBagConstraints gridBagConstraints = new GridBagConstraints();
		gridBagConstraints.gridy = 0;
		gridBagConstraints.gridx = 1;
		explainPanel.add(explainScrollPane, gridBagConstraints);

		explainTextArea = new JTextArea();
		explainTextArea.setLineWrap(true);
		explainTextArea.setEditable(false);
		explainTextArea.setRows(3);
		explainTextArea.setColumns(600);
		explainScrollPane.setViewportView(explainTextArea);
		//

		Iterator reckoningIt = dao.queryReckoning().iterator();
		int reckoningNum = 1;
		while (reckoningIt.hasNext()) {
			TbReckoning reckoning = (TbReckoning) reckoningIt.next();
			reckoningV.add(reckoning);
			Vector<String> rowValueV = new Vector<String>();
			rowValueV.add("" + reckoningNum++);
			rowValueV.add(reckoning.getName());
			reckoningTableValueV.add(rowValueV);
		}

		if (reckoningTable.getRowCount() > 0) {
			reckoningTable.setRowSelectionInterval(0, 0);
			refreshListTableValue(0);
		}
		HibernateSessionFactory.closeSession();
	}

	public void refreshListTableValue(int reckoningTableSelectedRow) {
		listTableValueV.removeAllElements();
		TbReckoning reckoning = reckoningV.get(reckoningTableSelectedRow);
		explainTextArea.setText(reckoning.getExplain());
		Iterator reckoningListIt = reckoning.getTbReckoningLists().iterator();
		int listNum = 1;
		while (reckoningListIt.hasNext()) {
			TbReckoningList reckoningList = (TbReckoningList) reckoningListIt
					.next();
			TbRecord record = reckoningList.getTbRecord();
			Vector<String> rowValueV = new Vector<String>();
			rowValueV.add("" + listNum++);
			rowValueV.add(record.getRecordNumber());
			rowValueV.add(record.getName());
			rowValueV.add(record.getSex());
			TbDutyInfo dutyInfo = record.getTbDutyInfo();
			rowValueV.add(dutyInfo.getTbDept().getName());
			rowValueV.add(dutyInfo.getTbDuty().getName());
			listTableValueV.add(rowValueV);
		}
		listTableModel.setDataVector(listTableValueV, listTableColumnV);
		if (listTable.getRowCount() > 0)
			listTable.setRowSelectionInterval(0, 0);
	}

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一本色道久久加勒比精品 | 精品国产乱码久久久久久闺蜜| 欧美成人精精品一区二区频| 亚洲日韩欧美一区二区在线| 精油按摩中文字幕久久| 欧美性受xxxx黑人xyx| 国产日韩欧美在线一区| 欧美a一区二区| 日本高清成人免费播放| 国产日产亚洲精品系列| 久久精品国产99| 欧美肥妇free| 亚洲精品中文在线影院| 成人一级片在线观看| 久久久www成人免费无遮挡大片| 午夜亚洲福利老司机| 色域天天综合网| 中文字幕亚洲成人| 成人激情文学综合网| 久久久青草青青国产亚洲免观| 日韩黄色免费电影| 欧美精品日韩一本| 亚洲一二三四在线| 色网综合在线观看| 亚洲欧美日韩电影| 色哟哟国产精品| 综合av第一页| 色婷婷综合五月| 亚洲三级在线免费观看| 成人av网站免费| 欧美国产丝袜视频| www.日韩在线| 亚洲欧美日韩中文播放| 91精品福利视频| 亚洲欧美日韩在线不卡| 色噜噜狠狠色综合中国| 亚洲午夜在线电影| 69av一区二区三区| 蜜桃av一区二区| 久久美女艺术照精彩视频福利播放| 日韩中文字幕一区二区三区| 欧美一级一级性生活免费录像| 午夜电影久久久| 日韩欧美国产一区在线观看| 麻豆精品在线看| 久久久久久97三级| 91免费观看视频在线| 亚洲成av人在线观看| 欧美美女喷水视频| 欧美a一区二区| 日本一区二区三区免费乱视频| 国产成人av电影在线观看| 国产精品伦一区| 欧美日韩一区二区欧美激情| 久久国产精品第一页| 欧美激情综合网| 欧美日韩在线播放一区| 蜜臀av国产精品久久久久| 亚洲国产精品黑人久久久| 91在线一区二区| 日韩激情一区二区| 日本一区二区三区四区| 欧美婷婷六月丁香综合色| 麻豆国产91在线播放| √…a在线天堂一区| 91精品久久久久久久99蜜桃 | 亚洲最新视频在线播放| 7777精品伊人久久久大香线蕉的 | 久久久影视传媒| 色999日韩国产欧美一区二区| 天堂av在线一区| 中文字幕精品—区二区四季| 欧美熟乱第一页| 国产91精品露脸国语对白| 亚洲欧美一区二区三区孕妇| 精品国产乱码久久久久久1区2区 | 亚洲狠狠爱一区二区三区| 欧美精品一区二区精品网| 一本色道久久综合亚洲91 | 日本成人在线不卡视频| 欧美国产精品专区| 欧美一区二区三区在线电影| 大陆成人av片| 精品中文字幕一区二区小辣椒| 亚洲蜜臀av乱码久久精品| 26uuu久久综合| 欧美日韩午夜影院| 8v天堂国产在线一区二区| 成人激情免费网站| 国产精品羞羞答答xxdd| 三级欧美韩日大片在线看| 亚洲人午夜精品天堂一二香蕉| 欧美www视频| 欧美电影一区二区| 在线视频你懂得一区| 99久久亚洲一区二区三区青草| 久久不见久久见免费视频1| 午夜电影网亚洲视频| 一区二区不卡在线视频 午夜欧美不卡在 | 精品毛片乱码1区2区3区| 91激情五月电影| 99久久免费视频.com| 成人免费毛片a| 国产精品一区二区黑丝| 久久精品av麻豆的观看方式| 亚洲丰满少妇videoshd| 亚洲综合精品自拍| 亚洲综合无码一区二区| 中文字幕一区二区三区在线播放| 久久久午夜精品理论片中文字幕| 欧美mv日韩mv亚洲| 日韩你懂的电影在线观看| 精品视频一区二区三区免费| 在线观看视频一区二区| 在线观看国产91| 91福利视频在线| 精品视频色一区| 欧美亚洲动漫另类| 欧美视频一二三区| 在线播放欧美女士性生活| 欧美天堂亚洲电影院在线播放| 色国产精品一区在线观看| 欧美性三三影院| 欧美日韩精品一区二区三区四区| 欧美日韩亚洲综合在线 | 欧美性xxxxx极品少妇| 91热门视频在线观看| 欧美三级电影在线观看| 91精品国产黑色紧身裤美女| 日韩欧美高清一区| 久久久精品天堂| 亚洲女性喷水在线观看一区| 亚洲愉拍自拍另类高清精品| 樱花草国产18久久久久| 午夜电影久久久| 精品午夜一区二区三区在线观看| 国产精品自在在线| 91在线精品一区二区| 欧美日韩一区二区电影| 日韩免费福利电影在线观看| 久久伊人蜜桃av一区二区| 国产精品美女一区二区| 亚洲成人av在线电影| 国产一区二区三区免费| 色婷婷综合中文久久一本| 欧美一区二区三区在线观看 | 成人国产一区二区三区精品| 色婷婷香蕉在线一区二区| 日韩一区二区三区在线视频| 亚洲精品一区二区三区99| 国产精品福利一区| 午夜日韩在线观看| 成人免费va视频| 欧美日韩卡一卡二| 国产日本亚洲高清| 肉色丝袜一区二区| 成人福利在线看| 欧美一区二区三区四区久久| 国产精品素人一区二区| 天堂在线亚洲视频| 成人看片黄a免费看在线| 欧美高清精品3d| 国产精品不卡在线| 美脚の诱脚舐め脚责91| 99久久精品免费| 精品盗摄一区二区三区| 亚洲综合激情网| 不卡一区二区中文字幕| 欧美一区二区三区视频在线观看| 亚洲欧洲99久久| 国产一区二区三区久久久| 欧美日韩国产欧美日美国产精品| 国产精品麻豆99久久久久久| 久久精品av麻豆的观看方式| 欧美日韩视频一区二区| 亚洲欧洲成人精品av97| 国产1区2区3区精品美女| 欧美一区二区三区思思人| 亚洲午夜在线视频| 日本精品视频一区二区| 中文字幕一区二| 成人免费视频app| 国产婷婷色一区二区三区四区 | 日韩午夜激情av| 亚洲韩国一区二区三区| 91在线码无精品| 亚洲欧洲美洲综合色网| 成人免费视频视频在线观看免费| 精品av综合导航| 久久爱www久久做| 日韩精品在线看片z| 蜜芽一区二区三区| 日韩欧美国产系列| 奇米一区二区三区| 欧美一区欧美二区| 日本一区中文字幕| 在线不卡中文字幕播放| 亚洲超碰精品一区二区| 欧美精品乱人伦久久久久久| 日韩制服丝袜av|