人事工资管理系统课程设计报告.docx
- 文档编号:23805083
- 上传时间:2023-05-20
- 格式:DOCX
- 页数:35
- 大小:337.33KB
人事工资管理系统课程设计报告.docx
《人事工资管理系统课程设计报告.docx》由会员分享,可在线阅读,更多相关《人事工资管理系统课程设计报告.docx(35页珍藏版)》请在冰豆网上搜索。
人事工资管理系统课程设计报告
苏州科技大学
电子信息与智能化实验中心
面向对象技术课程设计A 报告
——人事工资管理系统
专业年级
计算机科学与技术(嵌入式培养)15级
班 级
嵌入式1511
学 号
姓 名
张梓轩
戚春阳
徐敏杰
袁祺林
王雨欣
成 绩
指导教师
丁俊
2016年12月24日
姓名
角色
承担任务
自评成绩
张梓轩
组长
E-R图;统一数据库;工资管理系统显示所有员工的工资,部门整体调薪的实现;人事管理系统的时序图和活动图;
戚春阳
组员
统计管理系统显示各个部门和人数功能的实现;用户权限和密码设置;系统时间输出;实现系统设置管理中的数据备份和数据恢复;整合所有人代码,实现功能的统一和代码的优化;登录界面的活动图和时序图;
徐敏杰
组员
人事管理系统添加员工信息,修改员工信息;用例图和用例说明;任务书的编写;系统设置系统的活动图、时序图;
袁祺林
组员
人事管理系统查询员工的登陆信息、模糊查询和删除员工;课程总结;任务书的编写;人事管理系统的时序图和活动图;
王雨欣
组员
员工奖惩表的增、删、改、查;系统类图;课程设计与需求分析;统计管理系统的活动图和时序图;
注:
如果按小组进行,需要此表,否则删除。
人事工资系统设计报告
1课程设计任务概述
人事工资管理系统是非常通用的管理信息系统,一个公司必须要有健全的人事工资管理系统来管理员工的信息,才能实现它的日常运转。
因此,为了支持企业规范化的管理,高效率地完成人事的业务,需要实现包括员工的姓名、年龄、编号、电话号码等基本信息的建立,授予员工所能获取的权限,例如管理员权限,就可以对普通员工进行信息管理,其中包括新员工个人的基本信息资料的增加、修改,退休员工的信息的删除,员工奖惩信息的增加、删除和修改;此外还支持管理员对部门整体进行调薪,扩大了管理员的管理范围;
同时为了支持人事管理及其相关方面的科学决策,增加了员工的个人基本信息查询、薪资查询、奖惩情况查询和部门的总体情况查询等,大大提高了公司内部员工管理的效率,减少了不必要的精力的投入,使得企业的正常维护得以实现。
2系统需求分析
2.1系统功能分析
本系统主要是实现企业人事管理的系统化、规范化和自动化,实现数据的录入、插入、删除、查询、统计、更新等功能。
具有员工注册以及登录的功能,且登录后管理员可修改自己用户权限;
大体分为以下四个主功能:
1.人事管理系统:
主要用来实现对员工的基本信息的增加、信息的删除、信息的修改以及模糊查询,还包括对员工的奖惩信息的增加,信息的删除,信息的修改以及信息的查询;
2.工资管理系统:
主要包括模糊查询部门信息、员工的总体以及个人工资信息,以及对部门的薪资进行整体调整的功能;
3.统计管理系统:
主要指用来显示部门的整体情况以及员工人数;
4.系统设置系统:
主要是用来对数据进行恢复和备份。
2.2用例图及用例说明
2.2.1用户注册用例
1.用例名称:
注册
2.用例描述:
注册成为本管理系统的用户
3.角色:
用户
4.前置条件:
格式输入正确
5.后置条件:
保存此用户的信息
6.基本路径:
A.填写用户名和密码 B.保存用户信息
7.扩展点:
A.未填写完整或者格式错误 a1.错误提示
B.用户已经存在 b1.错误提示
3系统设计
3.1系统类图
3.2系统活动图
用户登陆活动图:
人事管理系统活动图:
统计管理系统活动图:
工资管理系统活动图:
系统设置管理活动图:
3.3系统时序图
用户登陆时序图:
人事管理系统时序图:
工资管理系统时序图:
统计管理系统时序图:
系统设置管理时序图:
4系统实现
4.1登录模块设计与实现
登录模块是用户登录进去进行相关操作的,如员工信息的增删改查等等。
(1)View层代码
loginTitle=newjavax.swing.JLabel();
jLabel1=newjavax.swing.JLabel();
jLabel2=newjavax.swing.JLabel();
uname=newjavax.swing.JTextField();
pwd=newjavax.swing.JPasswordField();
limit=newjavax.swing.JComboBox();
jLabel3=newjavax.swing.JLabel();
loginBtn=newjavax.swing.JButton();
registerBtn=newjavax.swing.JButton();
jLabel4=newjavax.swing.JLabel();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setForeground(java.awt.Color.white);
setResizable(false);
setState
(1);
loginTitle.setFont(newjava.awt.Font("MicrosoftYaHeiUI",1,44));
loginTitle.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
loginTitle.setText("\u4eba\u4e8b\u5de5\u8d44\u7ba1\u7406\u7cfb\u7edf");
jLabel1.setText("\u7528\u6237\u540d");
jLabel2.setText("\u5bc6\u7801\uff1a");
//limit.setModel(javax.swing.DefaultComboBoxModel@187e702);
jLabel3.setText("\u6743\u9650\uff1a");
loginBtn.setText("\u767b\u9646");
(2)Action层
privatevoidregisterBtnActionPerformed(java.awt.event.ActionEventevt){
registerFramer=newregisterFrame();
r.setVisible(true);
}
privatevoidloginBtnMouseClicked(java.awt.event.MouseEventevt){
Stringname=this.uname.getText();
Stringpwd=this.pwd.getText();
Stringlimit=this.limit.getSelectedItem().toString();
inttype=0;
if("管理员".equals(limit)){
type=1;
usertype="管理员";
}else{
type=2;
usertype="普通员工";
}
Useruser=newUser(name,pwd,type);
Userflag=userService.login(user);
if(flag!
=null){
wusername=name;
wtype=limit;
oko=newok();
o.setVisible(true);
setVisible(false);
}else{
failf=newfail();
f.setVisible(true);
dispose();
}
}
(3)Dao数据交互层
@Override
publicUserlogin(Useruser){
//TODOAuto-generatedmethodstub
UserresultUser=null;
Stringsql="selectuser_no,user_name,user_pwd,user_type"+
"fromt_user"+
"whereuser_name='"+user.getUserName()+"'"+
"anduser_pwd='"+user.getUserPwd()+"'"+
"anduser_type="+user.getUserType()+"";
conn=JDBCUtil.getConnection();
try{
stmt=conn.createStatement();
rs=stmt.executeQuery(sql);
if(rs.next()){
resultUser=newUser();
resultUser.setUserNo(rs.getInt("user_no"));
resultUser.setUserName(rs.getString("user_name"));
resultUser.setUserPwd(rs.getString("user_pwd"));
resultUser.setUserType(rs.getInt("user_type"));
}
}catch(SQLExceptione){
e.printStackTrace();
}
finally{
JDBCUtil.closeResource(conn,psmt,stmt,rs);
}
returnresultUser;
}
4.2系统主界面
可在该模块完成员工资料的常用操作。
员工的各项人事记录可在选择员工后,在主界面下面的分栏里面进行添加、修改、删除操作。
4.3人事管理模块设计及实现
对员工的相关资料及记录进行管理。
可在该模块对员工基本资料、奖惩记录、修改员工信息可实现对员工的调动、薪水记录进行修改。
当进入到人事管理子系统模块,再点击模糊查询。
删除员工按钮,会进入到下面的界面
其中的模糊查询代码如下
(1)view层
privatevoidinitComponents(){
jScrollPane1=newjavax.swing.JScrollPane();
jTable1=newjavax.swing.JTable();
jButton1=newjavax.swing.JButton();
jLabel1=newjavax.swing.JLabel();
jname=newjavax.swing.JTextField();
jButton2=newjavax.swing.JButton();
jButton3=newjavax.swing.JButton();
jLabel2=newjavax.swing.JLabel();
jButton4=newjavax.swing.JButton();
jLabel3=newjavax.swing.JLabel();
jLabel4=newjavax.swing.JLabel();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jTable1.setModel(newjavax.swing.table.DefaultTableModel(
newObject[][]{
},newString[]{"姓名","编号","部门编号","职称","性别","基本工资",
"电话号码","工号"}));
jScrollPane1.setViewportView(jTable1);
jButton1.setText("\u786e\u5b9a");
jButton1.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEventevt){
jButton1ActionPerformed(evt);
}
});
jLabel1
.setText("\u8bf7\u8f93\u5165\u59d3\u540d\uff0c\u652f\u6301\u6a21\u7cca\u67e5\u627e");
jname.setText(null);
jButton2.setText("\u9000\u51fa\u6a21\u7cca\u67e5\u627e");
jButton2.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEventevt){
jButton2ActionPerformed(evt);
}
});
jButton3.setText("\u5237\u65b0");
jButton3.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEventevt){
jButton3ActionPerformed(evt);
}
});
jLabel2.setText("\u5237\u65b0\u540e\u53ef\u7ee7\u7eed\u67e5\u627e");
jButton4.setText("\u5220\u9664\u6b64\u5458\u5de5");
jButton4.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEventevt){
jButton4ActionPerformed(evt);
}
});
jLabel3
.setText("\u7a7a\u503c\u53ef\u67e5\u627e\u6240\u6709\u5458\u5de5");
jLabel4
.setText("\u9700\u8981\u8f93\u5165\u5168\u540d\u53ef\u4ee5\u5220\u9664\u5458\u5de5");
publicvoidfindStaffName(JTablejTable,Stringname){
DefaultTableModelmodel=(DefaultTableModel)jTable.getModel();
model.setRowCount(0);
Vectorv=staffInfoDao.findStaffInfo(name);
for(inti=0;i model.addRow((Vector)v.get(i)); } } (2)action层 privatevoidjButton1ActionPerformed(java.awt.event.ActionEventevt){ Stringname=jname.getText(); if(name! =null){ staff.findStaffName(jTable1,name); }else{ pleaseInputp=newpleaseInput(); p.setVisible(true); } } (3)dao层 publicVectorfindStaffInfo(Stringstaffname){ Vectorlist=newVector(); Stringsql="select*"+"fromt_staff_info" +"wherestaff_namelike'%"+staffname+"%'"; conn=JDBCUtil.getConnection(); try{ stmt=conn.createStatement(); rs=stmt.executeQuery(sql); while(rs.next()){ VectorlistObject=newVector(); //listObject.add(new //User(rs.getInt("id"),rs.getString("uname"),rs.getString("pwd"))); listObject.add(rs.getString("staff_name")); listObject.add(rs.getInt("staff_id")); listObject.add(rs.getInt("dept_no")); listObject.add(rs.getString("staff_pos_name")); listObject.add(rs.getString("staff_sex")); listObject.add(rs.getInt("staff_baseSal")); listObject.add(rs.getInt("staff_phoneNum")); listObject.add(rs.getString("staff_workNum")); list.add(listObject); } }catch(SQLExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); }finally{ JDBCUtil.closeResource(conn,psmt,stmt,rs); } returnlist; } 4.4工资管理模块设计与实现 在员工基本信息管理界面里可以对单个员工进行基本工资的修改,因而在面向人数较多的企业时,这种方式存在弊端,部门整体调薪操作可以对整个业绩高的部门进行整体调薪 (1)view层 privatevoidinitComponents(){ jButton1=newjavax.swing.JButton(); jLabel1=newjavax.swing.JLabel(); jdepart=newjavax.swing.JTextField(); jButton2=newjavax.swing.JButton(); jLabel2=newjavax.swing.JLabel(); jScrollPane1=newjavax.swing.JScrollPane(); jTable1=newjavax.swing.JTable(); jLabel3=newjavax.swing.JLabel(); jdepart2=newjavax.swing.JTextField(); sure=newjavax.swing.JButton(); jLabel4=newjavax.swing.JLabel(); money=newjavax.swing.JTextField(); jLabel5=newjavax.swing.JLabel(); jLabel6=newjavax.swing.JLabel(); setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); jButton1.setText("\u8fd4\u56de\u4e3b\u754c\u9762"); jButton1.addActionListener(newjava.awt.event.ActionListener(){ publicvoidactionPerformed(java.awt.event.ActionEventevt){ jButton1ActionPerformed(evt); } }); jLabel1 .setText("\u8bf7\u8f93\u5165\u90e8\u95e8\u540d\u53ef\u8fdb\u884c\u6a21\u7cca\u67e5\u627e"); jButton2.setText("\u786e\u5b9a"); jButton2.addActionListener(newjava.awt.event.ActionListener(){ publicvoidactionPerformed(java.awt.event.ActionEventevt){ jButton2ActionPerformed(evt); } }); jLabel2 .setText("\u7ed9\u6307\u5b9a\u90e8\u95e8\u7684\u6240\u6709\u5458\u5de5\u8c03\u85aa"); jTable1.setModel(newjavax.swing.table.DefaultTableModel( newObject[][]{ },newString[]{"部门编号","部门名称"})); jScrollPane1.setViewportView(jTable1); jLabel3.setText("\u8f93\u5165\u5168\u540d\u9009\u5b9a\u90e8\u9
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 人事 工资管理 系统 课程设计 报告