栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

基于swing+mysql写的一个考勤管理

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

基于swing+mysql写的一个考勤管理

今年学校竟然开了一门大型软件实验周,瞎选了一个项目由于时间紧任务重就写了一个界面不美观的项目。请各位大佬指教。

 

输入工号和密码 选择自己的身份 进入主界面

这里先进入职工界面

现在是人事

 

 

现在是管理

 

 

 因为没有对接受的数据进行筛选认证(省事,为了应付学业准备考试.)

下面是关键代码

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 说明来意。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/924712.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号