【Java开源代码栏目提醒】:网学会员为需要Java开源代码的朋友们搜集整理了TimecardPanel.java相关资料,希望对各位网友有所帮助!
package com.mwq.frame.personnel;
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.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.
sql.Date;
import java.util.Iterator;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.SwingConstants;
import com.mwq.frame.common.DeptTreeDialog;
import com.mwq.hibernate.Dao;
import com.mwq.hibernate.HibernateSessionFactory;
import com.mwq.hibernate.mapping.TbAccountItem;
import com.mwq.hibernate.mapping.TbDept;
import com.mwq.hibernate.mapping.TbDutyInfo;
import com.mwq.hibernate.mapping.TbRecord;
import com.mwq.hibernate.mapping.TbTimecard;
import com.mwq.tool.Today;
public class TimecardPanel extends JPanel {
private JTextField inDeptTextField;
private JTextField deptTextField;
private JTextArea explainTextArea;
private JTextField endDateTextField;
private JTextField startDateTextField;
private JTextField ratifierDateTextField;
private JComboBox ratifierPersonComboBox;
private JComboBox timecardTypeComboBox;
private JComboBox personnalComboBox;
private Dao dao = Dao.getInstance();
/**
* Create the panel
*/
public TimecardPanel() {
super();
setLayout(new BorderLayout());
final JPanel buttonPanel = new JPanel();
buttonPanel.setBackground(Color.WHITE);
add(buttonPanel, BorderLayout.NORTH);
final JButton createButton = new JButton();
createButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
inDeptTextField.setText(null);
personnalComboBox.removeAllItems();
personnalComboBox.addItem("请选择");
Iterator recordsIt = dao.queryRecord().iterator();
while (recordsIt.hasNext()) {
TbRecord record = (TbRecord) recordsIt.next();
personnalComboBox.addItem(record.getRecordNumber() + " "
+ record.getName());
}
HibernateSessionFactory.closeSession();
timecardTypeComboBox.setSelectedIndex(0);
explainTextArea.setText("");
startDateTextField.setText(Today.TODAY_DATE);
endDateTextField.setText(Today.TODAY_DATE);
deptTextField.setText("");
ratifierPersonComboBox.removeAllItems();
ratifierPersonComboBox.setEnabled(false);
ratifierDateTextField.setText(Today.TODAY_DATE);
}
});
createButton.setText("新建");
buttonPanel.add(createButton);
final JButton saveButton = new JButton();
saveButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
TbTimecard timecard = new TbTimecard();
String personnal = personnalComboBox.getSelectedItem()
.toString();
if (personnal.equals("请选择")) {
JOptionPane.showMessageDialog(null, "请选择欲考勤的职员!", "友情提示",
JOptionPane.INFORMATION_MESSAGE);
return;
}
TbRecord record = (TbRecord) dao.queryRecordByNum(personnal
.substring(0, 6));
timecard.setTbRecordByRecordId(record);
String timecardType = timecardTypeComboBox.getSelectedItem()
.toString();
if (timecardType.equals("请选择")) {
JOptionPane.showMessageDialog(null, "请选择考勤类型!", "友情提示",
JOptionPane.INFORMATION_MESSAGE);
return;
}
TbAccountItem accountItem = (TbAccountItem) dao
.queryAccountItemByName(timecardType);
timecard.setTbAccountItem(accountItem);
if (explainTextArea.getText().equals("")) {
JOptionPane.showMessageDialog(null, "请填写考勤说明!", "友情提示",
JOptionPane.INFORMATION_MESSAGE);
return;
}
timecard.setExplain(explainTextArea.getText());
try {
timecard.setStartDate(Date.valueOf(startDateTextField
.getText()));
timecard.setEndDate(Date
.valueOf(endDateTextField.getText()));
} catch (RuntimeException e) {
JOptionPane.showMessageDialog(null, "开始日期或结束日期填写错误,请重新填写!",
"友情提示", JOptionPane.INFORMATION_MESSAGE);
return;
}
if (de