eclipse职工工资管理系统

合集下载

使用Eclipse开发简单员工管理系统

使用Eclipse开发简单员工管理系统

目录6.案例分析 (3)7.创建数据表 (7)7.1 创建数据库DBEmployee (7)7.2 创建表Account (8)7.3 创建表Department (8)7.4创建表Employee (8)7.5创建一个视图viewEmployee (8)8.在项目创建连接数据库的类ConnectDB (9)10创建实体类 (10)10.1 Account类 (10)10.2 Deartment类 (16)10.3 Employee类 (17)11.创建控制类 (19)11.1. ManageAccount.java (20)11.2.ManageDepartment.java (24)11.3.ManageEmployee.java (28)12.边界类 (33)12.1. 登录窗体(Login.java) (33)12.2主窗体(SystemMain.java) (37)12.3修改密码(FramChangePassword.java) (42)12.4帐号管理(FramUserManage.java) (46)12.5 部门管理(FramDepartment.java) (52)12.6 员工管理(FramEmployee.java) (62)前言案例目的:对Swing、JDBC等组件进行总体学习,同时锻练学习的分析与设计能力。

系统架构:系统基于三层架构,采用MVC设计模式。

开发工具:Eclipse、SQLServer2005案例分析系统要求能对员工进行简单的管理,管理登录系统后,可以创建用户、删除用户,修改登录密码、管理部门信息、对单位员工进行日常管理。

根据以上描述,抽象出三个实体:1.Account类,用来保存可以登录到系统中的用户信息。

为了简化操作,这里的帐号与Employee类中的数据无关,如图1-8。

图1-82.Department类,这是用来保存公司部门信息的实体类,一个单位可以有多个部门,其中部门编号是唯一的。

员工工资管理系统

员工工资管理系统
员工工资管T 1
该员工工资管理系统是一 个基于Java的软件系统,
用于管理员工的工资
2
系统主要组成
PART 2
二维数组:用于储存 从用户键盘输入的数 据
JPanel面板:作为中 间容器添加各种组件
JButton类按钮或 JMenubar类菜单项: 充当事件发生的事件 源,接收用户的操作
JDialog类对话框:用 于用户操作后的提示
JTextField类文本框: 收集用户输入的数据
JFrame类窗口:底层 容器,容纳各种面板, 组件,实现界面的显 示或多重界面跳转
3
系统功能介绍
PART 3
系统功能介绍
用户的登录界面
用户注册功能 用户登录功能 退出功能
系统功能介绍
工资管理系统界面
员工信息管理
添加员工信息 删除员工信息 修改员工信息 员工信息表
系统功能介绍
工资管理系统界面
员工工资设定
工资设定 工资查询 员工工资一览表
系统功能介绍
工资管理系统界面
用户账号密码列表 退出登录功能
4
系统主要功能的实现
PART 4
系统功能的实现
用户注册功能的实现
部分源码
分析:将本身窗口设计成接口的实现,再改写接口 的方法,实现用户的交互
注:其他多数按钮相同原理,只是方法的实现根据 需求更改,不再赘述
系统主要功能的实现
数据的表格化实现
部分源码 分析:将窗口进行嵌套,再将窗口进行间隙收缩 ,利用JTable创建表格组件,实现窗口的表格化
THANK YOU
感谢各位观看

员工工资管理系统项目开发报告

员工工资管理系统项目开发报告

员工工资管理系统项目开发报告一、项目简介员工工资管理系统是一个基于Web的应用程序,用于管理公司的员工信息和工资信息。

系统提供了员工信息管理,员工工资管理,员工出勤管理和工资统计等功能。

该系统可以有效地帮助公司管理员工的信息和工资,提高管理效率和减少管理成本。

二、需求分析1.系统功能需求(1)管理员登录管理系统。

(2)员工信息管理。

(3)员工工资管理。

(4)员工出勤管理。

(5)工资统计报表。

(6)数据备份和恢复。

2.系统性能需求(1)系统响应速度要快。

(2)系统可以同时处理多个用户请求。

(3)系统数据要安全可靠。

(4)系统要具有高可用性,不能出现宕机。

(5)系统要具有可扩展性。

3.技术需求(1)系统采用B/S架构模式。

(2)系统采用JSP技术实现。

(3)采用MySQL数据库存储数据。

三、设计方案基于需求分析,我们设计了如下的系统架构。

1.系统架构设计采用的是B/S架构,也就是Browser/Server模式,客户端采用浏览器,服务器采用Web服务器。

系统通过Internet或内网提供服务。

2.系统功能设计(1)管理员登录管理系统。

首先进入登录界面,需要输入用户名和密码,登录成功后,进入系统主页面。

(2)员工信息管理。

可以添加员工信息,查看员工信息,修改员工信息和删除员工信息。

(3)员工工资管理。

可以添加员工工资信息,查看员工工资信息,修改员工工资信息和删除员工工资信息。

(4)员工出勤管理。

可以添加员工出勤信息,查看员工出勤信息,修改员工出勤信息和删除员工出勤信息。

(5)工资统计报表。

可以根据不同的条件进行工资统计,生成工资报表。

(6)数据备份和恢复。

可以备份系统数据和恢复数据。

3.技术设计(1)开发环境操作系统:Windows 10开发工具:Eclipse、MySQL技术框架:Struts、Hibernate、Spring、MySQL(2)系统架构设计采用B/S架构模式,前端采用JSP技术开发,后端采用Struts、Hibernate、Spring等技术框架来实现。

java职工工资管理系统掌握的技能

java职工工资管理系统掌握的技能

一、Java基础知识1.1. Java语法和语义:掌握Java的基本语法和语义规则,了解变量、数据类型、运算符、流程控制等基本概念。

1.2. 面向对象编程:熟悉面向对象编程的概念,包括类和对象、继承、多态、封装等,能够使用这些概念设计和编写代码。

1.3. 异常处理:了解异常的概念和处理机制,在编写代码时能够正确处理可能出现的异常情况。

1.4. 输入输出:掌握Java的输入输出操作,包括文件操作、输入输出流、序列化和反序列化等。

二、数据库操作2.1. 数据库基础知识:了解数据库的基本概念和常用的数据库管理系统(如MySQL、Oracle等),能够使用SQL语句进行数据查询、插入、更新和删除操作。

2.2. JDBC编程:熟悉JDBC编程,能够使用Java代码连接数据库、执行SQL语句和处理结果集。

三、图形用户界面3.1. AWT和Swing:掌握基于AWT和Swing的图形用户界面编程,能够设计和开发具有交互功能的用户界面。

3.2. 事件处理:了解事件处理的机制,能够编写处理用户操作产生的各种事件的代码。

四、多线程编程4.1. 线程的概念和原理:了解多线程编程的基本概念和原理,能够使用多线程实现并发控制和多任务处理。

4.2. 线程同步和通信:掌握线程同步和通信的机制,能够编写安全可靠的多线程程序。

五、网络编程5.1. Socket编程:熟悉基于Socket的网络通信编程,能够使用Java 语言进行网络通信和数据传输。

5.2. HTTP协议:了解HTTP协议的基本原理和使用方法,能够编写基于HTTP协议的网络应用程序。

六、其他相关技能6.1. 版本控制:熟悉版本控制工具(如Git),能够使用Git进行代码版本管理和团队协作。

6.2. 软件测试:了解软件测试的基本原理和方法,能够进行单元测试和集成测试,保证代码质量和稳定性。

总结:Java职工工资管理系统需要掌握的技能涉及Java基础知识、数据库操作、图形用户界面、多线程编程、网络编程等多个方面。

Delphi员工工资管理系统开发文档

Delphi员工工资管理系统开发文档

员工工资管理系统作者签名:日期:年月日摘要企业的员工管理是公司管理的一个重要内容。

随着企业人员数量增加,企业的员工管理工作也变得越来越复杂。

员工管理既涉及到企业劳动人事的管理,企业财务管理等。

员工管理需要和人事管理相联系,同时连接工时考勤和医疗保险等等,来生成企业每个职工的基本工资、津贴、医疗保险、保险费、实际发放工资等。

早期的员工统计和发放都是使用人工方式处理纸质材料,不仅花费财务人员大量的时间且不易保存,往往由于个人的因素抄写不慎或计算疏忽,出现员工统计错误的现象。

早期员工管理多采取纸质材料和具有较强的时间限制。

基于以上原因,企业员工管理系统使用电脑安全保存、快速计算、全面统计,实现员工管理的系统化、规范化、自动化。

企业员工管理系统是典型的信息管理系统(MIS),前台程序开发工具采用DELPHI,后台数据库采用SQL SERVER 2000数据库。

DELPHI开发工具,具有组件丰富、语言简单、功能强大的优点。

SQL数据库具有与DELPHI无缝连接、操作简单、易于使用的优点。

运行结果证明,本企业员工管理系统极大提高了工作效率,节省了人力和物力,最终满足企业员工管理等需要,同时也成为现代化企业管理的标志。

【关键字】员工信息系统,数据库,工资管理,实体关系图(E-R图),数据字典,数据流图。

AbstractEnterprise staff management is an important aspect of management. With the increase in the number of enterprises, corporate management staff has become more and more complex. Both staff management and personnel involved in labor management, enterprise financial management. Staff management needs and associated personnel management, working hours, attendance at the same time to connect and medical insurance, etc., to generate business for each of the basic wages of workers, allowance, medical insurance, insurance, wages actually paid. Early release of statistics and the staff are using artificial methods to deal withpaper-based materials, not only the financial officers spent a lot of time and difficult to preserve, often transcription factors as a result of personal carelessness or negligence of the calculation, there is the wrong statistics staff. Early management staff to take paper-based materials and many have strong time constraints. For these reasons, the enterprise management system for staff to preserve the use of computer security, and rapid calculation, comprehensive statistics, staff management to achieve the systematic, standardized and automated. Employee Management System is a typical management information system (MIS), development tools for the future use of DELPHI, back-end database using SQL SERVER 2000 database. DELPHI development tools, has a component rich in simple language and powerful advantages. SQL database with the DELPHI seamless, simple operation, easy-to-use advantages. The results prove that the enterprise management system staff have greatly improved work efficiency, saving human and material resources, and ultimately meet the needs of enterprises, such as staff management, but also become a symbol of the modernization of enterprise management 【Keywords】staff information system, database, payroll management, entity relationship diagram (ER diagram), data dictionary, data flow diagram.目录第1章绪论 (5)1.1研究课题的背景 (5)1.2开发工具简介 (5)1.3数据库管理系统 (6)第2章员工工资管理系统分析与设计 (7)2.1应用需求分析 (7)2.2系统功能模块划分 (7)第3章数据库管理系统设计 (9)3.1数据库中表的建立和设计 (9)3.2数据库中各个表的触发器的建立 (11)第4章应用程序设计 (13)4.1欢迎界面 (13)4.2登录模块设计 (13)4.2.1身份验证 (14)4.3主窗体设计 (15)4.4信息录入管理窗体设计 (16)4.4.1 录入模块设计 (16)4.5信息查询管理窗体设计 (17)4.5.1 查询模块设计 (18)4.6信息修改模块 (19)4.6.1 修改模块设计 (20)4.7数据导出模块设计 (21)第6章系统测试 (26)6.1测试目的 (26)6.2测试方法 (26)6.3测试结论 (26)第7章结束语 (27)参考文献 (28)致谢 (29)第1章绪论1.1研究课题的背景借助现代信息技术和管理理论,建立员工管理信息系统是当今社会的重要趋势。

员工工资管理系统(c语言编程)6页

员工工资管理系统(c语言编程)6页

员工工资管理系统(c语言编程)6页一、设计目标1、完成一个员工工资管理系统,包括对员工信息的添加、删除、修改和查询、员工工资管理和统计等功能。

2、程序必须具备易用性、可靠性、安全性和稳定性等特点。

二、程序结构设计员工工资管理系统是由若干模块构成的一个整体,它们之间相互联系,共同完成对员工信息的处理和管理。

程序分为主界面模块、添加模块、删除模块、修改模块、查询模块、统计模块、退出模块。

三、模块功能设计1、主界面模块主界面包括菜单栏和功能栏,菜单栏包括添加、删除、修改、查询、统计和退出功能,功能栏是对主界面菜单的补充,包括一些快捷操作按钮。

2、添加模块添加模块是用来录入员工信息的,可以录入的信息有员工编号、员工姓名、员工部门、员工工作年限、员工基本工资、员工奖金等。

添加模块会对信息进行一系列的校验,要求信息必须完整正确才能录入。

3、删除模块删除模块是用来删除员工信息的,输入员工编号就可以删除该员工的信息。

5、查询模块查询模块提供了多种查询方式,包括按部门查询、按姓名查询、按工作年限查询、按基本工资查询、按奖金查询等。

查询结果会按照员工编号的顺序进行排序。

6、统计模块统计模块会根据查询结果进行工资统计,包括总工资、平均工资、最高工资和最低工资等。

7、退出模块退出模块是用来关闭程序的,保证程序的安全性和稳定性。

四、程序流程设计1、主界面程序启动后,会显示主界面界面,包括菜单栏和功能栏。

2、录入信息点击添加功能或者添加按钮,会进入添加模块,要求用户输入员工信息,录入完成后数据将保存到文件中。

4、修改信息点击修改功能或者修改按钮,会进入修改模块,输入员工编号,然后修改员工信息。

5、查询信息点击查询功能或者查询按钮,会进入查询模块,选择查询方式,输入查询条件,系统将显示符合条件的员工信息。

6、工资统计当查询完成后,点击统计功能或者统计按钮,会进入统计模块,系统将根据查询结果进行统计。

7、程序退出当操作完成后,点击退出功能或者退出按钮,会关闭程序。

java课程设计-----职工工资管理系统

java课程设计-----职工工资管理系统

苏州科技学院电子信息实验中心面向对象技术课程设计报告--职工工资管理系统专业年级计算机科学与技术2014班级计算机1422学号1430107225姓名宋正伟成绩指导教师张宗杰2016 年 4月一.引言1.1项目的名称职工工资信息管理系统1.2项目背景和目标职工工资信息管理系统主要能够对职工个人信息进行管理,对职工用户提供个人信息查询,工资查询等,对管理用户提供增加,修改,删除员工信息等操作。

我们的目标就是为该系统提供后台连接数据库程序设计以及前台用户界面设计。

1.3项目的可行性研究设计此系统需要Java面向对象编程基础,数据库应用知识以及功能分析。

根据目前所开设的课程,学生已经具备了这样的知识,有能力综合Java编程知识和数据库应用知识做出一个这样的职工工资信息管理系统。

二.需求分析2.1 系统概述此系统提供给公司职工和管理者使用,职工登陆后可以对自己的信息进行查询,管理者登陆后可以对职工的信息进行修改,增加,删除等操作。

2.2系统运行环境Java程序运行在eclipse软件上编译并且运行,数据库用MYSQL数据库三.系统设计3.1 开发与设计的总体思想职工方面:职工可以通过自己的职工号和密码登陆后,进入职工主界面,在这个主界面里,职工可以进行信息查询操作。

管理员方面:管理员通过自己的密码登陆后可以选择:查询功能,修改功能。

在查询功能里,可以选择查询职工个人信息或者工资情况。

在修改功能里,可以选择对职工的信息进行增加,删除和修改操作。

3.2 系统模块结构图3.3 数据库结构设计为了支持此职工档案管理系统,创建数据库employeemanage,在这个数据库里包含三个表:worker表,manager表,employee表,它们的截图如下:在worker表中,有八个属性列,分别为:id(职工号),wname(姓名),age(年龄),sex(性别),number(电话),salary(工资),dept(部门)。

JAVA某公司的工资管理系统

JAVA某公司的工资管理系统

JAVA某公司的工资管理系统摘要我们小组的课程设计是某公司的工资管理系统。

在这个计算机快速发展的世界里,计算机为信息处理提供了物美价廉的手段,对于推动我国管理信息处理现代化起到了重要作用。

工资管理是一项琐碎、复杂而又十分细致的工作,工资计算、发放、核算的工作量很大,一般不允许出错,如果实行手工操作,每月发放工资须手工填制大量的表格,这就会耗费工作人员大量的时间和精力,计算机进行工资发放工作,不仅能够保证工资核算准确无误、快速输出,而且还可以利用计算机对有关工资的各种信息进行统计,既方便又快捷地完成员工工资的发放。

我们组在课程设计过程中根据设计中的需求及对工资管理系统采用了模块化的设计思想,在机房我们在Windows XP操作系统环境下,采用myeclipse7作为开发工具,主要连接Access数据库来实现公司的工资管理系统的主要功能。

在设计过程中,我们首先小组首先对整体的思路进行分析,然后进行分工。

对数据库和类进行设计,实现了工资管理系统的功能。

其功能主要包括公司用户管理、人员管理、部门管理、工资管理等功能。

本系统运用了数据库技术,可以大量的存储信息。

又实现了人机交互,不但缩短工资发放的时间,又避免了传统时代的人工计算错误。

总而言之,该系统在工资管理方面考虑周全,功能齐全,极大地提高了公司对员工工资管理的效率。

关键词工资管理系统,Access数据库,Java目录摘要I目录II第1章绪论 11.1 项目背景 11.2 项目开发环境 11.2.1 硬件环境 11.2.2 软件环境 1第2章相关技术 12.1系统所涉及到的语言 12.1.2 Java 12.2开发工具 12.2.1 MyEclipse 12.2.1 Access 2第3章系统分析及组内分工 1 3.1需求概述 13.2需求分析 13.2.1 理解需求 13.2.2 分析需求 13.2.3 可行性分析 23.3设计思想 23.4系统功能结构图 33.5组内分工 4第4章数据库设计 54.1数据库需求分析 54.2数据流图 54.2数据字典 64.3 概念结构设计 94.3.1概念结构设计方法94.3.2概念模型设计9第5章系统详细模块设计与实现105.1 用户登录及主界面105.2 用户管理功能实现185.3人员管理功能实现 245.4部门管理功能实现 395.5工资管理功能实现 455.6帮助功能实现505.7退出系统功能实现 51结论52致谢53参考文献54第1章绪论1.1 项目背景借助现代信息技术和管理理论,建立企业管理信息系统是当今社会的重要趋势。

职工工资管理系统设计与源代码

职工工资管理系统设计与源代码

职工工资管理系统一、设计目标:按照软件工程的规范,以SQL Server或Access为后台数据库,以Delphi 或Visual C++为前端开发工具,设计并实现一个简化的工资管理系统。

二、需求描述该系统存储了某单位全体职工和工资信息。

职工的基本信息包括:职工编号、姓名、性别、出生年月、职称、最后学历、工资和婚否。

每一个职工的工资信息包括:月份、职工编号、职工姓名、基本工资、津贴、岗贴、补贴、房贴、交通补贴、应发数、房租、储蓄、会费、个人所得税、应扣数、实发数、其他收入。

个人所得税计算方法设为:应发数少于800元为0;800~1000元的部分为5%;1000~5000元的部分为10%;5000元以上的部分为20%。

系统功能如下:1.职工信息管理:a.增加职工信息。

增加新职工时输入新职工的基本信息;b.删除某职工的基本信息。

如,职工死亡或离职时;c.修改某职工(指定职工编号)的某些信息(如,加工资、获得新学位、晋升职称、结婚或离婚)。

2.工资管理:a.增加工资信息。

当增加新职工时,添加某职工的工资信息;b.职工离职或死亡时,删除某职工的工资信息;c.修改工资信息。

当月开始增加或减少某些项工资或扣款数变化时,修改某职工的部分工资信息;3.查询与统计:a.查询职工信息,如查询全体职工信息,或按职称、学历、出生年月、出生年月之前/ 之后、已婚/ 未婚等条件或多个条件的组合来查询相应的职工信息。

b.查询指定编号职工的工资信息;c.按时间段统计职工收入或单位的工资支出。

三、概要设计四、详细设计void CWorkerMgr6View::OnExit(){OnExit();}void CWorkerMgr6View::OnRecordFirst(){if(m_pSet->IsBOF()){m_pSet->SetFieldNull(NULL);}else{m_pSet->MoveFirst();UpdateData(FALSE);//更新对话框窗口}}void CWorkerMgr6View::OnRecordLast(){m_pSet->MoveLast();UpdateData(FALSE);//更新对话框窗口}void CWorkerMgr6View::OnRecordNext(){if(m_pSet->IsBOF()){m_pSet->SetFieldNull(NULL);}//判断是否溢出if(m_pSet->IsEOF()){AfxMessageBox("已经到达最后记录");}else{m_pSet->MoveNext();}UpdateData(FALSE);}void CWorkerMgr6View::OnRecordPre(){if(m_pSet->IsBOF()){AfxMessageBox("已经到达第一个记录");m_pSet->MoveFirst();}m_pSet->MovePrev();UpdateData(FALSE);}void CWorkerMgr6View::OnAddWorker(){HRESULT hr;try{hr =m_pConnection.CreateInstance("ADODB.Connection");//创建Connection对象if(SUCCEEDED(hr)){hr=m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;DataSource=worker.mdb","","",adModeUnknown);//连接数据库//上面一句中连接字串中的Provider是针对ACCESS2000环境的,对于ACCESS97,需要改为:Provider=Microsoft.Jet.OLEDB.3.51;}}catch(_com_error e)///捕捉异常{CString errormessage;errormessage.Format("连接数据库失败!\r\n错误信息:%s",e.ErrorMessage()); AfxMessageBox(errormessage);///显示错误信息}CAddWorker dl;if(dl.DoModal()==IDOK){m_pSet->AddNew();m_pSet->m_name=dl.m_nm;m_pSet->m_id=dl.m_ids;m_pSet->m_sex=dl.m_sx;m_pSet->m_born=dl.m_bn;m_pSet->m_zhichen=dl.m_zhch;m_pSet->m_xueli=dl.m_xli;m_pSet->m_salary=dl.m_sala;m_pSet->m_marry=dl.m_marr;m_pSet->Update();m_pSet->MoveLast();UpdateData(false);}OnAddMoney();}void CWorkerMgr6View::OnDeleteWorker(){HRESULT hr;try{hr =m_pConnection.CreateInstance("ADODB.Connection");//创建Connection对象if(SUCCEEDED(hr)){hr=m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;DataSource=worker.mdb","","",adModeUnknown);///连接数据库///上面一句中连接字串中的Provider是针对ACCESS2000环境的,对于ACCESS97,需要改为:Provider=Microsoft.Jet.OLEDB.3.51;}}catch(_com_error e)///捕捉异常{CString errormessage;errormessage.Format("连接数据库失败!\r\n错误信息:%s",e.ErrorMessage()); AfxMessageBox(errormessage);///显示错误信息}CDelWorker dl;if(dl.DoModal()==IDOK)UpdateData(true);try{long id=dl.m_idid;CString str;str.Format("DELETE from worker where ID=%d",id);_variant_t RecordsAffected;m_pConnection->Execute((_bstr_t)str,&RecordsAffected,adCmdText); AfxMessageBox("删除成功!");}catch(_com_error*e){AfxMessageBox(e->ErrorMessage());}m_pSet->MoveNext();if(m_pSet->IsEOF())m_pSet->MoveLast();UpdateData(FALSE);}}void CWorkerMgr6View::OnChangWorker(){HRESULT hr;try{hr =m_pConnection.CreateInstance("ADODB.Connection");//创建Connection对象if(SUCCEEDED(hr)){hr=m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;DataSource=worker.mdb","","",adModeUnknown);///连接数据库///上面一句中连接字串中的Provider是针对ACCESS2000环境的,对于ACCESS97,需要改为:Provider=Microsoft.Jet.OLEDB.3.51;}}catch(_com_error e)///捕捉异常{CString errormessage;errormessage.Format("连接数据库失败!\r\n错误信息:%s",e.ErrorMessage()); AfxMessageBox(errormessage);///显示错误信息}CChangeWork dl2;if(dl2.DoModal()==IDOK){UpdateData(true);long id=dl2.m_wid;m_pSet->MoveFirst();while(m_pSet->m_id!=dl2.m_wid)m_pSet->MoveNext();CChangeOne dl1;dl1.m_name1=m_pSet->m_name;dl1.m_id1=m_pSet->m_id;dl1.m_sex1=m_pSet->m_sex;dl1.m_born1=m_pSet->m_born;dl1.m_zhichen1=m_pSet->m_zhichen;dl1.m_xueli=m_pSet->m_xueli;dl1.m_salary1=m_pSet->m_salary;dl1.m_marry1=m_pSet->m_marry;if(dl1.DoModal()==IDOK){m_pSet->Edit();m_pSet->m_name=dl1.m_name1;m_pSet->m_id=dl1.m_id1;m_pSet->m_sex=dl1.m_sex1;m_pSet->m_born=dl1.m_born1;m_pSet->m_zhichen=dl1.m_zhichen1;m_pSet->m_xueli=dl1.m_xueli;m_pSet->m_salary=dl1.m_salary1;m_pSet->m_marry=dl1.m_marry1;m_pSet->Update();// m_pSet->MoveNext();UpdateData(false);}}}void CWorkerMgr6View::OnMShowDetail() {CMShowDetail dl;long id=m_pSet->m_id;m_pSet->MoveFirst();while(m_pSet->m_id!=id)m_pSet->MoveNext();dl.m_month=m_pSet->m_month;dl.m_id=m_pSet->m_id;dl.m_name=m_pSet->m_name;dl.m_base=m_pSet->m_base;dl.m_jintie=m_pSet->m_jintie;dl.m_gangtie=m_pSet->m_gangtie;dl.m_butie=m_pSet->m_butie;dl.m_fangtie=m_pSet->m_fangtie;dl.m_jiaotong=m_pSet->m_jiaotong;dl.m_yingfa=dl.m_base+dl.m_jintie+dl.m_gangtie+dl.m_butie+dl.m_fangtie+ dl.m_jiaotong;dl.m_fangzu=m_pSet->m_fangzu;dl.m_chuxu=m_pSet->m_chuxu;dl.m_huifei=m_pSet->m_huifei;if(dl.m_yingfa<800){dl.m_gerentax=0;}else if(dl.m_yingfa>=800&&dl.m_yingfa<=1000){dl.m_gerentax=dl.m_yingfa*0.05f;}else if(dl.m_yingfa>1000&&dl.m_yingfa<=5000){dl.m_gerentax=dl.m_yingfa*0.1f;}else if(dl.m_yingfa>5000){dl.m_gerentax=dl.m_yingfa*0.2f;}dl.m_yingkou=dl.m_fangzu+dl.m_chuxu+dl.m_huifei+dl.m_gerentax;dl.m_shifa=dl.m_yingfa-dl.m_yingkou;dl.m_other=m_pSet->m_other;dl.DoModal();}void CWorkerMgr6View::OnAddMoney(){CAddMoney dl;dl.m_id=m_pSet->m_id;dl.m_name=m_pSet->m_name;if(dl.DoModal()==IDOK){m_pSet->Edit();m_pSet->m_base=dl.m_base;m_pSet->m_month=dl.m_month;m_pSet->m_jintie=dl.m_jintie;m_pSet->m_gangtie=dl.m_gangtie;m_pSet->m_butie=dl.m_butie;m_pSet->m_fangtie=dl.m_fangtie;m_pSet->m_jiaotong=dl.m_jiaotong;dl.m_yingfa=dl.m_base+dl.m_jintie+dl.m_gangtie+dl.m_butie+dl.m_fangtie+ dl.m_jiaotong;m_pSet->m_yingfa=dl.m_yingfa;m_pSet->m_fangzu=dl.m_fangzu;m_pSet->m_chuxu=dl.m_chuxu;m_pSet->m_huifei=dl.m_huifei;if(dl.m_yingfa<800){dl.m_gerentax=0;}else if(dl.m_yingfa>=800&&dl.m_yingfa<=1000){dl.m_gerentax=dl.m_yingfa*0.05f;}else if(dl.m_yingfa>1000&&dl.m_yingfa<=5000){dl.m_gerentax=dl.m_yingfa*0.1f;else if(dl.m_yingfa>5000){dl.m_gerentax=dl.m_yingfa*0.2f;}m_pSet->m_gerentax=dl.m_gerentax;dl.m_yingkou=dl.m_fangtie+dl.m_chuxu+dl.m_huifei+dl.m_gerentax;m_pSet->m_yingkou=dl.m_yingkou;dl.m_shifa=dl.m_yingfa-dl.m_yingkou;m_pSet->m_shifa=dl.m_shifa;m_pSet->m_other=dl.m_other;m_pSet->Update();//m_pSet->MoveLast();UpdateData(false);}}void CWorkerMgr6View::OnDeleteMoney(){HRESULT hr;try{hr =m_pConnection.CreateInstance("ADODB.Connection");//创建Connection对象if(SUCCEEDED(hr)){hr=m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;DataSource=worker.mdb","","",adModeUnknown);///连接数据库///上面一句中连接字串中的Provider是针对ACCESS2000环境的,对于ACCESS97,需要改为:Provider=Microsoft.Jet.OLEDB.3.51;}}catch(_com_error e)///捕捉异常{CString errormessage;errormessage.Format("连接数据库失败!\r\n错误信息:%s",e.ErrorMessage()); AfxMessageBox(errormessage);///显示错误信息}CDeleteMoney dl;if(dl.DoModal()==IDOK)UpdateData(true);try{long id=dl.m_id;CString str;str.Format("DELETE from worker where ID=%d",id);_variant_t RecordsAffected;m_pConnection->Execute((_bstr_t)str,&RecordsAffected,adCmdText); AfxMessageBox("删除成功!");}catch(_com_error*e){AfxMessageBox(e->ErrorMessage());}m_pSet->MoveNext();if(m_pSet->IsEOF())m_pSet->MoveLast();UpdateData(FALSE);}}void CWorkerMgr6View::OnChangeMoney(){HRESULT hr;try{hr =m_pConnection.CreateInstance("ADODB.Connection");//创建Connection对象if(SUCCEEDED(hr)){hr=m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;DataSource=worker.mdb","","",adModeUnknown);}}catch(_com_error e) //捕捉异常{CString errormessage;errormessage.Format("连接数据库失败!\r\n错误信息:%s",e.ErrorMessage()); AfxMessageBox(errormessage); //显示错误信息}CChangeWork dl2;if(dl2.DoModal()==IDOK){UpdateData(true);long id=dl2.m_wid;m_pSet->MoveFirst();while(m_pSet->m_id!=dl2.m_wid)m_pSet->MoveNext();CChangeMoney dl1;dl1.m_month=m_pSet->m_month;dl1.m_name=m_pSet->m_name;dl1.m_id=m_pSet->m_id;dl1.m_base=m_pSet->m_base;dl1.m_jintie=m_pSet->m_jintie;dl1.m_gangtie=m_pSet->m_gangtie;dl1.m_butie=m_pSet->m_butie;dl1.m_fangtie=m_pSet->m_fangtie;dl1.m_jiaotong=m_pSet->m_jiaotong;dl1.m_yingfa=dl1.m_base+dl1.m_jintie+dl1.m_gangtie+dl1.m_butie+dl1.m_fa ngtie+dl1.m_jiaotong;dl1.m_fangzu=m_pSet->m_fangzu;dl1.m_chuxu=m_pSet->m_chuxu;dl1.m_huifei=m_pSet->m_huifei;if(dl1.m_yingfa<800){dl1.m_gerentax=0;}else if(dl1.m_yingfa>=800&&dl1.m_yingfa<=1000){dl1.m_gerentax=dl1.m_yingfa*0.05f;}else if(dl1.m_yingfa>1000&&dl1.m_yingfa<=5000){dl1.m_gerentax=dl1.m_yingfa*0.1f;}else if(dl1.m_yingfa>5000){dl1.m_gerentax=dl1.m_yingfa*0.2f;}dl1.m_yingkou=dl1.m_gerentax+dl1.m_fangzu+dl1.m_chuxu+dl1.m_huifei;dl1.m_shifa=dl1.m_yingfa-dl1.m_yingkou;dl1.m_other=dl1.m_other;if(dl1.DoModal()==IDOK){m_pSet->Edit();m_pSet->m_name=dl1.m_name;m_pSet->m_id=dl1.m_id;m_pSet->m_month=dl1.m_month;m_pSet->m_base=dl1.m_base;m_pSet->m_jintie=dl1.m_jintie;m_pSet->m_gangtie=dl1.m_gangtie;m_pSet->m_butie=dl1.m_butie;m_pSet->m_fangtie=dl1.m_fangtie;m_pSet->m_jiaotong=dl1.m_jiaotong;m_pSet->m_yingfa=dl1.m_base+dl1.m_jintie+dl1.m_gangtie+dl1.m_butie+dl1. m_fangtie+dl1.m_jiaotong;m_pSet->m_fangzu=dl1.m_fangzu;m_pSet->m_chuxu=dl1.m_chuxu;m_pSet->m_huifei=dl1.m_huifei;if(m_pSet->m_yingfa<800){m_pSet->m_gerentax=0;}else if(m_pSet->m_yingfa>=800&&m_pSet->m_yingfa<=1000){m_pSet->m_gerentax=m_pSet->m_yingfa*0.05f;}else if(m_pSet->m_yingfa>1000&&m_pSet->m_yingfa<=5000){m_pSet->m_gerentax=m_pSet->m_yingfa*0.1f;}else if(m_pSet->m_yingfa>5000){m_pSet->m_gerentax=m_pSet->m_yingfa*0.2f;}m_pSet->m_yingkou=dl1.m_fangzu+dl1.m_chuxu+dl1.m_huifei+m_pSet->m_geren tax;m_pSet->m_shifa=m_pSet->m_yingfa-m_pSet->m_yingkou;m_pSet->m_other=dl1.m_other;m_pSet->Update();// m_pSet->MoveNext();UpdateData(false);}}}void CWorkerMgr6View::OnFindMoney(){HRESULT hr;try{hr =m_pConnection.CreateInstance("ADODB.Connection");//创建Connection对象if(SUCCEEDED(hr)){hr=m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;DataSource=worker.mdb","","",adModeUnknown);}}catch(_com_error e) //捕捉异常{CString errormessage;errormessage.Format("连接数据库失败!\r\n错误信息:%s",e.ErrorMessage()); AfxMessageBox(errormessage); //显示错误信息}CFindNo dl2;if(dl2.DoModal()==IDOK){UpdateData(true);long id=dl2.m_id;m_pSet->MoveFirst();while(m_pSet->m_id!=dl2.m_id)m_pSet->MoveNext();CMShowDetail dl1;dl1.m_month=m_pSet->m_month;dl1.m_name=m_pSet->m_name;dl1.m_id=m_pSet->m_id;dl1.m_base=m_pSet->m_base;dl1.m_jintie=m_pSet->m_jintie;dl1.m_gangtie=m_pSet->m_gangtie;dl1.m_butie=m_pSet->m_butie;dl1.m_fangtie=m_pSet->m_fangtie;dl1.m_jiaotong=m_pSet->m_jiaotong;dl1.m_yingfa=dl1.m_base+dl1.m_jintie+dl1.m_gangtie+dl1.m_butie+dl1.m_fa ngtie+dl1.m_jiaotong;dl1.m_fangzu=m_pSet->m_fangzu;dl1.m_chuxu=m_pSet->m_chuxu;dl1.m_huifei=m_pSet->m_huifei;if(dl1.m_yingfa<800){dl1.m_gerentax=0;}else if(dl1.m_yingfa>=800&&dl1.m_yingfa<=1000){dl1.m_gerentax=dl1.m_yingfa*0.05f;}else if(dl1.m_yingfa>1000&&dl1.m_yingfa<=5000){dl1.m_gerentax=dl1.m_yingfa*0.1f;}else if(dl1.m_yingfa>5000){dl1.m_gerentax=dl1.m_yingfa*0.2f;}dl1.m_yingkou=dl1.m_gerentax+dl1.m_fangzu+dl1.m_chuxu+dl1.m_huifei;dl1.m_shifa=dl1.m_yingfa-dl1.m_yingkou;dl1.m_other=dl1.m_other;dl1.DoModal();}}void CWorkerMgr6View::OnStaticsMoney(){HRESULT hr;try{hr =m_pConnection.CreateInstance("ADODB.Connection");//创建Connection对象if(SUCCEEDED(hr)){hr=m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;DataSource=worker.mdb","","",adModeUnknown);}}catch(_com_error e) //捕捉异常{CString errormessage;errormessage.Format("连接数据库失败!\r\n错误信息:%s",e.ErrorMessage()); AfxMessageBox(errormessage); //显示错误信息}m_pSet->MoveFirst();float sum=0;while(!m_pSet->IsEOF()){sum=sum+m_pSet->m_shifa;m_pSet->MoveNext();}CString string;string.Format("%f",sum);MessageBox(string,"统计当月支出",MB_OKCANCEL);}五、测试及结果分析(a)在此前端主界面下查看后台数据库中员工的基本信息。

小型企业工资管理系统java课程设计

小型企业工资管理系统java课程设计

小型企业工资管理系统java课程设计1.概述随着社会的发展,企业的规模越来越多样化。

小型企业也日益增加,而小型企业的存在为大多数人提供了就业机会。

然而,小型企业的管理也面临着诸多挑战,其中包括工资管理。

为了提高工资管理的效率和准确性,我们决定设计一个小型企业工资管理系统。

2.系统设计目标本课程设计的目标是设计一个基于java语言的小型企业工资管理系统,该系统应能够实现以下功能:- 实现员工信息的录入、修改和删除。

- 实现工资的计算、发放和管理。

- 实现员工考勤记录的管理。

- 实现员工与薪资的绑定。

- 实现数据的可视化统计和报表生成。

3.系统设计理念本系统的设计理念是简洁而高效。

我们希望通过精心设计的用户界面和清晰的操作流程,为小型企业提供一套方便、快捷、准确的工资管理方案。

4.系统实现方案为实现以上目标和理念,我们将采用以下技术方案:- 使用java语言进行系统开发,结合面向对象的设计思想。

- 使用MySQL数据库进行数据存储,确保数据的可靠性和安全性。

- 使用Swing框架进行用户界面设计,确保界面美观和易用。

- 使用JDBC技术进行数据库连接和操作,保证系统的数据操作能力。

- 使用Eclipse作为开发工具,提高开发效率和代码质量。

5.系统功能模块本系统将包括以下主要功能模块:- 员工信息管理模块:包括员工基本信息的录入、修改和删除。

- 工资管理模块:包括工资的计算、发放和管理。

- 考勤记录管理模块:包括员工考勤记录的管理和统计。

- 统计报表模块:包括员工工资和考勤情况的可视化统计和报表生成。

6.系统实现步骤开发该系统的步骤如下:- 分析需求:对系统功能和性能进行详细分析,明确需求。

- 数据库设计:设计合理的数据库表结构,保证数据的准确性和完整性。

- 系统架构设计:设计系统的整体架构和模块划分,明确模块之间的关系和交互。

- 编码实现:按照设计要求,使用java语言进行编码实现。

- 调试测试:对系统进行全面测试和调试,确保系统的稳定性和可靠性。

工资系统程序导入说明java+eclipse+mysql

工资系统程序导入说明java+eclipse+mysql

一、数据库的部署
1.打开navicat for mysql并连接上localhost。

建议将数据库的用户名和密码都改为root,否则对应修改程序里面数据库连接代码,将对应的数据库名和密码修改即可。

修改
位置为:SalarySystem/src目录下的DB.properties,将ername=root和
typzpt.password=root里面的root修改成其他用户名和密码即可。

切记,修改完后
需要重启tomcat!
2.在localhost连接上,右键选择“运行sql文件”
3.选择SalarySystem目录下的salary.sql导入即可。

二、工程部署以及运行。

1.打开Eclipse,左侧右键
2.
3.选择SalarySystem工程文件夹。

4.在SalarySystem工程上右键,
启动tomcat即可
5.在浏览器里输入http://localhost:8080/SalarySystem/即可
6.初始用户名和密码为admin admin
方法2.
1.把war包放到tomcat安装目录下webapps目录下即可。

比如我的是:D:\Program
Files\Apache Software Foundation\Tomcat 7.0\webapps
2.启动tomcat
3.在浏览器里输入http://localhost:8080/SalarySystem/即可
4.初始用户名和密码为admin admin。

工资管理系统java课程设计

工资管理系统java课程设计

工资管理系统java课程设计一、课程目标知识目标:1. 掌握Java语言面向对象编程的基本原理,包括类、对象、封装、继承和多态。

2. 学会使用Java集合框架,如List、Map等,存储和管理工资数据。

3. 理解数据库连接和SQL语句的基本使用,实现工资数据的持久化存储。

技能目标:1. 能够运用所学知识,设计并实现一个工资管理系统的基本功能,如添加、删除、修改和查询员工工资记录。

2. 通过实践,提升问题分析和解决能力,培养编程思维和逻辑思维能力。

3. 学会使用Java开发工具和调试技巧,提高程序开发效率。

情感态度价值观目标:1. 培养学生对计算机编程的兴趣和热情,激发自主学习动力。

2. 增强团队协作意识,学会在项目开发过程中与他人沟通和协作。

3. 培养良好的编程习惯,注重代码规范和注释,提高代码可读性。

本课程针对高年级学生,在掌握Java基础知识和面向对象编程原理的基础上,通过实际项目设计,让学生在实践中巩固和提高所学知识。

课程注重培养学生实际操作能力和团队协作精神,为将来从事软件开发工作打下坚实基础。

课程目标具体、可衡量,旨在帮助学生和教师明确课程预期成果,并为后续教学设计和评估提供依据。

二、教学内容1. Java面向对象编程基础:- 类与对象的概念- 封装、继承和多态- 抽象类和接口2. Java集合框架:- List、Set、Map的使用- 集合的遍历和操作3. 数据库连接与操作:- JDBC简介- 数据库连接和SQL语句执行4. 工资管理系统功能设计:- 系统需求分析- 功能模块划分- 数据模型设计5. 工资管理系统功能实现:- 添加、删除、修改和查询员工工资记录- 数据的持久化存储- 系统异常处理6. 编程规范与调试技巧:- 代码规范与注释- 调试方法与技巧- 优化程序性能教学内容参考教材相关章节,按照以下进度安排:1. 第1-2周:Java面向对象编程基础2. 第3周:Java集合框架3. 第4周:数据库连接与操作4. 第5-6周:工资管理系统功能设计5. 第7-8周:工资管理系统功能实现6. 第9周:编程规范与调试技巧教学内容科学性和系统性相结合,旨在帮助学生将所学知识应用于实际项目中,提高实践操作能力。

员工工资管理系统分析与设计实现(java)

员工工资管理系统分析与设计实现(java)

Java Web 课程设计专 业: 计算机科学与应用 班 级: 09计2Z 学 号: 09141229 姓 名: 姚慕容 任课教师: 何胜 成 绩:2011年 12 月JI AN GSU TEAC HERS UNIVER SITY OF TECHN OLOGY计算机工程学院目录一、引言 (1)1.1 编写目的 (1)1.2 网站的目标 (1)1.3 参考资料 (1)二、任务概述 (1)2.1 待开发网站的一般描述 (1)2.1.1 项目开发背景 (1)2.2 待开发网站的功能 (2)2.3 用户特征 (2)2.3.1用户分类 (2)2.3.2用户特征描述 (2)2.3.3用户权限 (2)2.4 运行环境 (3)三、功能需求 (3)3.1 功能划分 (3)3.2 功能描述 (3)四、系统设计 (4)4.1 系统流程 (4)4.2 各页面功能 (6)4.3 数据库设计 (20)4.4 个人特色 (21)五、总结 (22)员工工资管理系统员工工资管理系统一、引言1.1 编写目的随着科技的发展,利用先进的现代科技,通过互联网、数据库,可以轻松实现对于员工工资管理的操作,体现出信息传递的高效与便捷。

在这种背景下,制作员工工资管理网站,对于使用者和管理者都带来了极大的方便。

1.2 网站的目标财务管理员可以查询、添加、修改、删除员工及其月份工资信息;员工可以查询自己各月的工资,修改密码。

该网站能够方便快捷的为使用者提供信息发布及查询服务。

1、项目名称:员工工资管理系统2、项目使用者:员工工资管理财务管理员,员工1.3 参考资料网络资源:文档在线 CSDN动态网站制作指南二、任务概述2.1 待开发网站的一般描述2.1.1 项目开发背景该网站是支持用户查询、修改个人信息,管理员添加、修改、删除、查询等操作的网站。

2.2 待开发网站的功能描述待开发员工信息管理系统所具有的主要功能即功能模块,可用图形表如下:2.3 用户特征2.3.1用户分类(1)员工工资财务管理员(2)员工用户2.3.2用户特征描述懂得计算机的基本操作。

c语言职工工资管理系统代码

c语言职工工资管理系统代码

c语言职工工资管理系统代码
(实用版)
目录
1.引言
2.系统功能介绍
3.系统设计与实现
4.系统测试与验证
5.总结
正文
一、引言
随着社会的快速发展,职工工资管理系统已经成为企事业单位不可或缺的一部分。

本文将介绍一个基于 C 语言编写的职工工资管理系统代码,以满足企事业单位对职工工资管理的需求。

二、系统功能介绍
该职工工资管理系统主要包括以下功能:
1.员工信息管理:用于添加、修改和删除员工的基本信息,如姓名、工号、性别、出生日期、职位、电话等。

2.工资信息管理:用于录入、修改和删除员工的工资信息,包括基本工资、绩效工资、奖金、扣款等。

3.查询功能:提供按工号、姓名、职位等多种条件查询员工信息及工资信息。

4.打印功能:支持打印员工工资单。

三、系统设计与实现
本系统采用 C 语言编写,利用结构体和文件操作实现员工信息和工资信息的存储和管理。

系统主要包括以下几个模块:
1.数据结构设计:定义员工结构体和工资结构体,用于存储员工信息和工资信息。

2.文件操作:实现员工信息和工资信息的存储和读取,采用文件存储数据,确保数据安全性。

3.功能模块:实现员工信息管理、工资信息管理、查询和打印功能。

四、系统测试与验证
为确保系统的正确性和可靠性,对系统进行了详细测试。

测试结果表明,本系统能够正确处理各种操作,满足用户需求。

五、总结
本文介绍了一个基于 C 语言编写的职工工资管理系统代码。

该系统具有简单易用、功能齐全、安全性高等特点,可满足企事业单位对职工工资管理的需求。

人力资源eclipse职工工资管理系统

人力资源eclipse职工工资管理系统

人力资源eclipse职工工资管理系统人力资源eclipse职工工资管理系统是一款全面的职工工资管理软件,它为企业提供了一个强大、安全、可靠且易于使用的工资管理平台。

该系统采用了Eclipse集成开发环境,运用java语言和MySQL数据库,能够自动化处理薪酬管理工作,包括计算、记录和生成工资报表等。

本文将对人力资源eclipse 职工工资管理系统进行详细介绍。

一、系统功能该系统的主要功能包括:员工信息管理、考勤管理、工资计算、工资发放以及绩效考核。

其中,员工信息管理模块包括对员工基本信息的管理和维护;考勤管理模块包括对员工出勤记录的管理和统计;工资计算模块包括计算员工薪资所需的各种参数,并自动生成员工工资条;工资发放模块包括将计算好的工资发放给员工;绩效考核模块包括对员工绩效考核结果的管理和统计。

二、系统设计1、系统架构该系统采用J2EE三层架构,分别为表现层、业务逻辑层和持久化层。

其中,表现层使用JSP技术实现,业务逻辑层使用Servlet技术实现,持久化层使用Hibernate框架实现。

系统的数据存储采用MySQL数据库。

2、数据库设计数据库采用关系型数据库MySQL,包括以下表:员工信息表:存储员工基本信息,包括员工编号、姓名、性别、出生日期、入职日期等信息。

考勤记录表:存储员工的考勤情况,包括员工编号、考勤日期、上下班时间等信息。

工资计算表:存储员工的各种薪酬参数,包括基本工资、津贴、奖金、扣款等信息。

工资记录表:存储员工的工资发放情况,包括员工编号、发放日期、发放金额等信息。

绩效考核表:存储员工的绩效考核得分情况,包括员工编号、考核日期、考核得分等信息。

三、系统应用场景该系统适用于各类企业的薪酬管理部门,包括人力资源管理部门、财务管理部门等。

该系统可以方便、快捷地实现对员工工资的管理,包括员工信息管理、考勤管理、工资计算、工资发放以及绩效考核等方面。

企业可以通过该系统提高薪酬管理的效率,减少人工管理的错误率,降低管理成本,并为企业的可持续发展奠定基础。

java课程设计职工工资管理系统

java课程设计职工工资管理系统

目录一、设计目的 (2)二、功能介绍 (2)三、程序流程 (2)四、设计步骤 (3)五、设计总结 (7)六、程序清单 (8)七、参考文献 (17)一、设计目的通过课程设计,使学生提高理论联系实际解决实际问题的能力;也使学生对基于面向对象的理论进行系统设计过程中的诸多具体问题有感性的认识和深入的理解;进而提高学生的学习兴趣为其将来顺利进入毕业环节作必要的准备。

二、功能介绍(1)具有新用户注册功能。

(2)具有注册用户登录功能。

(3)具有职工工资的录入功能,要求只录入工资各项,自动计算每个职工工资总额。

(4)具有数据查询功能,可以实现查询全部信息和按条件执行查询。

(5)具有按条件删除数据功能。

三、程序流程四、设计步骤4.1、登陆界面进入系统首先进入登陆界面如图4.1,输入账号和密码,点击登录就会进入职工工资管理系统,点击注册进入新用户注册界面,定义了局部变量String类型的user,password和pass分别记录界面输入的账号,密码和数据库查找的密码,定义了成员变量boolean型的bool记录输入账号和密码是否匹配。

图4.1登陆界面4.2、职工工资管理系统登陆成功后进入的界面如图4.2,界面有增删改查的功能。

widgetSelected()方法创建button的点击事件,创建DBHelper类的对象db连接数据库,进行查找,删除修改功能,增删改用update()方法,查询用query()方法。

图4.2职工工资管理界面4.3、全部查找功能点击右边的查询按钮可以查找出所有员工的工资信息如图4.3,通过自己封装的连接数据库的类DBHelper类的对象db,传递sql语句查找数据库的所有信息,用getString()方法导出从数据库中查找到的数据,所得工资=基本工资+职位提成-50*迟到天数-100*旷工天数,通过查找的数据和自己定义的公式得到所得工资。

图4.3全部查找界面4.4、按条件查找功能在文本框中输入职工号,点击查找能找到对应职工的工资情况,如图 4.4。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

赣南师范学院科技学院数学与信息科学系数据库课程设计报告设计题目:职工工资管理系统专业:计算机科学与技术班级:计算机111班学号: 1120061102姓名:陈泰安指导老师:谢辅雯日期:2013年 12 月 20日成绩:摘要企业的工资管理是公司管理的一个重要内容。

工资管理既涉及到企业劳动人事的管理,同时也是企业财务管理的重要组成部分。

工资管理连接住房公积金和医疗保险等等,来生成企业每个职工的基本工资、福利补贴、实际发放工资等。

资金是企业生存的主要元素,资金的流动影响到企业的整体运作,企业员工的工资是企业资金管理的一个重要的组成部分。

但考虑到学生的开发时间,本次设计主要阐述员工工资管理系统主要是以企业员工工资情况为对象而开发的。

涉及系统比较小,有利于学生单独编写。

其系统的设计主要包括数据库的设计、维护和应用界面的设计与后台数据库的连接。

经分析用Eclipse为开发工具,Microsoft SQL sever 2000 为后台数据库。

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。

就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。

并且Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK),Eclipse 还包括插件开发环境(Plug-in Development Environment,PDE),这个组件主要针对希望扩展Eclipse 的软件开发人员,因为它允许他们构建与Eclipse 环境无缝集成的工具。

由于Eclipse 中的每样东西都是插件,对于给Eclipse 提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。

这种平等和一致性并不仅限于Java 开发工具。

尽管Eclipse 是使用Java 语言开发的,但它的用途并不限于Java 语言;例如,支持诸如C/C++ 和COBOL 等编程语言的插件已经可用,或预计将会推出。

Eclipse 框架还可用来作为与软件开发无关的其他应用程序类型的基础,关键词:职工工资管理系统、设计、开发工具摘要 (2)目录 (3)1、系统需求分析 (4)1.1系统的用户管理 (4)1.2职工的信息管理 (4)1.3职工的工资管理 (4)1.4部门的信息管理 (4)1.5职工的奖惩管理 (4)1.6职工的培训管理 (4)2、功能需求分析 (4)2.1系统管理 (5)2.2信息管理 (5)2.3信息查询 (6)3、系统设计 (8)3.1数据库逻辑结构设计 (8)3.1.1系统E-R图 (8)3.2 数据库物理结构设计 (9)3.2.1表之间的E-R图 (11)3.3数概念结构设计 (12)3.3.1数据流程图 (12)4、职工工资管理系统应用设计 (14)4.1 职工工资管理系统模块设计 (14)4.1.1“登陆模块”详细设计 (14)4.1.2主界面”的详细设计 (16)4.2 管理员界面子模块的设计 (17)4.2.1薪资信息 (17)4.2.2 培训信息 (22)4.2.3奖惩信息 (25)4.2.4部门信息 (28)5、总结 (31)6、参考文献 (32)1、系统需求分析企业工资管理系统的主要任务是用计算机对各种工资信息和职工基本信息进行日常的管理,如查询、修改、添加、删除等,迅速准确地完成各种工资信息的统计计算和汇总工作,针对系统服务对象的具体要求,设计了企业工资管理系统。

企业工资管理系统主要有以下几大功能:1.1系统的用户管理本模块主要功能包括用户的添加、删除、密码修改,重新登入,退出系统等。

1.2职工的信息管理本模块主要功能包括职工信息的添加,查询,修改,删除等。

员工基本信息:工龄、员工编号、员工姓名、员工性别、出生日期、单位、籍贯、学历、职业、部门、部门编号、婚姻、是否在职1.3职工的工资管理本模块主要功能包括职工工资的查询,添加,删除,修改,计算,统计等。

1.4部门的信息管理本模块主要功能包括部门查询,添加,修改,删除等。

1.5职工的奖惩管理本模块主要功能包括对职工奖惩信息的查询,添加,修改,删除等。

1.6职工的培训管理本模块主要功能包括职工培训计划的查询、添加、删除、修改等。

2功能需求分析员工工资管理系统功能分析总图2 2.1.系统管理:功能分析图2.2信息管理:功能分析图职工信息管理:功能分析图基本信息管理:功能分析图奖惩信息管理:功能分析图培训信息管理:功能分析图薪资信息管理:功能分析图2.3信息查询:功能分析图员工信息查询:功能分析图3、系统设计3.1数据库逻辑结构设计3.1.1系统E-R图3.2数据库物理结构设计需求分析的过程可以说是一个对具体问题的反复理解和抽象的过程。

理解就是对现实问题的理解,要弄清楚究竟需要解决什么问题。

抽象就是除去问题的表面,提取问题的本质,建立问题的逻辑模型,以便于以后阶段的系统的设计实现。

需求分析阶段是软件产品生存命期中的一个重要阶段,其根本任务是确定用户对软件系统的需求。

所谓需求是指用户对软件的功能和性能的要求,就是用户希望软件能什么事情,完成什么样的功能,达到什么性能。

此次课程设计的使用者是企业的员工,主要是针对系统的管理员。

其进行的操作就是对公司员工、部门等一些方面改动的改善。

由此对员工需求分析如下。

用户的需求就是对员工工资和使用用户的添加、删除、修改和查询。

这就要求各种信息中存在实体完整性、参照完整性和用户自定义完整性。

搜集了各项要求,故数据项要求设计如下:3.2.1表之间的E-R图3.3数概念结构设计3.3.1数据流程图0层流程图职工基本信息文件职工工资文件1层流程图2层流程图4、职工工资管理系统应用设计4.1职工工资管理系统模块设计系统实现,胡庆敏完成了系统管理,胡君完成了信息查询和普通用户界面我完成了信息管理4.1.1 “登陆模块”详细设计“登录模块”的设计主要是针对用户登录界面的设计,判断用户是管理员还是普通用户,从而进入不同主界面。

登陆界面主要由用户名和密码还有权限的信息,还有标题的设置,登录和取消按钮的设置。

用户只有选择用户名后填入相应的密码后点击“登录”才能进入主界面,点击“取消”会退出系统。

由此,登陆界面设计如图4.1所示图4.1若用户密码、用户名或权限其中有一个没有匹配成功的话,则点击“登入”时会提示以下消息框代码段:String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver";String dbURL ="jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=login";String userName = "sa";String userPwd = "123456";Connection dbConn = null;try{Class.forName(driverName);dbConn = DriverManager.getConnection(dbURL, userName, userPwd);Statementstmt=dbConn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet .CONCUR_UPDATABLE);String username=jTextField.getText();String userpassword=newString(jPasswordField.getPassword());String competence =jRadioButton.getText();String competence1 =jRadioButton1.getText();String sql;if( grp.getSelection()==jRadioButton1.getModel()){ sql="select * from log whereusername='"+username+"'and userpassword='"+userpassword+"'and competence='"+competence1+"'";ResultSet rs1=stmt.executeQuery(sql);if(rs1.next()){setVisible(false);function x=new function();x.setVisible(true);}else JOptionPane.showMessageDialog(null,"登入失败!");}if (grp.getSelection()==jRadioButton.getModel()){sql="select * from log where username='"+username+"'and userpassword='"+userpassword+"'and competence='"+competence+"'";ResultSet rs=stmt.executeQuery(sql);if(rs.next()){setVisible(false);function1 y=new function1();y.setVisible(true);}else JOptionPane.showMessageDialog(null,"登入失败!"); }}catch (Exception eo){eo.printStackTrace();}}4.1.2 “主界面”的详细设计主界面有两个,其中管理员主界面的设计是由菜单编辑器生成,主要由系统管理、信息管理、信息查询、三个模块组成。

其作用是使程序更加有条有理,有利于管理。

另外一个为普通用户操作,主要有基本信息查询,基本工资查询两个模块组成,两个主界面设计如图4.2所示:管理员主界面职工主界面4.2 管理员界面子模块的设计4.2.1选择“信息管理”→“薪资信息管理→“删除”、“”修改”、“添加”菜单,分别实现删除职工,修改职工,添加职工薪资信息。

删除薪资信息代码段:String driverName ="com.microsoft.jdbc.sqlserver.SQLServerDriver";String dbURL ="jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=login";String userName = "sa";String userPwd = "123456";Connection dbConn = null;String num = JOptionPane.showInputDialog("请输入要删除的职工编号");String delete = "delete from 薪资信息表 where 职工编号='"+ num + "'";if (num == null) {return;}if (JOptionPane.showConfirmDialog(null, "确认要删除吗?") == JOptionPane.YES_OPTION)try {Class.forName(driverName);dbConn =DriverManager.getConnection(dbURL,userName, userPwd);Statement stmt =dbConn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);if (stmt.executeUpdate(delete) != 0)JOptionPane.showMessageDialog(null,"职工薪资信息删除操作,执行成功!");elseJOptionPane.showMessageDialog(null,"没有该职工,执行失败!");}catch (Exception e2) {e2.printStackTrace();}}修改薪资信息代码段:ll = JOptionPane.showInputDialog("请输入需要修改薪资的职工编号");String driverName ="com.microsoft.jdbc.sqlserver.SQLServerDriver";String dbURL ="jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=txl";String userName = "sa";String userPwd = "123456";Connection dbConn = null;try {Class.forName(driverName);dbConn =DriverManager.getConnection(dbURL,userName, userPwd);java.sql.Statement stmt = dbConn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);String sql1 = "select 职工编号 from 薪资信息表 where 职工编号='"+ ll + "'";ResultSet rs1 = stmt.executeQuery(sql1);if (rs1.next()) {薪资修改 x1 = new薪资修改();x1.setVisible(true);} else {JOptionPane.showMessageDialog(null,"没有该职工,请重新输入!");}}catch (Exception e1) {e1.printStackTrace();}String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver";String dbURL ="jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=login";String userName = "sa";String userPwd = "123456";Connection dbConn = null;String 顺序号=jTextField1.getText();String 薪资编号=jTextField2.getText();String 基本工资=jTextField3.getText();String 福利补贴=jTextField4.getText();String 奖金=jTextField5.getText();String 住房公积金=jTextField6.getText();String 部门名称=jTextField7.getText();String 失业保险=jTextField61.getText();int a1=Integer.parseInt(基本工资);int b1=Integer.parseInt(福利补贴);int c1=Integer.parseInt(奖金);int d1=Integer.parseInt(住房公积金);int f1=Integer.parseInt(失业保险);int x=a1+b1+c1-d1-f1;String s=Integer.toString(x);jTextField62.setText(s);try{Class.forName(driverName);dbConn = DriverManager.getConnection(dbURL, userName, userPwd);Statementst=dbConn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.C ONCUR_UPDATABLE);st.executeUpdate("update 薪资信息表 set 顺序号='"+顺序号+"' where 职工编号='"+jTextField.getText()+"'");st.executeUpdate("update 薪资信息表 set 薪资编号='"+薪资编号+"' where 职工编号='"+jTextField.getText()+"'");st.executeUpdate("update 薪资信息表 set 基本工资='"+基本工资+"' where 职工编号='"+jTextField.getText()+"'");st.executeUpdate("update 薪资信息表 set 福利补贴='"+福利补贴+"' where 职工编号='"+jTextField.getText()+"'");st.executeUpdate("update 薪资信息表 set 奖金='"+奖金+"' where 职工编号='"+jTextField.getText()+"'");st.executeUpdate("update 薪资信息表 set 住房公积金='"+住房公积金+"' where 职工编号='"+jTextField.getText()+"'");st.executeUpdate("update 薪资信息表 set 失业保险='"+失业保险+"' where 职工编号='"+jTextField.getText()+"'");st.executeUpdate("update 薪资信息表 set 部门名称='"+部门名称+"' where 职工编号='"+jTextField.getText()+"'");st.executeUpdate("update 薪资信息表 set 总薪资='"+s+"' where 职工编号='"+jTextField.getText()+"'");JOptionPane.showMessageDialog(null,"薪资信息修改成功!");}catch (Exception e1){e1.printStackTrace();}}添加薪资信息代码段:String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver";String dbURL ="jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=login";String userName = "sa";String userPwd = "123456";Connection dbConn = null;String 职工编号=jTextField.getText();String 顺序号=jTextField1.getText();String 培训编号=jTextField2.getText();String 培训天数=jTextField3.getText();String 培训费用=jTextField4.getText();String 培训内容= jTextArea.getText();String 培训时间=jTextField5.getText();try{Class.forName(driverName);dbConn = DriverManager.getConnection(dbURL, userName, userPwd);Statementst=dbConn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.C ONCUR_UPDATABLE);st.executeUpdate("insert into 培训信息表 values('"+顺序号+"','"+培训编号+"','"+培训内容+"','"+职工编号+"','"+培训天数+"','"+培训费用+"','"+培训时间+"')");JOptionPane.showMessageDialog(null,"培训信息添加成功!");}catch (Exception e1){e1.printStackTrace();}}统计人数/工资总额4.2.2选择“信息管理”→“培训信息管理→“删除”、“添加”菜单,分别实现删除职工,添加职工培训信息。

相关文档
最新文档