工资管理系统概述.docx

上传人:b****5 文档编号:7460129 上传时间:2023-01-24 格式:DOCX 页数:31 大小:1.08MB
下载 相关 举报
工资管理系统概述.docx_第1页
第1页 / 共31页
工资管理系统概述.docx_第2页
第2页 / 共31页
工资管理系统概述.docx_第3页
第3页 / 共31页
工资管理系统概述.docx_第4页
第4页 / 共31页
工资管理系统概述.docx_第5页
第5页 / 共31页
点击查看更多>>
下载资源
资源描述

工资管理系统概述.docx

《工资管理系统概述.docx》由会员分享,可在线阅读,更多相关《工资管理系统概述.docx(31页珍藏版)》请在冰豆网上搜索。

工资管理系统概述.docx

工资管理系统概述

 

工资管理系统概述

 

第一章系统概述

系统名称:

基于B/S的工资管理系统

系统目标:

对于企、事业单位的工资发放来说,不需要太大型的数据库系统。

只需要一个操作方便,功能实用,能同时满足财务部门、单位其它相关部门及代发单位三方对数据的管理及需求的系统。

我的目标就是在于利用数据库开发软件开发一个功能实用,用户操作方便,简单明了的工资管理程序

1.1课题来源

随着计算机技术的飞速发展计算机在企业管理中应用的普及利用计算机实现企业人事管理势在必行。

对于大中型企业来说利用计算机支持企业高效率完成劳动人事管理的日常事务是适应现代企业制度要求、推动企业劳动人事管理走向科学化、规范化的必要条件计算机管理所无法比拟的优点检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。

这些优点能够极大地提高人事管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。

不同的企业具有不同的人事管理制度这就决定了不同的企业需要不同的人事管理系统。

1.2设计目的及内容

1.2.1设计目的

当前市面上流行的人事管理系统不少。

可是,对于企、事业单位的人事管理系统来说,不需要大型的数据库系统。

只需要一个操作方便功能实用能满足本中心对数据的管理及需求的系统。

我们的目标就是在于开发一个功能实用、操作方便、简单明了的人事管理系统。

1.2.2设计内容

能够录入人事的基本资料,在操作上能够完成诸如添加、修改、删除、按各种条件进行查询、能维护管理公司员工每个月的工资信息、在操作上能完成诸如添加、修改删除及按各种条件进行查询,还能管理员工的请假信息。

1.3技术概述

1.3.1JAVA语言简介

Java是一种简单易用、完全面向对象、具有平台无关性且安全可靠的主要面向Internet的开发工具。

自从1995年正式问世以来,Java的快速发展已经让整个Web世界发生了翻天覆地的变化。

在早期Java比较多的用在浏览器上、插入到网页中(即是JavaApplet程序)成为最灵活、最强大的网页多媒体的载体,但由于Java虚拟机相对于个人电脑而言,有占用资源大,安全性相对较差等缺点,Applet逐渐的被后起之秀Flash所替代,但随着JavaServlet的推出,Java在电子商务方面开始崭露头角,最新的JSP(JavaServerPage)技术的推出,更是让Java成为基于Web的应用程序的首选开发工具当前的Java技术已成为所有大型电子商务项目的必然选择。

1.3.2JAVA语言的网络运用

Java程序能够获取网络上结点的图象、声音、HTML文档及文本等资源,并能够对获得的资源进行处理。

例如Java程序能够每隔一定时间读取某结点提供的最新数据并以图表的形式显示出来。

在编程处理上,一般先生成一个URL类型的对象,然后用Java中相应的方法获取该对象所代表的资源,JavaApplet能够直接从网络上结点获取图象并显示出来。

当前,Java更广泛的应用是在服务器端,这是本文研究的主要话题,下文提及的Servlet、JSP等技术都是Java在服务器端应用的具体形式。

1.3.3JSP基础Servlet技术

JavaServlet是JSP技术的基础,JSP本身就是预先被编译成Servlet,然后再运行的,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成,Servlet这个名称大概源于Applet,现在国内的翻译方式很多,本文为了避免误会本文直接采用Servlet这个名称而不做任何翻译,读者如果愿意能够称之为”小服务程序”。

Servlet其实和传统的CGI程序和ISAPI、NSAPI等Web程序开发工具的作用是相同的,在使用JavaServlet以后,用户不必再使用效率低下的CGI方式,也不必使用只能在某个固定Web服务器平台运行的API方式来动态生成Web页面。

许多Web服务器都支持Servlet,即使不直接支持Servlet的Web服务器也能够经过附加的应用服务器和模块来支持Servlet。

得益于Java的跨平台的特性Servlet也是平台无关的,实际上,只要符合JavaServlet规范,Servlet是完全平台无关且是Web服务器无关的。

由于JavaServlet内部是以线程方式提供服务不必对于每个请求都启动一个进程而且利用多线程机制能够同时为多个请求服务,因此JavaServlet效率非常高。

但JavaServlet也不是没有缺点,和传统的CGI、ISAPI、NSAPI方式相同,JavaServlet是利用输出HTML语句来实现动态网页的,如果用JavaServlet来开发整个网站,动态部分和静态页面的整合过程简直就是一场噩梦。

这就是为什么SUN还要推出JavaServerPages的原因。

1.3.4JaveBeans技术

什么是JavaBeans?

JavaBeans就是Java的可重用组件技术。

ASP经过COM来扩充复杂的功能,如文件上载、发送email以及将业务处理或复杂计算分离出来成为独立可重复利用的模块。

JSP经过JavaBeans实现了同样的功能扩充。

JSP对于在Web应用中集成JavaBeans组件提供了完善的支持。

这种支持不但能缩短开发时间还能够直接利用经测试和可信任的已有组件,避免了重复开发也为JSP应用带来了更多的可伸缩性。

JavaBeans组件能够用来执行复杂的计算任务,或负责与数据库的交互以及数据提取等。

在实际的JSP开发过程中读者将会发现,和传统的ASP或PHP页面相比,JSP页面将会是非常简洁的,由于JavaBeans开发起来简单,又能够利用Java语言的强大功能许多动态页面处理过程实际上被封装到了JavaBeans中。

本系统概述了工资管理的需求、整体结构、基本功能和数据库结构。

内容包括:

对普通工资管理业务中存在的一些问题的分析,对工资的数据进行查询、统计、报表打印等基本功能的分析设计和实现。

重点介绍了工资管理信息系统中数据查询统计模块的分析和设计以及如何利用本系统的开发解决以往工资管理中存在的需要人工管理,进行人工统计,对工资的统计和查询都很单一、不能综合处理业务、工作效率低等问题。

 

第二章系统分析

2.1可行性分析

2.1.1经济可行性分析

工资管理作为企业内部财务管理的一个重要方面,已逐步被企业管理者所重视,由于企业的规模的不断扩,大企业职工人数的不断增多,使工资发放成为企业管理中的一个重课题;再加上每一位职工的具体实际情况相同,规章制度的不完善,增大了个人工资发放难度;每个人每月的工资都要经过工资制度的审核,这大大增加了管理人员的工作量,经过计算机管理系统对员工工资进行全面的统计与管理,全面解决了工资管理过程中所遇到的各种问题,而且克服了传统管理方式中的易出错等问题,提高了企业管理的效率,而且这些信息都具有极高的安全性和保密性。

2.1.2技术可行性分析

技术上的可行性分析主要分析现有技术条件能否顺利完成开发工作,硬件、软件配置能否满足开发者的需要,各类技术人员的数量,水平,来源等。

工资管理系统的工作主要是在企业和员工之间架起一座桥梁,能相互沟通信息和处理信息。

这一特点非常适合计算机特点,经过网络internet技术,发挥计算机的信息传输速度快、准确度高的优势。

计算机硬件和软件技术的飞速发展,为系统的建设提供了技术条件

2.1.3社会可行性分析

社会可行性有时也称为操作可行性,主要论证新系统在企业或机构开发和运行的可能性以及运行后可能一起的对企业或机构的影响,即组织内外是否具备接受和使用新系统的条件。

在当前信息技术飞速发展的大环境下,计算机技术和软件技术的更新使人们完全有可能也有能力采用这样先进的管理技术。

在某种意义上,信息与科技在现代化建设中显现出越来越重要的地位。

管理方面的信息化与科学化,已成为现代化生活水平步入高台阶的重要标志。

好的管理系统对提高人们的生活效益是极为有益的

2.2功能需求

1、系统功能的基本要求:

(1)员工每个工种基本工资的设定

(2)加班津贴管理,根据加班时间和类型给予不同的加班津贴;

(3)按照不同工种的基本工资情况、员工的考勤情况产生员工的每月的月工资;

(4)员工年终奖金的生成,员工的年终奖金计算公式=(员工本年度的工资总和+津贴的总和)/12;

(5)企业工资报表。

能够查询单个员工的工资情况、每个部门的工资情况、按月的工资统计,并能够打印;

2、数据库要求:

在数据库中至少应该包含下列数据表:

(1)员工考勤情况表;

(2)员工工种情况表,反映员工的工种、等级,基本工资等信息;

(3)员工津贴信息表,反映员工的加班时间,加班类别、加班天数、津贴情况等;

(4)员工基本信息表

(5)员工月工资表。

2.3数据流程图

2.3.1总数据流程图

图2-1总数据流程图

2.3.2职员信息载入

图2-2职员信息

2.3.3工资信息载入

图2-3工资信息

2.3.4考勤信息载入

图2-4考勤信息

2.3.5津贴信息载入

图2-5津贴信息

2.4数据字典

工资管理系统各实体及联系的数据字典

2.4.1数据流的描述

数据流的编号:

D001

数据流的名称:

员工基本信息

简述:

与员工有关的基本信息

数据流来源:

员工基本信息表

数据流去向:

员工,部门

数据流组成:

员工编号+姓名+性别+年龄+部门+进入公司时间+住址

数据流的编号:

D002

数据流的名称:

工资结构信息

简述:

查询工资时所包含的相关信息

数据流来源:

工资信息表

数据流去向:

员工

数据流组成:

员工编号+加班加班+出差工资+迟到早退+矿工工资+应发工资+实发工资

数据流的编号:

D003

数据流的名称:

职务部门信息

简述:

查询员工职务部门信息

数据流来源:

职务部门信息表

数据流去向:

员工数据流组成:

员工编号+职务+部门

数据流的编号:

D004

数据流的名称:

员工变动信息

简述:

查询员工变动情况

数据流来源:

员工变动信息表

数据流去向:

员工

数据流组成:

员工编号+原职务+原部门+现职务+现部门

2.4.2处理逻辑的描述

处理逻辑编号:

p001

处理逻辑名称:

工资统计

简述:

对工资进行统计、计算

输入的数据流:

基本工资信息

处理描述:

根据职工的职位及其它相应情况计算出工资

输出的数据流:

工资信息

处理逻辑编号:

p002

处理逻辑名称:

员工信息处理

简述:

对员工信息进行处理

输入的数据流:

员工信息处

理描述:

根据员工的基本信息进行各种操作

输出的数据流:

员工信息

处理逻辑编号:

p003

处理逻辑名称:

变动处理

简述:

对员工的变动情况进行处理输入的数据流:

员工变动信息

处理描述:

可进行添加、修改和删除等操作

输出的数据流:

员工变动信息

2.4.3数据存储的描述

数据存储编号:

F001

数据存储名称:

员工基本信息表

简述:

员工的基本信息

数据存储组成:

员工编号+姓名+性别+年龄+部门+进入公司时间+住址

关键字:

员工编号

相关联的处理:

P002

数据存储编号:

F002

数据存储名称:

基本工资表

简述:

员工的工资信息

数据存储组成:

员工编号+加班加班+出差工资+迟到早退+矿工工资

关键字:

员工编号

相关联的处理:

P001

数据存储编号:

F003

数据存储名称:

变动信息表

简述:

员工的变动信息

数据存储组成:

员工编号+原职务+原部门+现职务+现部门

关键字:

员工编号

相关联的处理:

P002,P003

第三章数据库设计

3.1数据库概念设计

有了数据流图,用E-R图来说明工资信息管理系统的数据库概念模式。

图3-1总E-R图

图3-2工资E-R图

图3-3津贴E-R图

图3-4考勤E-R图

图3-5员工E-R图

 

3.2系统详细设计

3.2.1数据库逻辑设计

将以上E-R转换成如下关系模式

员工(职工号,姓名,工龄,部门岗位,电话号码,密码)

工资(职工号,个人所得税,基本工资,医疗保险,缺勤扣除)

考勤(职工号,缺勤天数,缺勤类别,时间)

津贴(职工号,年终奖金,加班奖金,其它奖金)

其中,标有下划线的字段表示为该数据表的主码,即主关键字。

在上面的实体以及实体之间关系的基础上,形成数据库中的表格以及各个表格之间的关系。

工资信息管理系统数据库中各个表格的设计结果如下面的几个表格所示。

每个表格表示在数据库中的一个表。

表一:

员工信息表:

列名

数据类型

可否取空

备注说明

no

Char(8)

NOTNULL

职工号(主键)

name

Char(10)

NOTNULL

职工姓名

gw

Char(20)

NOTNULL

部门岗位

gl

Smallint

NOTNULL

工龄

hm

Char(11)

NULL

电话号码

mi

Smallint

NOTNULL

登录密码

图3-6

表二:

工资表:

列名

数据类型

可否取空

备注说明

no

Char(8)

NOTNULL

职工号(主键)

Jb

money

NOTNULL

基本工资

yl

money

NULL

医疗保险

Sw

money

NULL

个人所得税

kc

money

NULL

缺勤扣除

Jt

money

NULL

津贴

yz

money

NOTNULL

月总工资

图3-7

表三:

员工考勤信息表

列名

数据类型

可否取空

备注说明

no

Char(8)

NOTNULL

职工号(主键)

ts

Int(4)

NULL

缺勤天数

lb

Char(30)

NULL

缺勤类别

Sj

Char(10)

NULL

缺勤时间

图3-8

表四:

津贴信息表

列名

数据类型

可否为空

备注说明

no

Char(8)

NOTNULL

职工号(主键)

Jiaban

money

NULL

月加班奖金

nz

money

NULL

年终奖金

qt

money

NULL

其它奖金

图3-9

3.3功能模块

 

图3-10模块图

3.4各模块功能

3.4.1职工信息管理系统

功能为:

财务部门相关人员录入、修改、删除、查询员工个人信息;员工本人能经过用户名和密码查询自己的信息以及修改自己的密码;

3.4.2职工工资管理系统

功能为:

根据工资生成公式,按照员工的考勤情况及各种表现按月生成相应的工资;财务部门相关人员能录入、修改、删除、查询每个月每个员工的工资信息以及工资汇总;员工本人能查询自己的工资信息以及工资汇总;

3.4.3职工津贴管理系统

功能为:

财务部门相关人员录入、修改、删除、查询职工津贴信息;职工本人能查询自己的津贴;

3.4.4职工考勤管理系统

功能为:

后勤管理人员录入、修改、删除、查询职工考勤信息;职工本人能查询自己的考勤情况。

采用模块化设计思想,能够大大提高设计的效率,而且能够最大限度地减少不必要的错误。

第三章系统实现

3.1界面截图

3.1.1登录界面

图3-1登录界面

3.1.2系统主界面

图3-2系统主界面

3.1.3考勤信息录入,修改,删除,查询界面

图3-3录入修改考勤

3.2设计代码

Java源程序:

importjava.awt.*;

importjava.awt.event.*;

importjavax.swing.*;

importjava.awt.*;

importjava.sql.*;

importjava.lang.*;

importjava.util.*;

importjavax.swing.table.*;

importjava.math.*;

classDB_LSimplementsActionListener{

JFrameframe=newJFrame("欢迎进入LS工资管理系统");

JLabellabel=newJLabel("09网络2_54_李胜",JLabel.CENTER);

JButtonbutton1=newJButton("进入系统");

JButtonbutton2=newJButton("退出系统");

ImageIconim=newImageIcon("1.jpg");

JLabela1=newJLabel(im);

voidCreate(){

JPanelpcontentPane=(JPanel)frame.getContentPane();

JPanelpcontentPane1=newJPanel();

pcontentPane.add(label);

pcontentPane.setLayout(newFlowLayout());

pcontentPane.add(button1);

pcontentPane.add(button2);

pcontentPane.add(newLabel(""));

pcontentPane.add(a1);

pcontentPane.setBackground(Color.green);

pcontentPane.setVisible(true);

button1.addActionListener(this);

button2.addActionListener(this);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.pack();

frame.setBounds(200,100,550,600);

frame.setVisible(true);

}

publicstaticvoidmain(String[]args){

DB_LSdome=newDB_LS();

dome.Create();

}

publicvoidactionPerformed(ActionEvente){

if(button1.equals(e.getSource())){

DLdl=newDL();

dl.create();

}

if(button2.equals(e.getSource())){//退出

System.exit(0);

}

}

}

 

classDLimplementsActionListener{

JFrameframe=newJFrame("职工/管理员登陆");

JLabellabel1=newJLabel("用户名");

JLabellabel2=newJLabel("密码");

JButtonlogonButton1=newJButton("管理员登录");

JButtonlogonButton2=newJButton("职工登录");

JButtoncancelButton=newJButton("退出");

JTextFieldt1=newJTextField(0);

JTextFieldt2=newJTextField(0);

ImageIconim=newImageIcon("2.jpg");

JLabela2=newJLabel(im);

JTextFieldusername=newJTextField(9);

JPasswordFieldpassword=newJPasswordField(9);

voidcreate(){

JPanelp=(JPanel)frame.getContentPane();

JPanelp1=newJPanel();

p.setLayout(newFlowLayout());

p.add(label1);

p.setSize(5,5);

p.setLocation(4,8);

p.add(username);

p.setSize(100,200);

p.setLocation(800,800);

p.add(label2);

p.setSize(50,20);

p.setLocation(40,80);

p.add(password);

p.setSize(100,20);

p.setLocation(80,120);

p.add(logonButton1);

p.add(newJLabel(""));

p.add(logonButton2);

p.add(newJLabel(""));

p.add(cancelButton);

p.add(newJLabel(""));

p.add(a2);

p.add(t1);

p.add(t2);

p.setBackground(Color.blue);

p.setVisible(true);

logonButton1.addActionListener(this);

logonButton2.addActionListener(this);

cancelButton.addActionListener(this);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.pack();

frame.setBounds(200,100,750,550);

frame.setVisible(true);

}

publicvoidactionPerformed(ActionEvente){

if(logonButton1.equals(e.getSource())&&(username.getText().equals("123")==true)&&(password.getText().equals("123")==true)){

GZGLZJMgz=newGZGLZJM();

gz.create();

}

else{JOptionPane.showMessageDialog(null,"对不起,你输入的密码错误!

");

};

if(logonButton2.equals(e.getSource())&&(username.getText().equals(t1.getText())==true)&&(password.getText().equals(t2.getText())==true)){

XKxk=newXK();

xk.create();

Connectioncon;

Statementsql;

ResultSetrs;

Vectorvector=newVector();

tr

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 理学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1