1、人事信息管理系统课程设计第1章 概述1.1 课程设计的目的随着现代经济的高速发展,各种企业的不断崛起,企业员工的不断增加,企业在管理方面对需求越来越大。伴随着计算机的迅速发展和广泛使用,企业人事信息管理转向电子化成为必然。传统的人事信息管理存在很大的不足:利用人进行信息的增减,容易导致信息的错误,而且管理的效率低下,导致资源的可利用性低,劳动力大,安全性也不够,加上,随着时间的递增,信息量不断增大,对信息的增加、删除、检索、查找就会存在很大的问题。因此,随着企业的强大和发展,传统的管理方式不再适应企业的需要。应用计算机进行管理信息,有着其手工无法比拟的优点。例如:存储量大、修改方便、检索快速、
2、安全性高,使用寿命长、成本低、可靠性好等。这些优点能够极大地提高人事信息管理的效率,有助于企业的发展。1.2 课程设计的意义人事信息管理系统的开发需要就Java语言和数据库两方面的知识,因此设计一个实用性强的人事信息管理系统,对于我们进行课程设计方面知识的提高有很大的推动作用。人事信息管理系统的开发需要用到多方面的知识,包括数据库的选用、数据库的建立和维护、信息的存储、管理界面的设计。这些对于设计者的知识水平有较高的要求。因此,如何规划、设计和开发好这个人事信息管理系统,对于提高我们的Java开发水平有极大的帮助。同时,在设计开发过程中,我们可以选用适当的数据库和数据库连接驱动程序,建立好合适
3、的数据库表格和设计好美观大方的管理界面。第2章 系统功能设计2.1 系统需求分析2.1.1人事信息管理系统的客户功能需求该开发系统的设计主要用于实现以下几个功能:(1) 人事信息管理系统主界面人事信息系统主界面主要包括系统设计,公司结构,员工管理,职务管理,出勤管理,工资管理,奖罚管理,福利管理和帮助等内容,可以进行各种信息的添加、查询,删除等操作。(2) 员工信息管理子系统员工信息管理子系统主要是对所有员工的个人信息进行登记、删除、检索、查找,包括员工的编号,员工的性别,员工的姓名,员工的身份证号码,员工的联系电话、联系方式,员工的入公司时间,照片等记录。并且还能够删除错误的员工个人记录的信
4、息。(3) 职务信息管理子系统职务信息管理子系统主要是对所有员工的职务信息进行登记,包括了两个部分的内容职务管理和职务变更。职务管理包括员工的编号,员工的姓名以及员工的现任职务,并且能够删除错误的员工职务记录的信息。职务变更包括员工的编号,员工的姓名,员工的各种职务以及任职该职务的时间。并且能够删除错误的员工职务变更记录的信息。(4) 出勤信息管理子系统出勤信息管理子系统主要是对所有员工的出勤信息进行登记,包括了四个部分的内容上班登记、下班登记、请假登记和加班登记。上班登记主要是对所有员工的上班信息进行登记,包括员工的编号,员工的姓名,员工的上班时间和相应的备注信息,并且能够删除错误的员工上班
5、时间记录的信息。下班登记主要是对所有员工的下班信息经行登记,包括员工的编号,员工的姓名,员工的下班时间和相应的备注信息,并且能够删除错误的员工下班时间记录的信息。请假登记主要是对所有员工的请假信息进行登记,包括员工的编号,员工的姓名,员工的请假日期,员工的请假时间,员工的请假原因和相应的备注信息,并能够删除错误的员工请假记录的信息。加班登记主要是对所有员工的加班信息进行登记,包括员工的编号,员工的姓名,员工的加班日期,员工的加班时间,员工的加班薪资和相应的备注信息,并能够删除错误的员工加班记录的信息。(5) 工资信息管理子系统工资信息管理子系统主要是对所有的员工的工资信息进行登记,包括了员工的
6、编号,员工的姓名,员工的基本工资、补贴金、加班费、奖惩金,员工的总工资和相应的备注信息,并且能够删除错误的员工工资记录的信息。(6) 惩罚信息管理子系统惩罚信息管理子系统主要是对说有的员工的惩罚信息进行登记,包括了员工的编号,员工的姓名,员工的奖励、惩罚,员工的惩罚说明和相应的备注信息,并且能够删除错误的员工惩罚记录的信息。(7) 福利信息管理子系统福利信息管理子系统主要是对所有的员工的福利信息进行登记,包括员工的编号,员工的姓名,员工的养老保险金、失业保险金、工伤保险金,员工的福利总计和相应的备注信息,并且能够删除错误的员工福利记录的信息。2.1.2系统开发和运行环境(1) 硬件配置及外设设
7、备硬件平台是指开发与运行所需要的硬件环境,主要包括计算机机型及硬件配置。由于本系统是一个MINI管理系统,因此对计算机硬件的要求不是很高,成本较低,只要配备如表2-1所示的就可以。表2-1 计算机硬件配备要求表内容最低配置建议配置主机P3/1GP4/2G以上内存256MB1G以上硬盘20GB60GB以上(2)开发运行软件环境软件平台是指系统开发与运行的软件环境。本系统在开发时选用的操作系统是稳定性较强的Windows XP中文专业版,Java程序设计的开发环境是JDK 5.0,集成开发工具是JCreator专业版,数据库的设计工具选用的Microsoft公司的Access 2003。 Java
8、语言是一种跨平台、适合于分布式计算机环境的面向对象编程语言。具体来说,它具有如下特性:简单性、面向对象、分布式、解释性、可靠、安全、平台无关、可移植、多线程、动态性等。Java的开发环境大体上分成两种方式。一种方式是使用JDK(Java Developers Kits)工具集,这是一种命令行的方式。另一种方式是使用集成开发环境(Integrated Developing Environment,IDE)。采用JDK开发Java程序,能够很快理解程序中各部分代码之间的关系,有利于理解Java面向对象的设计思想。JDK的另一个显著特点是随着Java 版本的升级而升级。但它的缺点也是非常明显的就是从
9、事大规模企业级Java应用开发非常困难,不能进行复杂的Java软件开发,也不利于团体协同开发。JCreator 专业版是一款适合于各个 Java 语言编程开发人员的IDE工具。 她为使用者提供了大量强劲的功能,例如: 项目管理、工程模板、代码完成、调试接口、高亮语法编辑、使用向导以及完全可自定义的用户界面。JCreator 具有无限撤销、代码缩进、自动类库方法提示、安所选职能定位查阅JavaAPI文档的功能,它支持JSP、Ant、CVS,其.小巧、易用、美观,是Java初级程序员的理想IDE。 Access2003 是一款Window环境下的数据库管理软件,是Office办公套件中一个极为重要
10、的组成部分,是Microsoft公司于2003年推出的微机数据库管理系统,它不仅解决了以往的Acess中处理中文的麻烦,而且具有了新的优点,在功能上做了加强。它具有界面友好、易学易用、开发简单、接口灵活等特点,是典型的新一代桌面关系数据库管理系统。利用它可以方便的实现对信息保存、维护、查询、统计等,而且它可以十分方便的与Office其他组件交流数据。2.2 系统的概要设计2.2.1 系统的功能框架分析信息管理子系统,职务信息管理子系统,出勤信息管理子系统,工资信息管理子系统,惩罚信息管理子系统以及福利信息管理子系统。同时,为了增强系统的安全性,首先需要通过用户权限认证,只有在登陆界面上输入正确
11、的用户名和密码,才能的功能路本系统进行操作。通过了系统功能框架的分析,得到了如图2-1的系统功能模块。构建一个人事信息管理系统,该系统主要由六个子系统组成,分别包括个人图2-1系统功能框架下面简单说明一下各个框架的功能:(1)系统设置模块:本应用模块的主要功能是进行管理员设置、返回主页面、以及系统的安全退出。(2)公司结构模块:本应用模块的主要功能是进行公司结构的说明,相关部门的管理以及职位的调整。(3)员工管理模块:本应用模块的主要功能是实现对员工信息的增加、信息的修改、信息的查询以及信息的删除等操作。(4)职务管理模块:本应用模块的主要功能是实现对员工现任职务、员工植物变更记录的管理,以及
12、职务的设置。(5)出勤管理模块:本应用模块的主要功能是实现对员工上下班时间登记,员工请假信息,员工加班信息记录的管理。(6)工资管理模块:本应用模块的主要功能是实现对员工工资信息的管理,包括工资的查询和调整。(7)奖惩管理模块:本应用模块的主要功能是实现对员工的奖惩信息的管理,包括奖惩的查询和添加。(8)福利管理模块:本应用模块的主要功能是实现对员工福利信息的管理,包括福利的查询和调整。(9)帮助模块:本应用模块的主要功能是实现系统帮助,关于系统。2.2.2 系统的数据库逻辑设计分析数据库设计是在选定的数据库管理系统基础上建立数据库的过程。数据库设计除了用户分析外,还包括概念结构设计、逻辑结构
13、设计和物理结构设计等三个阶段。数据库系统已经成为一门独立的学科,所以,当我们把数据库设计原理应用到MIS开发中,数据库设计的几个步骤与系统开发的各个阶段相对应,且融为一体,它们的对应关系如图2-2所示。图2-2数据库设计与系统开发阶段对应关系图(1) 概念模型E-R图这一设计阶段是在逻辑关系分析的基础上,设计出能够满足用户需求的各种实体,以及他们之间的关系,为后面的数据库逻辑设计打下基础。本文根据上面的分析规划出的实体有部门设计、员工信息、职务管理、职务变更、上班登记、下班登记、员工请假信息、员工加班信息、员工奖惩信息、员工工资信息、员工福利信息、管理员信息等。实体与实体之间的关系E-R图如图
14、2-3至图2-14所示。图2-3 部门设计实体E-R 图图2-4 员工信息实体E-R图图2-5 职务管理实体E-R图图2-6 职务变更实体E-R图图2-7 上班登记实体E-R图图2-8 下班登记实体E-R图图2-9 员工请假实体E-R图图2-10 员工加班实体E-R图图2-11 员工奖惩实体E-R图图2-12 员工工资实体E-R图图2-13 员工福实体E-R图图2-14 管理员信息实体E-R 图(2) 表结构分析根据本系统功能需求,数据库采用Microsoft公司的Access 2003,它完全可以适合工作需求,并且它所支持的数据类型十分丰富,维护简单,费用比较低,开发人员技术要求不是很高。根
15、据模块的设计,以及规范化的设计要求,为满足系统需要,本系统共建立12个表分别是:部门设计表,雇员信息表,职务管理表,职务变更表,上班登记表,下班登记表,员工请假信息表,员工加班信息表,员工奖罚信息表,员工工资表,员工福利表,管理员信息表。各个数据表的结构如表2-2至表2-13所示。表2-2 部门设计表(Department_Infor)字段名数据类型字段大小是否主键部门编号文本20是部门名称文本20备注备注表2-3员工信息表(employee_Infor)字段名数据类型字段大小是否主键员工编号文本8是姓名文本20性别逻辑2年龄数字密码文本10身份证号文本18联系电话文本20地址文本50入员时间
16、日期/时间8照片OLE对象备注备注表2-4 职务管理表(Duty_Infor)字段名数据类型字段大小是否主键员工编号文本8是姓名文本20现任职务文本30所属部门文本20备注备注 表2-5 职务变更表(Duty_Change_Infor)字段名数据类型字段大小是否主键员工编号文本8是姓名文本20现任职务文本30上任时间日期/时间8卸任时间日期/时间8备注备注表2-6 上班登记表(Start_Register_Infor)字段名数据类型字段大小是否主键员工编号文本8是姓名文本20上班时间日期/时间8备注备注表2-7 下班登记表(Finish_Register_Infor)字段名数据类型字段大小是否
17、主键员工编号文本8是姓名文本20下班时间日期/时间8备注备注表2-8 员工请假信息表(On_Leave_Infor)字段名数据类型字段大小是否主键员工编号文本8是姓名文本20请假时间日期/时间8时间长短文本20备注备注表2-9 员工加班信息表(Over_Time_Infor)字段名数据类型字段大小是否主键员工编号文本8是姓名文本20加班日期日期/时间8加班时间文本20备注备注表2-10 员工奖惩信息表(Award_Punish_Infor)字段名数据类型字段大小是否主键员工编号文本8是姓名文本20奖励金货币罚款货币备注备注表2-11 员工工资信息表(Wage_Infor)字段名数据类型字段大小
18、是否主键员工编号文本8是姓名文本20基本工资货币公司补贴货币加班费货币奖励金货币扣除金额货币总工资货币备注备注表2-12员工福利表(Welfare_Infor)字段名数据类型字段大小是否主键员工编号文本8是姓名文本20养老保险货币失业保险货币工伤保险货币总福利金货币备注备注表2-13管理员信息表(Manager_Infor)字段名数据类型字段大小是否主键管理员文本20密码文本10(3) 数据字典分析 数据流程图描述了系统的分解,但没有对图中各成分进行说明,数据字典(Data Dictionary,DD)就是为数据流程图的每个数据流文件加工,以及组成数据流或文件的数据项作出说明,具体见表2-14
19、至表2-18表 2-14 员工管理的数据字典作用对员工管理信息查询进行描述来源管理员对员工编号的查询去向员工本地查询数据结构员工信息查询(员工编号,姓名,性别,年龄,密码,联系电话,地址,入员时间,照片)表2-15 职务管理的数据字典作用对员工现任职位查询进行描述来源管理员对员工编号的查询去向员工本地查询数据结构职位信息查询(员工编号,姓名,现任职务、所属部门)表2-16 出勤管理的数据字典作用对员工出勤信息查询进行描述来源管理员对员工编号的查询去向员工本地查询数据结构出勤信息查询(员工编号,姓名,上班时间,下班时间,请假信息,加班信息)表2-17 工资信息查询的数据字典作用对员工工资信息查询
20、结构进行描述来源管理员对雇员编号的查询去向员工本地查询数据流结构工资信息查询(雇员编号,姓名,基本工资,公司补贴,加班费,奖励金,扣除金额,总工资)表2-18 福利信息查询的数据字典作用对员工福利信息查询结构进行描述来源管理员对雇员编号的查询去向员工本地查询数据流结构福利信息查询(雇员编号,姓名,养老保险,失业保险,工伤保险,总福利金)2.2.3 数据流程分析1 总的系统流程图如图2-15所示:图2-15 总的系统流程 业务流程图(Transaction Flow Diagram,TFD)是一种描述系统内各单位、人员之间业务关系、作业顺序和管理信息流向的图表,利用它可以帮助分析人员找出业务流程
21、中的不合理的流向。通过前面对企业仓库管理情况进行的一系列调研与分析,得到如图2-16所示的业务流程图。图2-16 业务流程图人事管理系统的业务处理过程如下:企业认识管理系统记录基本的信息并能对系统的的已有信息进行查询;信息添加记录中对基本信息添加;信息输出记录对基本信息并能进行查询。 根据业务流程图分析,对于其中的数据流向,处理及存储进行逐层分解,可以得到数据流程图(Data Flow Diagram,DFD)。数据流程图是分层次的,绘制是采取自顶向下逐层分解的方法。顶层数据流程图只有一张,它说明了系统总的处理功能、输入和输出。下一步是对顶层数据流程图中的“处理”进行分解,也就是对第一层数据流
22、程图的再分解。数据流程图如图3-3所示。图3-3 数据流程图第3章 管理系统主界面设计开发3.1 程序设计3.1.1程序设计思想与原则 编写程序应符合软件工程化思想。应用软件的编程工作量极大,而且要经常维护、修改。如果编写程序不遵守正确的规律,就会给系统的开发维护带来不可逾越的障碍。软件工程的思想即利用工程化的方法进行软件开发,通过建立软件工程环境来提高软件开发效率。自顶向下的模块化方法描述了大程序设计的原则,在具体编程中,则应采用结构化程序设计方法。这种方法指导人们用良好的思想方法却设计程序,其特点是采用顺序结构、循环结构和选择结构三种基本逻辑结构来编写程序。3.2功能界面设计 虽说程序设计
23、最核心的地方是程序的功能,但程序的界面设计是不可忽视的,它直接影响到程序的易用性。尤其在Windows时代,一个良好的应用界面会给你的程序锦上添花,甚至有画龙点睛之韵味。一般来说,在完成核心算法的编制后,就要开始精心设计应用界面了。图3-1 系统登录界面登陆界面的代码:public class HRM_App public static void main (String args) Login _Login=new Login(); 系统主页面代码为:import java.awt.*;import javax.swing.*;import javax.sql.*;import java.a
24、wt.event.*;public class AppMain extends JFrame private JMenuBar barMain = new JMenuBar(); private MenuBarListener _MenuBarListener = new MenuBarListener(); public final JDesktopPane desktop = new JDesktopPane(); public static DbConnection connetion=new DbConnection(); private int i,j; public AppMain
25、() super(人事管理系统); Container container = getContentPane(); container.add(desktop,BorderLayout.CENTER); MenuBarListener.setDeskTop(desktop); BuildBarMain(); this.setJMenuBar(barMain); setSize(900,700); int w = (Toolkit.getDefaultToolkit().getScreenSize().width - 900) / 2; int h = (Toolkit.getDefaultTo
26、olkit().getScreenSize().height - 700) / 2; setLocation(w, h);setVisible(true); addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent event) int result = JOptionPane.showOptionDialog(null,是否真的退出人事信息管理系统?,系统提示, JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE, null,new Stri
27、ng 确定,取消,取消); if (result = JOptionPane.YES_OPTION) try AppMain.connetion.connection.close(); catch(java.sql.SQLException sql) sql.printStackTrace(); System.exit(0); ); private JMenuBar BuildBarMain() final JMenu _Menu = new JMenu( 系统设置 ), new JMenu( 公司结构 ),new JMenu( 员工管理 ), new JMenu( 职务管理 ), new J
28、Menu( 出勤情况 ), new JMenu( 工资管理 ), new JMenu( 奖罚管理 ), new JMenu( 福利管理 ), new JMenu( 帮助 ); final JMenuItem _MenuItem=new JMenuItem(管理员设置),new JMenuItem(返回主界面),new JMenuItem(安全退出), new JMenuItem(公司结构),new JMenuItem(部门管理),new JMenuItem(职位调整),new JMenuItem(增加员工),new JMenuItem(信息修改),new JMenuItem(信息查询),new JMenuItem(减少员工),new JMenuItem(现任职务查询),new JMenuItem(职务变更查询),new JMenuItem(职务变更), new JMenuItem(上下班登记),new JMenuItem(请假管理),new JMenuItem(加班管理),new JMenuItem(工资查询),new JMenuItem(工资调
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1