




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课程设计说明书 NO. 15课 程 设 计 任 务 书专 业计算机科学与技术班 级13计专升本姓 名徐占新设 计 起 止 日 期2014年6月30日-2014年7月4日设计题目:工资管理系统设计任务(主要技术参数):1.课程设计目的进一步熟悉Java语言的语法,加深对数据结构及软件工程中相关知识的理解,掌握Java语言编程的各种基本操作。2.课程设计要求1) 用Java语言编写工资管理系统程序,采用面向对象设计方法,实现信息的录入、删除、修改及查找、汇总等基本功能,并上机调试运行。2) 初步掌握软件系统的设计和开发方法,培养独立工作能力。3) 撰写课程设计说明书一份。3. 课程设计环境1) 硬件环境:CPU:Intel Core i3-350M(2.13GHz) 硬盘:320G 内存:2G2) 软件环境: Myeclipse-10.7.1指导教师评语:成绩: 签字:年 月 日1、课程设计目的工资管理系统系统对企业加强工资管理有着极其重要的作用,就一般的大型企业来说,它的设计内容非常复杂而且繁多,比如拥有工资计算功能,工资统计功能,报表输出功能,而且设计的模块也很多,比如工资管理模块,工资统计模块,报表设计模块,打印输出模块,模糊查询模块等等。因此,工资管理系统为公司和员工带来极大的方便。通过我们组员之间的分析与研究,要求系统具有如下功能:提供用户登录、用户查询功能员工考勤情况表1.员工工种情况表,反映员工的工种、等级,基本工资等信息2.员工津贴信息表,反映员工的加班时间,加班类别、加班天数、津贴情况等3.员工基本信息表4.员工月工资表2、功能描述工资管理系统在用户登录时分两个部分:管理员和普通用户。普通用户可以进入用户界面查询各个信息,但只有查询功能。管理员的权限除了普通用户的权限外,还有对各个部分的信息进行添加、修改、删除等功能。所有的功能管理员都能实现。下面是系统所要达到的几条要求:1.要求系统准确的记录各种信息。2.系统要提供丰富的查询功能。3.系统可以对基础数据进行维护。4.系统运行在Windows平台下,需要有良好的图形用户界面。5.系统具有良好的可扩展性,良好的可移植性。2.1系统的体系结构2.1.1 系统的登入运行登入系统系统主界面员工信息检索员工绩效管理退出运行图1系统登入系统有一个进入界面,只有输入密码才能进入主菜单,在主菜单中进行一些所需操作。在主菜单中可以添加删除修改登录用户,查找添加员工信息等操作。1、员工信息的添加添加这一项,主要的工作就是完成对员工资料的填写,和对员工平时表现的一个客观地而评价,以方便等换成月末对员工的奖金数目,给员工颁发月末工资提供一个重要依据。2、员工信息的删除 删除这一项,只要的工作就是根据员工的编号找到相应的员工相关资料,并进行删除,删除的还有与员工相关的奖金和工资也要从总的工资支出中一并删除,如果没有找到与编号相关的员工资料,那么系统就会发出相应的提示2.1.2菜单界面所连接的信息查询删除添加基本工资奖金领取工资职务编号部门工作评价基本工资性别姓名员工拥有部门图2界面连接反应了一个人事管理系统中所要涉及的一些模块。如:1、员工信息 2、检索员工 3、绩效管理 4、退出运行2.2员工信息的管理 图3 员工信息员工工作评价部门基本工资职务员工姓名性别员工编号1员工信息的添加1员工信息的添加1员工信息的添加2员工信息的删除3 所有员工信息显示2.3员工信息的检索按员工编号检索员工信息按员工姓名按部门按性别图4员工信息 通过不同的条件来查看员工信息,如果所查看的信息部存在就会弹出提示信息框,提示一随查看的员工不存在。2.4员工信息实体与工资信息实体之间的联系 2.4.1员工的工资图5员工工资员工工资n1领取职务更具员工的表现给予一个评价,给予相应的奖金。2.4.2 所有员工工资的汇总 通过计算所有员工的工资,统计所需支出的总工资。3、数据库设计1.用户表:表1用户表的结构列名数据类型长度约束用户名char10主键密码char6不为空2.职工基本信息表:表2 职工基本信息表的结构列名数据类型长度约束职工编号char10主键姓名char10不为空性别char2不为空出生日期datetime8不为空职称char10允许空部门char10允许空入职时间datetime8不为空3.职工工资表:表3 职工工资表的结构列名数据类型长度约束职工编号char10主键年份char4不为空月份char2不为空基本工资int4不为空补助int4允许空奖金int4允许空应发工资int4不为空缴税int4不为空水电费int4不为空保险费int4不为空实发工资int4不为空4、功能实现4.1 详细设计4.1.1 建立系统主窗体工资管理系统第一个界面就是用户登录界面,该界面是用户想要登录本系统必须有的步骤,当运行时,弹出界面。按钮选中管理员后,输入正确的管理员用户名和密码后,按登录按钮就可进入系统主界面。如果用户名或密码输入错误会出相应的提示信息。运行时登录界面,如图5.1所示。图5.1登陆界面界面主要代码如下:public class Login1public static void main(String args)Loginmf = new Login();class LoginJFrame login = new JFrame();JButton b0 = new JButton();JButton b1 = new JButton();JTextField inputtext1 = new JTextField(15);JTextField inputtext2 = new JTextField(15);JLabel l1 = new JLabel();JLabel l2 = new JLabel();JLabel l3 = new JLabel();Login()login.setTitle(用户登录);login.setLayout(null);login.setBounds(150,80,320,250);login.setVisible(true);login.add(l3);l3.setBounds(80,-10,100,100);l3.setText(工资管理系统);l3.setFont(new Font(黑体,Font.BOLD,15);login.add(l1);l1.setBounds(50,30,80,80);l1.setText(用户名:);login.add(inputtext1);inputtext1.setBounds(100,60,100,20);login.add(l2);l2.setBounds(50,60,80,80);l2.setText(密 码:);login.add(inputtext2);inputtext2.setBounds(100,90,100,20);login.add(b0);b0.setBounds(60,130,60,20);b0.setText(登录);b0.setMargin(new Insets(0,0,0,0);login.add(b1);b1.setBounds(130,130,60,20);b1.setText(退出);b1.setMargin(new Insets(0,0,0,0);4.1.2登录窗体import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.sql.*;import java.awt.geom.*;class logFrame extends FrameString sql=null;ResultSet rs=null;sqlconn dbconn=new sqlconn();Label nameLab=new Label( 账 号: );Label pwdLab=new Label( 密 码: );Label desLab=new Label(工资管理系统);TextField nameTxt=new TextField();TextField pwdTxt=new TextField();Button logBut=new Button(登录);Button exitBut=new Button(退出);Image img;public logFrame()setTitle(欢迎使用工资管理系统);setLayout(null);setResizable(false);setSize(400,300);setBackground(Color.LIGHT_GRAY);Dimension scr=Toolkit.getDefaultToolkit().getScreenSize(); Dimension frm=this.getSize(); setLocation(scr.width-frm.width)/2,(scr.height-frm.height)/2-18); img=getToolkit().getImage(getClass().getResource(/login_pic.jpg); nameLab.setBounds(125,185,50,20);pwdLab.setBounds(125,215,50,20);nameTxt.setBounds(185,185,80,20);pwdTxt.setBounds(185,215,80,20);logBut.setBounds(155,245,40,20);exitBut.setBounds(215,245,40,20);desLab.setBounds(160,50,80,30);/add(nameLab);/add(pwdLab);add(nameTxt);add(pwdTxt);add(logBut);add(exitBut);/add(desLab); /密码文本框显示*pwdTxt.setEchoChar(*);setVisible(true);/注册登陆按钮监听器logBut.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)sql=select * from users where name=+nameTxt.getText()+ and password=+pwdTxt.getText()+;tryrs=dbconn.getRs(sql);if(rs.next()mainFrame mf=new mainFrame();dispose();/调用工资管理系统主界面mf.show();elseJOptionPane jop=new JOptionPane();jop.showMessageDialog(null,用户名或密码,请重新输入!,错误提示,1);catch(Exception ee);/注册文本框监听器/输密码后按回车键,检查用户密码pwdTxt.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)sql=select * from users where name=+nameTxt.getText()+ and password=+pwdTxt.getText()+;tryrs=dbconn.getRs(sql);if(rs.next()mainFrame mf=new mainFrame();dispose();mf.show();elseJOptionPane jop=new JOptionPane();jop.showMessageDialog(null,用户名或密码,请重新输入!,错误提示,1);catch(Exception ee);/按退出按钮退出系统exitBut.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)/dispose();System.exit(0););/添加窗口关闭按钮的关闭功能addWindowListener(new WindowAdapter()public void windowClosing(WindowEvent e)dispose(););public void paint(Graphics g) g.setClip(new Rectangle2D.Float(0,0,400,300); g.drawImage(img,0,0,this); public class loginpublic static void main(String args)logFrame logf1=new logFrame();4.1.3添加、修改和删除用户主要代码如下:/系统主框架类/导入系统的包import java.awt.*;import java.awt.event.*;import javax.swing.*;/创建主框架类MainFramepublic class MainFrame extends JFrame implements ActionListener/创建内容面板JPanel contentPane;/创建菜单栏组件的对象JMenuBar jMenuBar1=new JMenuBar();/菜单条JMenu jMenu0=new JMenu(系统);/菜单JMenuItem jMenuItem0=new JMenuItem(退出);/子菜单JMenu jMenu1=new JMenu(员工管理);JMenuItem jMenuItem1=new JMenuItem(添加员工);JMenuItem jMenuItem2=new JMenuItem(修改员工);JMenuItem jMenuItem3=new JMenuItem(删除员工);JMenu jMenu2=new JMenu(工资管理);JMenuItem jMenuItem4=new JMenuItem(添加工资);JMenuItem jMenuItem5=new JMenuItem(修改工资);JMenuItem jMenuItem8=new JMenuItem(工资查询);JMenu jMenu3=new JMenu(员工查询);JMenuItem jMenuItem6=new JMenuItem(按工号查询);JMenuItem jMenuItem7=new JMenuItem(按姓名查询);JMenu jMenu4=new JMenu(帮助);JMenuItem jMenuItem9=new JMenuItem(互动);/创建标签,用于显示信息JLabel jLabel1=new JLabel(工资管理系统);JLabel jLabel2=new JLabel(2011年7月9日);/创建构造方法public MainFrame()try/关闭框架窗口时的默认事件方法setDefaultCloseOperation(EXIT_ON_CLOSE);/调用初始化方法jbInit();catch(Exception exception)exception.printStackTrace();/界面初始化方法private void jbInit() throws Exception/创建内容面板contentPane =(JPanel) getContentPane();/设置内容面板的布局为空contentPane.setLayout(null);/主框架的大小setSize(new Dimension(400,360);/主框架的标题setTitle(工资管理小系统);/添加事件监听器jMenuItem0.addActionListener(this);jMenuItem1.addActionListener(this);jMenuItem2.addActionListener(this);jMenuItem3.addActionListener(this);jMenuItem4.addActionListener(this);jMenuItem5.addActionListener(this);jMenuItem6.addActionListener(this);jMenuItem7.addActionListener(this);jMenuItem8.addActionListener(this);jMenuItem9.addActionListener(this);/添加菜单条到主框架setJMenuBar(jMenuBar1);/添加菜单到菜单条jMenuBar1.add(jMenu0);jMenuBar1.add(jMenu1);jMenuBar1.add(jMenu2);jMenuBar1.add(jMenu3);jMenuBar1.add(jMenu4);/添加菜单项到菜单jMenu0.add(jMenuItem0);jMenu1.add(jMenuItem1);jMenu1.add(jMenuItem2);jMenu1.add(jMenuItem3);jMenu2.add(jMenuItem4);jMenu2.add(jMenuItem5);jMenu2.add(jMenuItem8);jMenu3.add(jMenuItem6);jMenu3.add(jMenuItem7);jMenu4.add(jMenuItem9);/添加标签到主框架内容面板contentPane.add(jLabel1);contentPane.add(jLabel2);/设置标签组件的大小和字体jLabel1.setFont(new java.awt.Font(黑体,Font.BOLD,20);jLabel1.setBounds(new Rectangle(65,70,275,55);jLabel2.setFont(new java.awt.Font(黑体,Font.BOLD,16);jLabel2.setBounds(new Rectangle(90,150,200,35);/菜单项事件对应的处理方法public void actionPerformed(ActionEvent actionEvent)/点击“系统”菜单下的“退出”菜单项if(actionEvent.getSource()=jMenuItem0)System.exit(0);/点击“职工管理”菜单下的“添加员工”菜单项if(actionEvent.getSource()=jMenuItem1)/创建“添加职工”面板对象AddEmployee AddEmp=new AddEmployee();/移除主框架上原有的内容this.remove(this.getContentPane();/加载“添加员工”面板的对象到主框架this.setContentPane(AddEmp);/令界面可见this.setVisible(true);/点击“员工管理”菜单下的“修改员工”菜单项if(actionEvent.getSource()=jMenuItem2)/创建“修改员工”面板对象ModifyEmployee ModifyEmp=new ModifyEmployee();this.remove(this.getContentPane();/加载“修改员工”面板的对象到主框架this.setContentPane(ModifyEmp);this.setVisible(true);/点击“员工管理”菜单下的“删除员工”菜单项if(actionEvent.getSource()=jMenuItem3)/创建“删除员工”面板对象DeleteEmployee DeleteEmp=new DeleteEmployee();this.remove(this.getContentPane();/加载“删除员工”面板的对象到主框架this.setContentPane(DeleteEmp);this.setVisible(true);/点击“工资管理”菜单下的“添加工资”菜单项if(actionEvent.getSource()=jMenuItem4)/创建工资添加的面板对象AddSalary AddSal=new AddSalary();this.remove(this.getContentPane();/加载工资添加面板的对象到主框架this.setContentPane(AddSal);this.setVisible(true);/点击“工资管理”菜单下的“修改工资”菜单项if(actionEvent.getSource()=jMenuItem5)/创建工资修改的面板对象ModifySalary ModifySal=new ModifySalary();this.remove(this.getContentPane();/加载工资修改面板的对象到主框架this.setContentPane(ModifySal);this.setVisible(true);/点击“工资管理”菜单下的“工资查询”菜单项if(actionEvent.getSource()=jMenuItem8)/创建工资修改的面板对象SalaryInquire SalaryInq=new SalaryInquire();this.remove(this.getContentPane();/加载工资修改面板的对象到主框架this.setContentPane(SalaryInq);this.setVisible(true);/点击“职工查询”菜单下的“按工号查询”菜单项if(actionEvent.getSource()=jMenuItem6)/创建“按工号查询”面板对象InquireOnGH OnGH=new InquireOnGH();/移除主框架上原有的内容this.remove(this.getContentPane();this.setContentPane(OnGH);this.setVisible(true);/点击“职工查询”菜单下的“按姓名查询”菜单项if(actionEvent.getSource()=jMenuItem7)/创建“按姓名查询”面板对象InquireOnName OnName=new Inquir
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 家政中介行业峰会创新创业项目商业计划书
- 2025安徽中医药大学招聘教学、科研人员37人模拟试卷及参考答案详解1套
- 神经生物调节练习题集锦
- 新员工离职手续及法律注意事项
- 中学生法制教育案例分析与教学方案
- 关于春季赏花的经典古诗
- QRQC质量管理体系建设指南
- 公路工程监理日志填写规范及示范
- 小学英语写作专项训练练习册
- 餐饮行业节能减排实施方案
- 地面拆除合同模板怎么写(3篇)
- 2025秋新教材统编版八年级上册道德与法治第十一课 军强才能国安 教案(共2课时)
- 人教PEP版(2024)四年级上册英语全册教案(单元整体教学设计)
- 数控滚齿机操作指导手册
- 平安银行 iq测试题及答案
- 医保智能审核培训课件
- 2025年大学试题(大学选修课)-TRIZ创新方法历年参考题库含答案解析(5套典型考题)
- 如何培养数学尖子生的讲座
- 体育测量与评价PPT课件-第九章 运动员选材的测量与评价
- 《情满今生》读书笔记模板
- 胸痛中心网络医院STEMI患者绕行急诊和CCU方案流程图
评论
0/150
提交评论