Java的工资管理系统.doc

上传人:豆**** 文档编号:23957578 上传时间:2022-07-02 格式:DOC 页数:111 大小:3.91MB
返回 下载 相关 举报
Java的工资管理系统.doc_第1页
第1页 / 共111页
Java的工资管理系统.doc_第2页
第2页 / 共111页
点击查看更多>>
资源描述

《Java的工资管理系统.doc》由会员分享,可在线阅读,更多相关《Java的工资管理系统.doc(111页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、Four short words sum up what has lifted most successful individuals above the crowd: a little bit more.-author-dateJava的工资管理系统Java的工资管理系统 企业工资管理工资管理子系统企业工资管理工资管理子系统2一需求分析报告31.组织机构操作方式上的可行性32.基础数据的可用性33.经济上的可行性34.技术上的可行性35.目标分析3二项目开发计划41.项目开发组织机构的设置和人员的安排42.项目开发的进度43.项目开发经费的概算44.项目所需的硬件和软件资源等4三系统分析报告

2、41.业务流程图42.数据流程图63.功能分析图84.数据字典.95.数据加工处理的描述126.管理信息系统流程设计图(新系统模型)12四 .系统设计报告13五.系统实现部分162.源程序163.模拟运行数据334.测试用例346.系统使用说明书。37六.工作总结35七、致谢36八附录36一需求分析报告1.组织机构操作方式上的可行性本系统运行在通用的Windows操作系统上,具有Windows相似的操作界面。具有简单易学,使用方便等特点,只需在计算机上进行相关的简单的设置即可,懂得计算机基本操作的人员经过短期培训培训即可熟练操作,熟悉计算机操作的人员不需要再经过专门的培训即可熟练操作。所以,从

3、组织机构操作方式上的可行性分析,该系统是可行的。2.基础数据的可用性企业工资管理系统的基础数据都是一些比较常见的基础数据,比如职工编号,姓名,部门编号等等,在系统的设计过程中都是很好使用和编排的,所以,从系统基础数据可用性的角度看,该系统是可行的。3.经济上的可行性a.采用新的工资管理系统可取代原系统的单据手工传递工作,减少人工开支,节省资金,并且可大大提高信息量的取得,缩短信息处理周期,提高工资汇总的效率,使公司变的资金运转更加便捷。b.开发经费、投资方面的来源和限制:各种硬件及人员花费至少需8000元.所以,从经济上的可行性分析,该系统是可行的。4.技术上的可行性本系统是一个数据库管理和查

4、询的系统,现有的技术以较为成熟,硬件、软件的性能要求、环境条件等各项条件良好,估计利用现有技术条件应完全可以达到该系统的功能目标。职工工资管理系统开发与运行环境选择如下: 开发环境:Windows XP 开发工具:Java,Java软件可以选用eclipse3.5数据库管理系统:access数据库5.目标分析 做出一个简单实用工资管理系统,不需要功能复杂,只需要实用性强。功能要在很多小型企业都能够使用。操作性简单,要最大限度的减少使用用户的工作量。二项目开发计划1.项目开发组织机构的设置和人员的安排本系统开发人员共有4位,每人负责一部分。 :负责工资管理部分; :负责考勤管理部分; :负责工资

5、管理部分; :负责前台设置部分;2.项目开发的进度本小组决定在两周之内完成该项目的开发,即完成对该工资管理系统的开发,本系统计划分为四个模块,分别为工资管理,工资管理,考勤管理,前后台设置。第一周将系统设计报告撰写好,第三周时间进行系统设计和java代码设计,最后测试系统并加以完善。3.项目开发经费的概算项目开发经费的预算为:各种软硬件及人员花费至少需8000元。4.项目所需的硬件和软件资源等硬件、软件、运行环境和开发环境方面的条件和限制:软件需求:操作系统WINDOWS 2000 Advance Server以上;数据库服务器端软件access,java编程软件,jdk1.6版本。硬件需求:

6、10M以上的LAN接入网络带宽,P4 3.0G Xeon CPU /1G内存/360G(10K) SCSI硬盘的服务器,P3以上微机(带网卡)的客户机,P4 3.0G Xeon CPU /1G内存/36G(10K) RAID硬盘的数据库服务器。本系统采用java实现,依靠其强大的控件系统以及access数据库管理系统。三系统分析报告1.业务流程图图例说明: 表示外部实体 表示处理过程的说明表示系统 表示生成文档 表示表 表示信息的传输过程,线段上的文字是对传递信息的说明根据需求分析,我们分析出一个工资管理系统中工资管理子系统业务的一般流程:首先,用户必须进行注册以及登陆,才能进入工资管理系统。

7、注册及登陆的流程如下:图3-1员工注册及登陆业务流程图其次,员工登陆进入工资管理子系统之后就要进行工资查询。 图3-2 企业工资管理工资管理子系统业务流程图2.数据流程图图例说明: 表示外部实体 表示处理过程表示存储信息或文件 带有名称的有向线段表示数据流图3-3 工资管理系统顶层DFD图3-4 工资管理系统的第一层DFD 图3-5 企业工资管理工资管理子系统的数据流程图3.功能分析图该工资管理工资管理子系统的总体功能可以从两个方面来分析,一是查找功能,二是编辑功能-包括修改,删除,和添加,总体功能设计如图3-4所示。功能名称查询功能编辑功能员工员工和管理员都可以通过在进入工资管理子系统后,对

8、员工的基本,和基本工资信息进行查询无管理员管理员通过管理权限登录后,可根据改变员工信息,对基本工资表,工资表进行修改,添加和删除操作。图3-6 工资管理子系统功能分析图4.数据字典数据字典中有六类条目:数据元素、数据结构、数据流、数据存储、处理过程和外部实体。不同类型的条目有不同的属性。根据“数据流程图”,编写相应的“数据字典”,如下所示。(1)数据元素条目 数据元素条目总编码:3-1 编号:01数据项名称:员工编号 有关编码说明:数值类型:离散 XX XX类型:数字 序号长度:8 职务编号说明: 员工的具体编号 有关数据结构:基本工资表,工资表,可变工资表,最终工资表考勤表 数据元素条目总编

9、码:3-2 编号:02数据项名称:姓名 类型:字符 长度:8 说明: 员工的姓名 有关数据结构:基本工资表,工资表,可变工资表,最终工资表考勤表 数据元素条目总编码:3-3 编号:03数据项名称:性别 类型:字符 长度:2 说明: 员工的所拥有的性别 有关数据结构:工资表,最终工资表,考勤表 数据元素条目总编码:3-4 编号:04数据项名称:部门编号 有关编码说明:数值类型:离散 XX 类型:数字 部门编号长度:2 说明: 员工的所在部门的编号 有关数据结构:工资表,可变工资表,最终工资表考勤表 数据元素条目总编码:3-5 编号:05数据项名称:职务编号 有关编码说明:数值类型:离散 XX 类

10、型:数字 职务编号长度:2 说明: 员工的拥有的职务的编号 有关数据结构:工资表,最终工资表 数据元素条目总编码:3-8 编号:08数据项名称:底薪 类型:数字 长度:8 说明: 员工的得到的工资 有关数据结构:工资表,最终工资表 数据元素条目总编码:3-9 编号:09数据项名称:津贴 数值类型:离散 类型:数字 长度:8 说明: 员工得到的津贴 有关数据结构:工资表,最终工资表 (2)数据流条目名称:基本工资表简要说明:每月结束时,有工资管理员填写的表 总编号:3-10数据来源:管理员 编号:10数据流向: P1.1,P1.3 包含的数据结构: 流通量:1份/ 月员工编号性别姓名部门编号职务

11、编号底薪津贴(3)处理过程定义名称:查询最终工资说明:月末员工查询最终工资 总编号:3-12输入: P3.2 编号:12输出: D6 处理:员工通过正确的权限,进入到最终工资表界面,查询其本月所得到的最终工资.名称:修改基本工资表说明:月末管理员修改或查询基本工资 总编号:3-14输入:P1.1,P1.3 编号:14输出: D2 处理:管理员通过工资表和基本工资表的变动,对基本工资表进行查询或修改.(4)数据存储数据存储名称:基本工资表说明:月末按员工编号给员工发的最基本工资 总编号:3-16包含的数据结构: 编号:16员工编号性别 有关的数据流:姓名部门编号职务编号 信息量:1份/月底薪 有

12、无立即查询:有津贴5.数据加工处理的描述数据加工处理的工具主要包括:结构化语言,判断树,决策表。下面用结构化语言描述。如果 职务是经理则 基本工资为2500 如果职务是部长 则基本工资为2000如果职务是工人 则基本工资为12006.管理信息系统流程设计图(新系统模型) 图3-7 企业工资管理工资管理子系统设计报告四 .系统设计报告1. 功能结构设计本学工资管理子系统主要分为三个模块,包括查询,添加,修改和删除。本系统首先将员工的基本和基本工资信息输入,然后可以进行以下三种功能操作。图4-1 企业工资管理工资管理子系统功能模块设计2. 新系统信息处理流程设计 图4-2 3.代码设计(如:职工证

13、号和部门代号等)每一个代码都只代表唯一的实体或属性,代码必须简单明了,但必须有利于对数据进行统计、汇总、分析等操作。同时必须满足系统要求,便于记忆和使用。该工资管理子系统是针对员工信息进行管理的,主要涉及到的人员是员工,下面对员工的相关代码结构及编码规则进行说明,如下所示:员工编号 10 00 编号部门编号5.程序设计说明书五.系统实现部分1.程序框图(程序流程图)2.源程序下面是程序的各部分关系图:普通员工进入后的界面,只有查询功能,其余有添加修改删除操作的菜单为灰色,不能操作。这是管理员进入后的界面,全部可以操作,菜单显示可以全部操作。这是登陆界面的代码:import java.awt.*

14、;class denglu extends Frame public Label name=new Label(用户名); public Label pass=new Label(密码); public TextField txtname=new TextField(); public TextField txtpass=new TextField(); public Button btok=new Button(登陆); public Button btexit=new Button(取消); public condb conu=new condb(); private String sql

15、=null; private ResultSet rs=null; private Image img; public denglu() img=getToolkit().getImage(getClass().getResource(/ww.png); setTitle(欢迎使用工资管理系统); setLayout(null); setResizable(false); setSize(500,350); Dimension scr=Toolkit.getDefaultToolkit().getScreenSize(); Dimension frm=this.getSize(); setLo

16、cation(scr.width-frm.width)/2,(scr.height-frm.height)/2-18); txtpass.setEchoChar(*); txtname.setBounds(120,260,120,27); txtpass.setBounds(120,300,120,27); btok.setBounds(340,260,100,28); btexit.setBounds(340,300,100,28); add(name); add(txtname); add(pass); add(txtpass); add(btok); add(btexit); setVi

17、sible(true); btexit.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) dispose(); System.exit(0); ); btok.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) sql=select * from 数据库用户 where 用户名=+txtname.getText()+ and 密码=+txtpass.getText()+;

18、 try rs=conu.getrs(conu.con,sql); if(rs.next() ) mainff mf=new mainff(); if(rs.getInt(4)!=0) mf.getInitsys().setEnabled(false); mf.getUser().setEnabled(false); mf.getGong2().setEnabled(false); dispose(); mf.show(); else JOptionPane jop=new JOptionPane(); jop.showMessageDialog(null,用户名或密码错误,信息提示!,-1)

19、; catch(Exception ee) ); addWindowListener( new WindowAdapter() public void windowClosing(WindowEvent e) dispose(); System.exit(0); ); public void paint(Graphics g) g.setClip(new Rectangle2D.Float(0,0,500,350); g.drawImage(img,0,0,this); public class dl public static void main(String args) denglu de

20、ng=new denglu(); 工资查询的功能截图查询代码:import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.sql.*;class whole extends JDialog implements ActionListener private condb con = null;private ResultSet rs = null;private String sql = null;private JLabel bmhao = new JLabel(员工编号:);private JLabel

21、 bmname = new JLabel(姓名:);private JTextField wholetx1 = new JTextField();private JTextField wholetx2 = new JTextField();private JButton ok = new JButton(查询);private JOptionPane jop = new JOptionPane();private JTable ta = null;private JScrollPane taooo = new JScrollPane();private String col = 员工编号, 姓

22、名, 旷工, 迟到, 底薪, 加班, 绩效奖励,出勤金额, 实发工资 ;private Object rowline = new String4510;private boolean tf = false;public whole() con=new condb();setTitle(全部信息);setSize(600, 300);getContentPane().setBackground(Color.LIGHT_GRAY);getContentPane().setLayout(null);Dimension scr = Toolkit.getDefaultToolkit().getScre

23、enSize();Dimension frm = getSize();setLocation(int) (scr.getWidth() - frm.getWidth() / 2, 150);bmhao.setBounds(50, 20, 80, 30);wholetx1.setBounds(140, 20, 50, 20);bmname.setBounds(210, 20, 80, 30);wholetx2.setBounds(300, 20, 50, 20);ok.setBounds(400, 20, 100, 30);getContentPane().add(bmhao);getConte

24、ntPane().add(wholetx1);getContentPane().add(bmname);getContentPane().add(wholetx2);getContentPane().add(ok);ok.addActionListener(this);setVisible(true);public void initTable(Object row, String col) if (wholetx1.getText().equals()& wholetx2.getText().equals() sql = select * from 员工数据表,出勤表,员工绩效,最终工资 w

25、here + 员工数据表.员工编号=最终工资.员工编号 and 最终工资.员工编号=出勤表.员工编号 and 出勤表.员工编号=员工绩效.员工编号; else if (wholetx1.getText().equals() = false) sql = select * from 员工数据表,出勤表,员工绩效,最终工资 where + 员工数据表.员工编号=最终工资.员工编号 and 最终工资.员工编号=出勤表.员工编号 and 出勤表.员工编号=员工绩效.员工编号 and 员工数据表.员工编号= +wholetx1.getText() + ;System.out.println(sql);e

26、lse if (wholetx2.getText().equals() = false) sql = select * from 员工数据表,出勤表,员工绩效,最终工资 where + 员工数据表.员工编号=最终工资.员工编号 and 最终工资.员工编号=出勤表.员工编号 and 出勤表.员工编号=员工绩效.员工编号 and 员工数据表.员工姓名=+wholetx2.getText() + ;System.out.println(sql);Connection conn=con.getConn();Statement sta=null;try sta = conn.createStatemen

27、t();ResultSet rs=sta.executeQuery(sql);int cnt = 0;while (rs.next()rowlinecnt0 = rs.getString(员工编号);rowlinecnt1 = rs.getString(员工姓名);rowlinecnt2 = rs.getString(矿工次数);rowlinecnt3 = rs.getString(迟到次数);rowlinecnt4 = rs.getString(底薪);rowlinecnt5 = rs.getString(加班次数);rowlinecnt6 = rs.getString(绩效奖励);rowl

28、inecnt7 = rs.getString(出勤金额);rowlinecnt8 = rs.getString(实发工资);cnt+;ta = new JTable(rowline, col);ta.setSize(580, 190);taooo = new JScrollPane(ta);taooo.setLocation(20, 50);taooo.setSize(560, 190);getContentPane().add(taooo);this.repaint(0, 0, 500, 300);tf = false; catch (SQLException e) / TODO 自动生成

29、catch 块e.printStackTrace();public void actionPerformed(ActionEvent ae) /* int cnt=1; while(cnt11) rowlinecnt0=1; rowlinecnt1=2; rowlinecnt2=3; rowlinecnt3=4; rowlinecnt4=5; rowlinecnt5=6; rowlinecnt6=7; rowlinecnt7=8; rowlinecnt8=9; rowlinecnt9=10; cnt+; ta=new JTable(rowline,col); ta.setSize(580,19

30、0); taooo=new JScrollPane(ta); taooo.setLocation(20,50); taooo.setSize(560,190); getContentPane().add(taooo); this.repaint(0,0,500,300); con.dbclose(con.con,rs); con=null; tf=false;/删除*/if (tf = false) for (int i = 0; i rowline.length; i+)for (int j = 0; j 10; j+)rowlineij = null;initTable(rowline,

31、col);wholetx1.setText();wholetx2.setText();这是工资设置的功能截图:工资设置的代码:import java.awt.*;import java.awt.event.*;import java.sql.*;import javax.swing.*;class bm extends Frame implements ActionListener,ItemListener private condb conx=null; private ResultSet rs=null; private String sql=null; long id; private Label num=new Label(员工编号); private Label jb=new Label(姓名); private Label fj=new Label(底薪); private Label in=new Label(绩效奖励); private Label chu=new Label(出勤金额); private Label sf=new Label(实发工资); private TextF

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁