ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:107.61KB ,
资源ID:4273419      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4273419.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据库通用工资管理系统我.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据库通用工资管理系统我.docx

1、数据库通用工资管理系统我 目 录1 系统需求分析.3 1.1 任务目标.31.2数据流条目.31.3 可行性分析.31.4 系统业务流程图.32 系统概念分析.4 2.1逻辑模型.4 2.2数据字典.5 2.3 E-R图.6.73系统逻辑设计.8 3.1 实体间的关系.8 3.2 完整性约束.8 3.3 范式.84数据库实现.8 4.1 基于SQL Server的数据表设计.8 4.2角色.9 4.3 关系图.95 系统实现.9-166 实验设计总结.17 参考文献.17课程设计背景与意义:随着全球信息化的发展,人事信息化建设也赶上时代的步伐。工资管理系统的主要目标是支持企、事业的财政管理与事

2、务处理业务人员的劳动强度,辅助企、事业管理,辅助高层领导决策,提高企、事业的工作效率,从而使企、事业能够以少的投入获得更好的社会效益与经济效益,像人事系统、工资管理系统等就属于人事工资管理系统的范畴。它是单位实现现代化建设的基础工程,是提高单位的管理水平、业务的运转效率和服务质量的必要手段。因此许多的程序员都可能面对如何开发一套比较完善的人事工资管理系统是相当有必要的问题。随着计算机技术的飞速发展,计算机在企、事业管理中应用的普及,利用计算机实现企、事业人事工资的管理势在必行。本系统结合人事、财务制度,经过需求分析、总体设计和详细设计的工资管理系统。整个系统从符合操作简便、接口友好、灵活、实用

3、、安全的要求出发,完成人事、工资管理的全过程,包括新进员工加入时人事档案的建立、老员工的转出、职位等的变动引起职工信息的修改、员工信息查询、员工工资修改等工资管理工作。1. 系统需求分析(楼炜主做,陈蒋昊,杨钰琨辅助)1.1任务目标工资管理系统是提供工资管理人员和职工工资进行管理的系统。它能自动对不同职务,不同出勤及各个月份的工资进行管理并生成财务表。工资管理系统的用户需求主要功能有:1 各部门的信息情况2 各职工的信息情况3 考勤信息情况4 工资信息情况实现功能:实现本单位财务部门对工资发放的集中管理。可供财务人员对本单位的人员工资进行增加、删除、修改、查询、导入、导出文件、输出报表,并对系

4、统的可登录人员进行管理;单位其他相关部门的人员对工资的数据编辑无法操作,只能通过查询或导出文件来了解本单位的工资发放情况;对工资发放中的应发工资合计、代扣个人所得税和出勤情况及个人实发工资等项目由系统自动进行计算。1.2数据流条目 (1)管理员:在登录管理方面,管理员员以工资发放系统的管理人员身份 登录,并对本系统的可登录人员进行管理,有权增加及删除本系统的登录人员,进行自身密码的修改;而本单位其他相关部门的可登录人员在登录本系统后,则只能进行自身密码的修改,而无权增加及删除用户。 管理员角色能够实现如下3项功能: 添加功能:向系统中添加新的数据; 删除功能:删除系统中不需要的数据; 修改功能

5、:修改系统中修要更新的数据。 (2)用户(员工)能够实现如下2项功能: 信息查询:用户可以查询自己工资的发放情况; 密码修改:用户可以修改需要更改的密码。1.3可行性分析 工资管理系统是典型的管理信息系统,采用计算机管理企业的工资发放是当前不可缺少的一种管理措施。其开发主要包括后台数据库的建立与维护以及前端应用程序的开发两个方面。前者要求建立数据完整性和一致性强,安全性好的数据库。后者要求应用程序功能完备,易用性强。基于现有技术已能很好实现!1.4系统业务流程图数据流图是组织中信息运动的抽象。是在调研的基础上,从系统的科学性、管理的合理性、实际运动的可行性角度出发。将信息处理功能和彼此之间的联

6、系自顶向下,逐层分解,从逻辑上精确地描述系统应具有的数据加工功能、数据输入、数据输出、数据存储及数据来源和去向(外部实体)等项目。2. 系统概念分析(楼炜,陈蒋昊,杨钰琨分做) 数据库概要设计2.1 逻辑模型图2-1总体逻辑模型2.2 数据字典表2-1 工资信息数据字典表表中列名数据类型长度数据来源C_numvarchar10工资信息表WorkdayChar4工资信息表AbsentdayChar4工资信息表Monthvarchar2工资信息表 表 1.2 员工工资数据字典表表中列名数据类型长度数据来源idint4教工工资信息表objectidint4教工工资信息表propertyvarchar

7、64教工工资信息表valuevarchar255教工工资信息表uvaluenvarchar255教工工资信息表lvalueimage16教工工资信息表versionint4教工工资信息表表 1.3 员工信息数据字典表表中列名数据类型长度数据来源e_numvarchar10教工信息表namevarchar15教工信息表passwordvarchar8教工信息表postnvarchar20教工信息表sexchar2教工信息表tel_numberchar15教工信息表stu_degreevarchar15教工信息表deptvarchar15教工信息表 2.3 E-R图在系统的数据库设计中,先要对系统

8、分析得到的数据字典中的数据存储进行分析,分析各数据存储之间的关系,然后才能得出系统的关系模式。可以采用E-R图的方法来进行数据结构分析,E-R设计方法是一种通过E-R图来描述现实世界信息结构的DB设计方法。E-R图由实体、属性、联系三部分组成。各分E-R图如下: 员工工资E-R图:员工所属部门工资信息E-R图:员工信息E-R图:总体E-R图:3. 数据库逻辑设计(楼炜,陈蒋昊,杨钰琨分做)3.1 实体间的关系 本系统含有3个实体( 为主码, 为外码) 工资信息(工资号编号,出勤日,缺勤日,月份) 员工工资(帐号,员工所属部门,拥有金额,可使用金额,标识,变值,版本) 员工信息(员工编号,姓名,

9、密码,职称,性别,电话号码,教龄,年龄)3.2 完整性约束 3.3.1实体完整性:3个实体中的4个主码都不为空,满足实体完整性。 3.3.2参照完整性:3个实体之间外码已经给出,都能找到主码关系表中属性与之对应,满足参照完整性3.3 范式 本系统3个实体,众多属性之间不存在任何函数依赖关系,所以满足第三范式。4. 数据库实施(以学校老师为例)4.1 基于SQL Server的数据表设计4.1.1员工信息表图4-1 4.1.2 用户信息表图 4-2 4.2 角色 建立了用户和管理员2个角色 用户角色:只能执行查询和密码修改操作。 管理员角色:能进行查询,修改,添加,删除操作。4.3 关系图图 4

10、-4 关系图5 系统实现5.1 登陆界面package salary;import java.awt.*;import javax.swing.*;import java.awt.event.*;import java.sql.*;class LandFrame extends JFrame JComboBox list; JLabel jLabel1; JLabel jLabel2; JTextField jtf1;/ TextField jtf2; JPasswordField jpwf; JButton jbtn,jbtn1; LandFrame(String s) super(s);

11、setLayout(null); setBounds(100,100,500,400); list=new JComboBox(); list.setBorder(BorderFactory.createTitledBorder(请选择登录); list.addItem(管理员登录); list.addItem(用户登录); list.setBounds(175,50,150,50); jLabel1=new JLabel(用户名:); jLabel2=new JLabel(密码:); jbtn=new JButton(登录); jbtn.addActionListener(new Actio

12、nListener() public void actionPerformed(ActionEvent e) testify(); ); jbtn1=new JButton(退出); jbtn1.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) dispose(); ); jtf1=new JTextField(10);/ jtf2=new TextField(10);/ jtf2.setEchoChar(*); jpwf=new JPasswordField(10); jpwf.

13、setEchoChar(*); jLabel1.setBounds(155,150,50,30); jLabel2.setBounds(155,190,50,30); jtf1.setBounds(210,150,100,25);/ jtf2.setBounds(230,190,100,25); jpwf.setBounds(210,190,100,25); jbtn.setBounds(120,250,80,40); jbtn1.setBounds(290,250,80,40); /jbtn.setBounds(110,110,50,50); Container con=getContent

14、Pane(); con.add(list); con.add(jLabel1); con.add(jtf1); con.add(jLabel2);/ con.add(jtf2); con.add(jpwf); con.add(jbtn); con.add(jbtn1); setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); getRootPane().setDefaultButton(jbtn); setVisible(true); /validate(); void testify() String str; str=(String)list.

15、getSelectedItem(); if(str=管理员登录) test_manage(); /System.out.println(Hello); else test_employee(); /System.out.println(list.getSelectedItem(); 图 5-1 登陆界面5.2主菜单界面 package salary;import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.sql.*;import javax.swing.table.*;import java.util

16、.*;/*public class ManageFrame public static void main(String args) Manage mf=new Manage(工资管理系统); */ class ManageFrame extends JFrame JLabel jLabel1,jLabel2,jLabel4,jLabel5,jLabel6,jLabel7; JTextField jtf1,jtf2,jtf3,jtf4,jtf5; JButton btn1,btn2,btn3,btn4,btn5,btn6,btn7,btn8; JComboBox jcb1,jcb2; Mana

17、geFrame(String s) super(s); setLayout(null); setBounds(100,100,500,500); jcb1=new JComboBox(); jcb1.addItem(1); jcb1.addItem(2); jcb1.addItem(3); jcb1.addItem(4); jcb1.addItem(5); jcb1.addItem(6); jcb1.addItem(7); jcb1.addItem(8); jcb1.addItem(9); jcb1.addItem(10); jcb1.addItem(11); jcb1.addItem(12)

18、; jcb2=new JComboBox(); jcb2.setBorder(BorderFactory.createTitledBorder(请选择月份); jcb2.addItem(1); jcb2.addItem(2); jcb2.addItem(3); jcb2.addItem(4); jcb2.addItem(5); jcb2.addItem(6); jcb2.addItem(7); jcb2.addItem(8); jcb2.addItem(9); jcb2.addItem(10); jcb2.addItem(11); jcb2.addItem(12); jLabel1=new J

19、Label(员工号:); jLabel2=new JLabel(日期:); jLabel4=new JLabel(月); jLabel5=new JLabel(工作天数:); jLabel6=new JLabel(缺席天数:); jLabel7=new JLabel(按月份查询员工工资:); jtf1=new JTextField(10); jtf4=new JTextField(2); jtf5=new JTextField(2); btn1=new JButton(更改基本工资); btn1.addActionListener(new ActionListener() public voi

20、d actionPerformed(ActionEvent e) S_change sc=new S_change(修改工资); ); btn2=new JButton(修改员工信息); btn2.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) Alter al=new Alter(修改); ); btn3=new JButton(增加员工); btn3.addActionListener(new ActionListener() public void actionPerfor

21、med(ActionEvent e) IncreaseFrame inf=new IncreaseFrame(增加员工); ); btn4=new JButton(删除员工); btn4.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) Delete dl=new Delete(删除员工); ); btn5=new JButton(查看所有员工信息); btn5.addActionListener(new ActionListener() public void actionPer

22、formed(ActionEvent e) / TODO 自动生成方法存根 lookover(); ); btn6=new JButton(确定); btn6.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) / TODO 自动生成方法存根 count(); ); btn7=new JButton(查询); btn7.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) q

23、uery(); ); btn8=new JButton(退出); btn8.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) dispose(); );jLabel1.setBounds(60, 40, 50, 20); jtf1.setBounds(115,40,100,20); jLabel2.setBounds(300,40,30,20); jcb1.setBounds(340,40,45,20); jLabel4.setBounds(395,40,20,20); jLabe

24、l5.setBounds(60,80,60,20); jtf4.setBounds(125,80,30,20); jLabel6.setBounds(200,80,60,20); jtf5.setBounds(265,80,30,20); jLabel7.setBounds(80,120,130,30); jcb2.setBounds(215,120,80,50); btn1.setBounds(90,230,130,30); btn2.setBounds(270,230,130,30); btn3.setBounds(100,290,100,30); btn4.setBounds(280,2

25、90,100,30); btn5.setBounds(150,370,200,30); btn6.setBounds(340,75,60,30); btn7.setBounds(340,130,60,30); btn8.setBounds(200,420,80,30); Container con=getContentPane(); con.add(jLabel1); con.add(jtf1); con.add(jLabel2); con.add(jcb1); con.add(jLabel4); con.add(jLabel5); con.add(jtf4); con.add(jLabel6); con.add(jtf5); con.add(

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

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