今年学校竟然开了一门大型软件实验周,瞎选了一个项目由于时间紧任务重就写了一个界面不美观的项目。请各位大佬指教。
输入工号和密码 选择自己的身份 进入主界面
这里先进入职工界面
现在是人事
现在是管理
因为没有对接受的数据进行筛选认证(省事,为了应付学业准备考试.)
下面是关键代码
package frame;
import java.awt.Color;
import java.awt.Component;
import java.awt.Container;
import java.awt.Font;
import java.awt.Window;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.swing.*;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
import javax.swing.table.AbstractTableModel;
import javax.swing.table.DefaultTableModel;
import dao.Signin;
import dao.affaS;
import dao.infomation;
import butil.TableModel;
import butil.Table_show_1;
import butil.Table_show_2;
import butil.Table_show_3;
import butil.Table_show_4;
import butil.Table_show_5;
import butil.user;
public class interfa extends JFrame {
private JFrame jf_1; //主界面框架
private JTabbedPane tabbedPane ; //选项卡面板
String[][] s = {{"打卡","请假","个人信息"},{"职工信息","请假管理","考勤管理"},{"职工管理","部门信息"}};
private String p;
final int m ;
user user;
public interfa(int n,user user)
{
this.m = n;
this.user = user;
initframe(n);
}
private void initframe(int n) //根据登录界面传输过来的flg Jcombot来选择加载的界面
{
jf_1 = new JFrame("主功能界面");
Container a = jf_1.getContentPane();
tabbedPane = new JTabbedPane(); //选项卡
tabbedPane.setBorder(BorderFactory.createTitledBorder("欢迎您 "+user.getName()));
for(int j = 0;j0)
{
JOptionPane.showMessageDialog(null, "打卡成功,今天又是充满希望的一天!","成功",JOptionPane.PLAIN_MESSAGE);
}
}});
xb.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
int flg = signin.addNight(user);
if(flg>0)
{
JOptionPane.showMessageDialog(null, "打卡成功,祝您生活愉快!","成功",JOptionPane.PLAIN_MESSAGE);
}
}});
break;
case 1:
final TableModel tmo = new TableModel();
final JTable jt1 = tmo.TableModel(user.getId());
final JScrollPane sp = new JScrollPane(jt1);
sp.setBorder(BorderFactory.createTitledBorder("请假记录"));
sp.setBounds(300, 360, 360, 200);
JLabel lable_1 = new JLabel("请假理由:");
final JTextField text_1 = new JTextField(8);
JLabel lable_2 = new JLabel("起始日期:");
final JTextField text_2= new JTextField(8);
JLabel lable_3 = new JLabel("结束日期:");
final JTextField text_3= new JTextField(8);
lable_1.setBounds(300, 100, 100, 30);
text_1.setBounds(360, 100, 300, 30);
lable_2.setBounds(300, 200, 100, 30);
text_2.setBounds(360, 200, 300, 30);
lable_3.setBounds(300, 300, 100, 30);
text_3.setBounds(360, 300, 300, 30);
JButton sub = new JButton("上报");
sub.setBounds(200, 600, 80, 25);
sub.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
affaS aff = new affaS();
int n = aff.addaffa(user.getId(),user.getName(),text_1.getText(),text_2.getText(),text_3.getText());
if(n>0)
{
JOptionPane.showMessageDialog(null, "上报成功等待批准","成功",JOptionPane.PLAIN_MESSAGE);
}
//刷新
jf_1.setVisible(false);
initframe(m);
}
});
JButton qx = new JButton("取消");
qx.setBounds(700, 600, 80, 25);
qx.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
text_1.setText("");
text_2.setText("");
text_3.setText("");
}
});
panel.add(sp);
panel.add(sub);
panel.add(qx);
panel.add(lable_1);
panel.add(text_1);
panel.add(lable_2);
panel.add(text_2);
panel.add(lable_3);
panel.add(text_3);
break;
case 2: //员工可以查看自己的基础信息 能修改自己的电话号码 载入时加载信息
ResultSet rs = null;
JLabel lable_4 = new JLabel("员工号:");
JTextField text_4 = new JTextField(8);
text_4.setEditable(false);
JLabel lable_5 = new JLabel("名字:");
JTextField text_5= new JTextField(8);
text_5.setEditable(false);
JLabel lable_6 = new JLabel("部门:");
final JTextField text_6= new JTextField(8);
text_6.setEditable(false);
JLabel lable_7 = new JLabel("电话号码");
final JTextField text_7= new JTextField(8);
lable_4.setBounds(300, 100, 100, 30);
text_4.setBounds(360, 100, 300, 30);
lable_5.setBounds(300, 200, 100, 30);
text_5.setBounds(360, 200, 300, 30);
lable_6.setBounds(300, 300, 100, 30);
text_6.setBounds(360, 300, 300, 30);
lable_7.setBounds(300, 400, 100, 30);
text_7.setBounds(360, 400, 300, 30);
final infomation info = new infomation();
rs = info.showInfo(user.getId());
text_4.setText(user.getId());
text_5.setText(user.getName());
try
{
while(rs.next()){
try
{
text_6.setText(rs.getString(4));
text_7.setText(rs.getString(6));
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
final String s = text_7.getText();
JButton button_1 = new JButton("修改");
button_1.setBounds(300, 530, 80, 25);
JButton button_2 = new JButton("取消");
button_2.setBounds(580, 530, 80, 25);
button_1.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
boolean flg = info.updateinfomation(text_7.getText(),user.getId()); //修改电话号码 自己的其他信息只能由人事或者管理进行更改
if(flg){
JOptionPane.showMessageDialog(null, "刷新中","更改成功",JOptionPane.PLAIN_MESSAGE);}
jf_1.setVisible(false);
initframe(m);
}
});
button_2.addActionListener(new ActionListener() //取消事件
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
text_7.setText(s);
}
});
panel.add(lable_4);
panel.add(text_4);
panel.add(lable_5);
panel.add(text_5);
panel.add(lable_6);
panel.add(text_6);
panel.add(lable_7);
panel.add(text_7);
panel.add(button_1);
panel.add(button_2);
break;
}
}else if( user.getFlg().equals("人事")) //身份为人事时的面板
{
switch (n) { //人事只可以修改职工的
case 0:
final Table_show_1 ts_1 = new Table_show_1(); //适配器
ts_1.gettime();
JScrollPane sp = new JScrollPane(ts_1.ShowData());
sp.setBorder(BorderFactory.createTitledBorder("职工管理"));
sp.setBounds(100, 50, 800, 500);
JButton button_1 = new JButton("保存");
button_1.setBounds(200, 600, 80, 25);
button_1.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
ts_1.saveDate();
jf_1.setVisible(false);
initframe(m);
}
});
JButton button_2 = new JButton("删除");
button_2.setBounds(700, 600, 80, 25);
button_2.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
ts_1.deleteDate();
jf_1.setVisible(false);
initframe(m);
}
});
JButton button_1_1 = new JButton("增加");
button_1_1.setBounds(450, 600, 80, 25);
button_1_1.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
ts_1.add();
}
});
panel.add(sp);
panel.add(button_1_1);
panel.add(button_1);
panel.add(button_2);
break;
case 1:
final Table_show_2 ts_2 = new Table_show_2();
JScrollPane sp_1 = new JScrollPane(ts_2.ShowData());
sp_1.setBorder(BorderFactory.createTitledBorder("请假管理"));
sp_1.setBounds(100, 50, 800, 500);
JButton button_3 = new JButton("同意");
button_3.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
ts_2.upDate();
jf_1.setVisible(false);
initframe(m);
}
});
button_3.setBounds(200, 600, 80, 25);
JButton button_4 = new JButton("驳回");
button_4.setBounds(700,600, 80, 25);
button_4.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
ts_2.upDate_1();
jf_1.setVisible(false);
initframe(m);
}
});
panel.add(button_4);
panel.add(button_3);
panel.add(sp_1);
break;
case 2:
final Table_show_3 ts_3 = new Table_show_3();
JScrollPane sp_2 = new JScrollPane(ts_3.ShowData());
sp_2.setBorder(BorderFactory.createTitledBorder("打卡管理"));
sp_2.setBounds(100, 50, 800, 500);
JButton button_5 = new JButton("补签");
button_5.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
ts_3.upDate();
jf_1.setVisible(false);
initframe(m);
System.out.print("biaozhi"+n);
}
});
button_5.setBounds(450, 600, 80, 25);
panel.add(button_5);
panel.add(sp_2);
break;
}
}
else //身份为管理时的面板
{
switch (n) {
case 0:
final Table_show_5 ts_1 = new Table_show_5();
ts_1.gettime();
JScrollPane sp = new JScrollPane(ts_1.ShowData());
sp.setBorder(BorderFactory.createTitledBorder("职工管理"));
sp.setBounds(100, 50, 800, 500);
JButton button_1 = new JButton("保存");
button_1.setBounds(300, 600, 80, 25);
button_1.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
ts_1.saveDate();
jf_1.setVisible(false);
initframe(m);
}
});
JButton button_2 = new JButton("删除");
button_2.setBounds(400, 600, 80, 25);
button_2.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
ts_1.deleteDate();
jf_1.setVisible(false);
initframe(m);
}
});
JButton button_1_1 = new JButton("增加");
button_1_1.setBounds(500, 600, 80, 25);
button_1_1.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
ts_1.add();
}
});
//
// JButton button_1_2 = new JButton("修改");
// button_1_2.setBounds(600, 600, 80, 25);
// button_1_2.addActionListener(new ActionListener()
// {
//
// @Override
// public void actionPerformed(ActionEvent e) {
// // TODO Auto-generated method stub
// //修改暂时不动
//
// }
//
// });
//
panel.add(sp);
panel.add(button_1_1);
// panel.add(button_1_2);
panel.add(button_1);
panel.add(button_2);
break;
case 1:
final Table_show_4 ts_2 = new Table_show_4();
ts_2.gettime();
JScrollPane sp_1 = new JScrollPane(ts_2.ShowData());
sp_1.setBorder(BorderFactory.createTitledBorder("部门管理"));
sp_1.setBounds(100, 50, 800, 500);
JButton button_3 = new JButton("删除");
button_3.setBounds(200, 600, 80, 25);
button_3.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
ts_2.deleteDate();
jf_1.setVisible(false);
initframe(m);
}
});
JButton button_4 = new JButton("增加");
button_4.setBounds(700, 600, 80, 25);
button_4.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
ts_2.add();
}
});
JButton button_5 = new JButton("保存");
button_5.setBounds(450, 600, 80, 25);
button_5.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
ts_2.saveDate();
jf_1.setVisible(false);
initframe(m);
}
});
panel.add(sp_1);
panel.add(button_5);
panel.add(button_3);
panel.add(button_4);
break;
// case 2:
// JLabel lable_8 = new JLabel("人事:");
// JTextField text_8 = new JTextField(8);
// lable_8.setBounds(100, 80, 80, 25);
// text_8.setBounds(130, 80, 100, 25);
//
// JLabel lable_9 = new JLabel("密码:");
// JTextField text_9 = new JTextField(8);
// lable_9.setBounds(300, 80, 80, 25);
// text_9.setBounds(330, 80, 100, 25);
//
// JButton button_6 = new JButton("增加");
// button_6.setBounds(500, 80, 80, 25);
// JButton button_7 = new JButton("删除");
// button_7.setBounds(650, 80, 80, 25);
// JButton button_8 = new JButton("修改");
// button_8.setBounds(800, 80, 80, 25);
//
TableModel tmo_2 = new TableModel();
JTable table_2 = new JTable(tmo_2);
JScrollPane sp_2 = new JScrollPane(table_2);
sp_2.setBorder(BorderFactory.createTitledBorder("人事信息"));
sp_2.setBounds(100, 130, 800, 500);
//
// panel.add(lable_8);
// panel.add(text_8);
// panel.add(lable_9);
// panel.add(text_9);
panel.add(sp_2);
// panel.add(button_6);
// panel.add(button_7);
// panel.add(button_8);
// break;
}
}
panel.setVisible(true);
return panel;
}
// 设置Timer 1000ms实现一次动作 实际是一个线程
private void setTimer(JLabel time) {
final JLabel varTime = time;
Timer timeAction = new Timer(100, new ActionListener() {
public void actionPerformed(ActionEvent e) {
long timemillis = System.currentTimeMillis();
// 转换日期显示格式
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
varTime.setText(df.format(new Date(timemillis)));
}
});
timeAction.start();
}
}
如果想需要原代码和数据库 可以加我qq 说明来意。



