版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、-PAGE . z. - .- -可修编- -文理学院信息工程学院课程设计报告设计名称:软件项目开发课程设计设计题目:育才学校工资管理系统 学生*:专业班级: 软件工程学生:学生成绩:指导教师:课题工作时间: 2016.6.16至 2016.6.28 说明:1、报告中的任务书、进度表由指导教师在课程设计开始前填写并发给每个学生。2、学生成绩由指导教师根据学生的设计情况给出各项分值及总评成绩。3、所有学生必须参加课程设计的答辩环节,凡不参加答辩者,其成绩一律按不及格处理。答辩由指导教师实施。4、报告正文字数一般应不少于3000字,也可由指导教师根据本门综合设计的情况另行规定。5、平时表现成绩低于
2、6分的学生,取消答辩资格,其本项综合设计成绩按不及格处理。信息工程学院课程设计任务书学生*专业班级设计题目育才学校工资管理系统容概要: 开发环境:windows 8.1 开发工具:MyEclipse 数据库:SQL Server 2005 运行环境:火狐(Mozilla FireFo*) 关键技术:Java JSP JDBC 基本功能:系统能够实现教职工工资信息的管理。 包括对部门信息、教职工信息、教职工考勤信息、教职工工资信息的 浏览、查询、添加、修改、删除等功能。文献资料:1国君,磊,洋Java2程序设计基础M:清华大学;2008.62耿祥义,跃平Java课程设计M:清华大学;2008.1
3、13思民,梁维娜Java程序设计实践教程M:清华大学;2006.8设计要求:基本功能: 实现对部门信息、教职工信息、教职工考勤信息、教职工工资信息的浏览、查询、添加、修改、删除功能。数据库要求:数据存储至少包含:工资表、部门汇总表、员工信息表、员工考勤表、管理员表。除人事处、财务处外,其他职能部门可简化等。工作期限:设计工作自2016年6月16日至2016年6月28日止。指导教师: 院长: 日 期:2016年6月16日信息工程学院课程设计进度安排表学生:*:专业: 软件工程 班级:起止日期容备注6月16日6月17日下任务书;收集、阅读、整理相关参考文献,并进行归纳和概括总结,完成项目/任务背景
4、介绍部分文字容。6月18日6月21日系统功能设计和模块设计、系统体系结构构建。6月22日6月24日各功能模块编码实现,系统各功能模块调试与维护。6月25日6月26日系统功能集成、系统调试与测试,按照模板要求撰写课程设计/项目设计报告。6月27日课程设计/项目设计分组答辩,提交课程设计/项目设计报告以及相关文档,进行成绩评定。指导教师签名: 2016年6月16日成绩评定表学生:*:专业: 软件工程 班级:类别合计分值各项分值评分标准实际得分合计得分平时表现1010按时参加设计指导,无违反纪律情况。完成情况3020按设计任务书的要求完成了全部任务,能完整演示其设计容,符合要求。10能对其设计容进行
5、详细、完整的介绍,并能就指导教师提出的问题进行正确的回答。报告质量3510报告文字通顺,容翔实,论述充分、完整,立论正确,结构严谨合理;报告字数符合相关要求,工整规,整齐划一。5课题背景介绍清楚,综述分析充分。5设计方案合理、可行,论证严谨,逻辑性强,具有说服力。5符号统一;图表完备、符合规要求。5能对整个设计过程进行全面的总结,得出有价值的结论或结果。5参考文献数量在2篇以上,格式符合要求,在正文中正确引用。答辩情况2510在规定时间能就所设计的容进行阐述,言简意明,重点突出,论点正确,条理清晰。15在规定时间能准确、完整、流利地回答教师所提出的问题。总评成绩: 分 指导教师:(签字) 日期
6、:2016年6月27日摘 要摘要:工资管理系统是使用MyEclipse开发的一个数据库管理系统。在开发过程中使用SQL Server 2005和MyEclipse完成工资管理系统基本过程。开发这个系统的步骤主要有系统分析、系统设计、系统实现和系统维护。在系统的设计过程中,详细展现了系统的各个模块、所需的数据库表的设计等。在系统实现过程中,给出了实现表单中相应的功能控件事件、代码及菜单实现的方法。本系统具有数据输入、数据存储、工资计算、信息修改、删除等功能,本系统以简洁明了的界面设计实现了基本功能,使新用户能快速掌握系统基本操作。关键词:MyEclipse;SQL Server;Request-
7、. z. - .- -可修编- -目录TOC o 1-3 h u HYPERLINK l _Toc29879 第一章 课题背景(或绪论、概述) PAGEREF _Toc29879 1 HYPERLINK l _Toc15911 1.1 引言 PAGEREF _Toc15911 1 HYPERLINK l _Toc20222 1.1.1 开发背景 PAGEREF _Toc20222 1 HYPERLINK l _Toc501 1.1.2 目的 PAGEREF _Toc501 1 HYPERLINK l _Toc29131 第二章 可行性分析PAGEREF _Toc29131 3 HYPERLIN
8、K l _Toc7306 2.1 可行性分析 PAGEREF _Toc7306 3 HYPERLINK l _Toc12346 2.1.1 技术可行性分析 PAGEREF _Toc12346 3 HYPERLINK l _Toc29011 2.1.2 经济可行性分析 PAGEREF _Toc29011 3 HYPERLINK l _Toc20925 2.1.3 操作可行性分析 PAGEREF _Toc20925 3 HYPERLINK l _Toc15563 2.2 开发计划 PAGEREF _Toc15563 4 HYPERLINK l _Toc12400 第三章 项目需求分析 PAGERE
9、F _Toc12400 5 HYPERLINK l _Toc27139 3.1 登录功能 PAGEREF _Toc27139 5 HYPERLINK l _Toc9976 3.2 部门管理功能 PAGEREF _Toc9976 5 HYPERLINK l _Toc32121 3.3 员工信息管理功能 PAGEREF _Toc32121 5 HYPERLINK l _Toc12933 3.4 员工出勤信息管理功能 PAGEREF _Toc12933 6 HYPERLINK l _Toc1958 3.5 工资信息管理功能 PAGEREF _Toc1958 6 HYPERLINK l _Toc452
10、1 3.6 用例描述 PAGEREF _Toc4521 7 HYPERLINK l _Toc25825 第四章 项目概要设计 PAGEREF _Toc25825 10 HYPERLINK l _Toc12065 4.1 功能设计 PAGEREF _Toc12065 10 HYPERLINK l _Toc32149 4.2 系统数据库设计 PAGEREF _Toc32149 10 HYPERLINK l _Toc24526 4.2.1 数据字典 PAGEREF _Toc24526 10HYPERLINK l _Toc4308 4.2.2 ER图 PAGEREF _Toc4308 12 HYPER
11、LINK l _Toc30049 4.2.3 数据流图 PAGEREF _Toc30049 13 HYPERLINK l _Toc9419 第五章 项目详细设计 PAGEREF _Toc9419 14 HYPERLINK l _Toc29583 5.1 数据库设计 PAGEREF _Toc29583 14 HYPERLINK l _Toc21419 5.1.1数据字典 PAGEREF _Toc21419 14 HYPERLINK l _Toc25548 5.2人机交互界面设计 PAGEREF _Toc25548 15-. z. HYPERLINK l _Toc8447 5.2.1工资信息管理
12、PAGEREF _Toc8447 15 HYPERLINK l _Toc25554 5.2.2信息查询 PAGEREF _Toc25554 15 HYPERLINK l _Toc8839 5.2.3添加新的工资信息 PAGEREF _Toc8839 16 HYPERLINK l _Toc11657 5.2.4修改工资信息 PAGEREF _Toc11657 17 HYPERLINK l _Toc24848 5.2.5删除工资信息 PAGEREF _Toc24848 18 HYPERLINK l _Toc2826 5.2.6打印工资信息 PAGEREF _Toc2826 19 HYPERLINK
13、 l _Toc14558 第六章 项目编码 PAGEREF _Toc14558 20 HYPERLINK l _Toc32719 6.1 连接数据库 PAGEREF _Toc32719 20 HYPERLINK l _Toc32422 6.2 添加工资信息 PAGEREF _Toc32422 23 HYPERLINK l _Toc30799 6.3 删除工资信息 PAGEREF _Toc30799 27 HYPERLINK l _Toc5427 6.4 修改工资信息 PAGEREF _Toc5427 27 HYPERLINK l _Toc7068 6.5 查询工资信息 PAGEREF _Toc
14、7068 29 HYPERLINK l _Toc16663 第七章 项目测试 PAGEREF _Toc16663 31 HYPERLINK l _Toc30388 7.1 增加工资信息测试 PAGEREF _Toc30388 31 HYPERLINK l _Toc13092 7.2 删除工资信息测试 PAGEREF _Toc13092 31 HYPERLINK l _Toc14250 7.3 修改工资信息测试 PAGEREF _Toc14250 31 HYPERLINK l _Toc18311 7.4 查询工资信息测试 PAGEREF _Toc18311 31 HYPERLINK l _Toc
15、7893 总结 PAGEREF _Toc7893 33 HYPERLINK l _Toc9898 参考文献 PAGEREF _Toc9898 34-. z.第一章 课题背景(或绪论、概述)1.1 引言1.1.1 开发背景随着社会的进步和计算机技术的发展,特别是微型计算机的大围普及,现在应用在大中型企业的信息管理系统中,几乎都包括了工资管理模块。有些环境中是有大型ERP软件中的一个模块引进的,有些作为企业的财务系统的一部分。计算机处理的数据量不断增加。文件管理系统采用的一次最多存取一个记录的访问方式,以及在不同文件之间缺乏相互联系的结构,越来越不能适应管理大量数据的需要,于是数据库管理系统便应运
16、而生。有了数据库我们便能方便快捷的对数据进行读取、存取,并维护数据库的数据。今天,数据库管理已成为计算机信息管理的主要方式。数据库的应用非常广泛,可应用于各行各业,只要是稍复杂的数据,都可制作成数据库,交由电脑来管理。用电脑管理数据,运算速度快,检索迅速、查找方便、可靠性高、存储量大、性好、寿命长、成本低且不易出错等,这些优点能够极提高工资管理的效率,也是科学化、正规化管理的重要条件,尤其是现在的中小型企业正需要这种对口的工资管理系统,并且是现行的财务管理系统所代替不了的。1.1.2 目的随着公司规模的不断扩大,职工数量急剧增加,有关职工的各种信息量也成倍增长,而目前许多公司的职工工资管理系统
17、仍停留在复杂的人工操作上,重复工作较多,工作量大,效率低,因此设计一个能够实现教职工工资信息的管理系统。该系统包括浏览、查询、添加、修改、删除等功能。其中添加功能要求能够添加新的工资信息及教职工基本信息到数据库文件;修改功能要求可以对教职工的工资信息以及基本信息进行修改;删除功能要求可以对教职工的工资信息以及基本信息进行删除;浏览功能要求能按照教职工的工号,浏览,提供分页显示;有排序功能,排序后按照工号升序输出;查询功能要求能够按照工号或者查询。第二章 可行性分析2.1 可行性分析2.1.1 技术可行性分析目前学校各工作点均采用装载window7系统的PC机作为工作台,其容量、速度能满足系统要
18、求。根据客户提出的系统功能、性能及实现系统的各项约束条件,根据新系统目标来衡量所需的技术是否具备,本系统是一个文件管理和查询的系统,现有的技术以较为成熟,硬件、软件的性能要求、环境条件等各项条件良好,估计利用现有技术条件应完全可以达到该系统的功能目标。同时,考虑给予的开发期限也较为充裕,预计系统是可以在规定期限完成开发。在技术角度来说,开发学校部工资系统是可行的。2.1.2 经济可行性分析通过对开发学校部工资管理系统的经济效益进行评价,一方面估算开发它的支出费用,其中包括设备购置费、软件开发费、管理和维护费、人员工资和培训费等。另一方面估算职工工资管理这个软件可能取得的收益中可以用钱来衡量的那
19、部分。并对目前的软件市场进行调查,所做软件是否有很大的销售市场和相当规模的用户群。所做软件的开发成本与客户提出的要否可达到双方都满意。分析系统开发会对其它产品或利润带来一定影响。经过对上述几个方面的调查研究和分析,我们得出学校部工资管理系统这个软件的使用性非常强,减轻人力成本,在经济角度来说,开发学校部工资管理是可行的。2.1.3 操作可行性分析通过了解学校部工资管理的相关人员对开发信息系统是否支持,现有职工工资管理制度和方法是否科学,规章制度是否齐全,原始数据是否正确等。职工工资管理人员积极支持该系统开发,使新系统能够充分的发挥作用;系统操作简单,易于理解,操作者经过短时间的培训就可以使用职
20、工工资管理系统。在操作可行性角度来说,开发学校部工资管理是可行的。2.2 开发计划表2-1 开发计划表学校部工资管理系统阶段所需时间(天)可行性研究1需求分析1概要设计1详细设计2实现4调试与测试2总计11第三章 项目需求分析工资管理系统是针对企事业单位的大量业务处理工作,用计算机进行全面现代化管理。主要包括信息输入功能、信息修改删除、信息的查询以及工资计算管理功能。该系统主要包括登录模块、部门管理模块、员工信息管理模块、员工考勤管理模块和员工资管理模块等。3.1 登录功能用户输入账号和密码与数据库中的一致时方可登录该系统。3.2 部门管理功能1)输入部门的基本信息,包括部门编号(DepID)
21、、部门名(DepName)、部门经理(Manager)、办公(DepTel)2)查询部门信息:点击部门名称,能显示该部门所有基本信息,如:部门编号、部门名称、部门经理、办公。3)修改、删除部门信息:如果各部门信息发生变化,点击修改,能对部门各个信息进行重新设置,同时可以删除该部门,则该部门所有信息都会从数据库中删除,在部门管理界面不会显示该部门的信息。3.3 员工信息管理功能录入员工的基本信息,包括员工编号(employeeId)、(name)、号(cardNumber)、民族(nation)、性别(se*)、生日(birthday)、毕业学校(graduateSchool)、学历(schoo
22、lRecord)、部门(department)、职称(positionName)、(telephone)、(email)、编辑时间(editTime)、备注(memo)。查询员工信息,点击员工,能显示该员工的所有基本信息。如果员工信息发生变化,例如:发生变化、职位调遣等。需要重新录入该员工信息 ,点击修改可以实现重置信息。如果该员工离职,则点击删除,该员工所有信息在员工信息管理界面会清除该条记录。3.4 员工出勤信息管理功能1)录入员工的出勤基本信息,包括请假编号(leaveId)、职工编号(employeeId)、职工(employeeName)、请假开始时间(starTime)、请假天数(
23、day)、请假原因(reason)、批准人(approvePerson)、编辑时间(editTime)、备注(memo)。2)查询员工出勤信息可分为按员工编号查询、按员工查询。选择查询方式,输入信息,点击搜索,则能显示该员工所有出勤记录。如果出勤信息发生变化,点击修改,重新录入出勤信息,同时系统会重新自动生成编辑时间,确保出勤信息的准确性。如果录入信息发生重复等情况,可以点击删除,则该条记录会被删除。3.5 工资信息管理功能录入员工的工资基本信息,包括:工资编号(salayId)、员工编号(employeeId)、员工(employeeName)、年份(year)、月份(month)、基本工资
24、(basicWage)、加工工资(overtimeWage)、交通补助(trafficWage)、考勤扣除(kaoqinReduce)、保险扣除(secureReduce)、总工资(totalWage)、总扣除(totalReduce)、实际工资(realWage)、编辑时间(editTime)、备注(memo)查询工资管理信息,选择查询年份、月份、查询方式、输入查询信息,点击搜索就能准确显示该员工在具体的时间段实际工资总额。管理员可以录入员工详细的工资信息,例如:基本工资、加班工资、交通补助、考勤扣除、保险扣除、扣税等信息。根据实际情况可对员工工资信息进行修改、打印、删除等操作。3.6 用例
25、描述登录管理增加部门信息查询部门信息修改部门信息删除部门信息管理员图3-1 部门信息管理表3-1 管理员登录用例描述用例编号3-1-1用例名称管理员登录用例描述管理员在管理系统中输入自己的用户名及密码,即可进入登录工资管理系统。管理员在登录界面可以修改自己的密码。表3-2 管理员管理部门信息用例描述用例编号3-1-2用例名称管理员管理部门信息用例描述管理员可以在部门管理界面实现增加部门信息、查询部门信息、修改部门信息、删除部门信息登录管理增加员工信息查询员工信息修改员工信息删除员工信息管理员图3-2 员工信息管理表3-3 管理员管理员工信息用例描述用例编号3-2用例名称管理员管理员工信息用例描
26、述在员工信息管理界面,管理员拥有增加员工信息、查询员工信息、修改员工信息、删除员工信息等权限。登录管理增加员工出勤信息查询员工出勤信息修改员工出勤信息删除员工出勤信息管理员图3-3 员工出勤信息管理表3-4管理员工出勤信息用例描述用例编号3-3用例名称管理员管理员工出勤信息用例描述在员工出勤信息管理界面,管理员可以实现增加员工出勤信息、查询员工出勤信息、修改员工出勤信息、删除员工出勤信息。登录管理增加工资信息查询工资信息修改工资信息删除工资信息管理员打印工资信息图3-4 工资信息管理表3-5 管理员工工资信息用例描述用例编号3-4用例名称管理员管理工资信息用例描述在工资信息管理界面,管理员可以
27、实现增加工资信息、查询工资信息、修改工资信息、删除工资信息、打印工资信息等功能。第四章 项目概要设计4.1 功能设计添加部门信息修改部门信息查询部门信息删除部门信息修改员工信息添加员工信息查询员工信息删除员工信息添加出勤信息修改出勤信息查询出勤信息删除出勤信息添加工资信息删除工资信息修改工资信息查询工资信息部门管理员工信息管理员工出勤管理工资信息管理退出学校内部管理系统用户登录提示错误判断用户账号与密码是否正确图4-1 功能设计图4.2 系统数据库设计4.2.1 数据字典员工表 employee表4-1 员工表字段名数据类型含义说明是否为空employeeIdChar(100)员工编号主键Na
28、meVarchar(10)职工否Se*Char(2)性别cardNumberChar(100)nationChar(4)民族birthdayChar(100)生日graduateSchoolChar(100)毕业院校schoolRecordChar(4)学历departmentChar(100)部门positionNameChar(100)级别telephoneChar(100)emailChar(100)editTimeChar(100)编辑时间memoChar(100)备忘录部门表 department表4-2 部门表字段名数据类型含义说明是否为空DepIDChar(6)部门编号主键Dep
29、NameVarchar(20)部门名称否ManagerVarchar(20)部门经理DepTelVarchar(15)办公室考勤表leave表4-3 考勤表字段名数据类型含义说明是否为空leaveIdInt编号否employeeIdChar(100)员工编号否employeeNameChar(100)员工否startTimeChar(100)时间dayChar(100)天数reasonChar(100)原因approvePersonChar(100)审查人editTimeChar(100)编辑时间memoChar(100)备注工资表 salary表4-4 工资表字段名数据类型含义说明是否为空s
30、alaryIdint编号主键employeeIdchar(100)员工编号否employeeNamechar(100)员工否yearchar(100)年份monthchar(100)月份basicWagefloat基本工资否overtimeWagefloat加工工资trafficWagefloat交通补助totalWagefloat整体工资kaoqinReducefloat考勤扣除secureReducefloat保险扣除ta*Reducefloat扣税totalReducefloat整体扣除realWagefloat实际工资否editTimechar(100)编辑时间memochar(100
31、)备注5、管理员表 admin表4-5 管理员表字段名数据类型含义说明是否为空adminIDchar(100)编号主键adminNamechar(100)管理员否passwordchar(100)密码否保险扣除考勤扣除交通补助加工工资资扣税工资拥有管理管理员密码账户员工*部门姓别员工编号基本工资工资日期4.2.2 ER图图4-2 ER图4.2.3 数据流图图4-3 数据流图第五章 项目详细设计5.1 数据库设计5.1.1数据字典工资表 salary表5-1 工资表字段名数据类型含义说明是否为空salaryIdint编号主键employeeIdchar(100)员工编号否employeeName
32、char(100)员工否yearchar(100)年份monthchar(100)月份basicWagefloat基本工资否overtimeWagefloat加工工资trafficWagefloat交通补助totalWagefloat整体工资kaoqinReducefloat考勤扣除secureReducefloat保险扣除ta*Reducefloat扣税totalReducefloat整体扣除realWagefloat实际工资否editTimechar(100)编辑时间memochar(100)备注5.2人机交互界面设计5.2.1工资信息管理图5-1 工资信息管理主界面5.2.2信息查询图5
33、-2 查询界面图5-3 查询结果5.2.3添加新的工资信息图5-4添加新的工资信息图5-5 添加成功5.2.4修改工资信息图5-6 修改工资信息图5-7 修改成功5.2.5删除工资信息图5-8 删除工资信息图5-9 删除成功5.2.6打印工资信息图5-10 打印工资信息第六章 项目编码6.1 连接数据库通过JDBC与数据库建立连接,发送操作数据库的语句并处理结果。public class DataBase protected Connection conn = null;/Connection接口protected Statement stmt = null;/Statement接口prote
34、cted ResultSet rs = null;/记录结果集protected PreparedStatement prepstmt = null;/PreparedStatementprotected boolean isConnect=true;/与数据库连接标识public DataBase() tryDBConnectionManager dcm = new DBConnectionManager();conn = dcm.getConnection();stmt = conn.createStatement();catch (E*ception e)System.out.print
35、ln(e);isConnect=false;public Statement getStatement() return stmt;public Connection getConnection() return conn;public PreparedStatement getPreparedStatement() return prepstmt;public ResultSet getResultSet() return rs;public boolean e*ecute() throws E*ception return false;public boolean insert() thr
36、ows E*ception return false;public boolean update() throws E*ception return false;public boolean delete() throws E*ception return false;public boolean query() throws E*ception return false;public void close() throws SQLE*ception if ( stmt != null )stmt.close();stmt = null;conn.close();conn = null;pub
37、licclass DBConnectionManager / private String driverName = .microsoft.jdbc.sqlserver.SQLServerDriver; /oracle.jdbc.driver.OracleDriver;/ private String url = jdbc:microsoft:sqlserver:/localhost:1433; /jdbc:oracle:thin:1521:oracle;private String user = sa;private String password = sa;private String d
38、riverName=.microsoft.jdbc.sqlserver.SQLServerDriver;private String url = jdbc:microsoft:sqlserver:/localhost:1433;DatabaseName=salary;publicvoid setDriverName(String newDriverName) driverName = newDriverName; public String getDriverName() returndriverName; publicvoid setUrl(String newUrl) url = newU
39、rl; public String getUrl() returnurl; publicvoid setUser(String newUser) user = newUser; public String getUser() returnuser; publicvoid setPassword(String newPassword) password = newPassword; public String getPassword() returnpassword; public Connection getConnection() try Class.forName(driverName);
40、return DriverManager.getConnection(url, user, password);/ return DriverManager.getConnection(url); catch (E*ception e) e.printStackTrace();returnnull; publicstaticvoid main(String args) / DBConnectionManager DBConnectionManager1 = new DBConnectionManager();try DBConnectionManager dcm = new DBConnect
41、ionManager(); Connectionconn = dcm.getConnection(); Statement stmt=conn.createStatement(); ResultSet rs=stmt.e*ecuteQuery(select * from admin);/stmt = conn.createStatement();while(rs.ne*t() System.out.println(rs.getString(1); System.out.println(rs.getString(2); System.out.println(); catch(E*ception
42、e) e.printStackTrace(); 6.2 添加工资信息/将页面表单传来的资料分解并保存到工资类的各个字段中publicboolean getRequest(java*.servlet.http.HttpServletRequest newrequest) boolean flag = false;tryrequest = newrequest;/*String salaryId = request.getParameter(salaryId);if(!salaryId.equals() oneSalaryRecord.setSalaryId(Long.parseLong(sala
43、ryId); */String employeeId = request.getParameter(employeeId);if(null = employeeId | employeeId.equals() employeeId = ;sqlflag = false;oneSalaryRecord.setEmployeeId(getGbk(employeeId);/员工编号String employeeName = request.getParameter(employeeName);if(null = employeeName | employeeName.equals() employe
44、eName = ;sqlflag = false;oneSalaryRecord.setEmployeeName(getGbk(employeeName);/员工Integer year = Integer.parseInt(request.getParameter(year);if(null = year ) year = 2000;sqlflag = false; oneSalaryRecord.setYear(year);/工资年份Integer month = Integer.parseInt(request.getParameter(month);if(null = month |
45、!(0 month) month = 1;sqlflag = false;oneSalaryRecord.setMonth(month);/工资月份Float basicWage;try basicWage = Float.parseFloat(request.getParameter(basicWage); catch(E*ception e*) basicWage = 0.0f;sqlflag = false;oneSalaryRecord.setBasicWage(basicWage);/基本工资Float overtimeWage;try overtimeWage = Float.pa
46、rseFloat(request.getParameter(overtimeWage); catch (E*ception e*) overtimeWage = 0.0f;oneSalaryRecord.setOvertimeWage(overtimeWage);/加班工资Float trafficWage;try trafficWage = Float.parseFloat(request.getParameter(trafficWage); catch (E*ception e*) trafficWage = 0.0f;oneSalaryRecord.setTrafficWage(traf
47、ficWage);/交通补助工资Float kaoqinReduce;try kaoqinReduce = Float.parseFloat(request.getParameter(kaoqinReduce); catch (E*ception e*) kaoqinReduce = 0.0f;oneSalaryRecord.setKaoqinReduce(kaoqinReduce);/考勤扣除Float secureReduce;try secureReduce = Float.parseFloat(request.getParameter(secureReduce); catch(E*ce
48、ption e*) secureReduce = 0.0f;oneSalaryRecord.setSecureReduce(secureReduce);/保险扣除Float ta*Reduce;try ta*Reduce = Float.parseFloat(request.getParameter(ta*Reduce); catch(E*ception e*) ta*Reduce = 0.0f;oneSalaryRecord.setTa*Reduce(ta*Reduce);/税收扣除 String memo = request.getParameter(memo);if(null = mem
49、o | memo.equals() memo = ; oneSalaryRecord.setMemo(getGbk(memo);/备注if (sqlflag)flag = true;return flag;catch (E*ception e)errorMessage = e.getMessage();return flag;/向数据库中工资信息表中插入一条新的记录publicboolean insert() throws E*ception String editTime; Calendar cal=Calendar.getInstance(); Integer y,m,d,h,mi,s;
50、y=cal.get(Calendar.YEAR); m=cal.get(Calendar.MONTH) + 1; d=cal.get(Calendar.DATE); h=cal.get(Calendar.HOUR_OF_DAY); mi=cal.get(Calendar.MINUTE); s=cal.get(Calendar.SECOND); editTime = y+年+m+月+d+日+h+时+mi+分+s+秒; Float totalWage = oneSalaryRecord.getBasicWage() + oneSalaryRecord.getOvertimeWage() + one
51、SalaryRecord.getTrafficWage(); Float totalReduce = oneSalaryRecord.getKaoqinReduce() + oneSalaryRecord.getSecureReduce() + oneSalaryRecord.getTa*Reduce();sqlStr = insert into salary(employeeId,employeeName,year,month,basicWage,overtimeWage,trafficWage,totalWage,kaoqinReduce,secureReduce,ta*Reduce,to
52、talReduce,realWage,editTime,memo) values (;sqlStr = sqlStr + strFormat.toSql(oneSalaryRecord.getEmployeeId() + ,;sqlStr = sqlStr + strFormat.toSql(oneSalaryRecord.getEmployeeName() + ,;sqlStr = sqlStr + oneSalaryRecord.getYear() + ,;sqlStr = sqlStr + oneSalaryRecord.getMonth() + ,;sqlStr = sqlStr +
53、oneSalaryRecord.getBasicWage() + ,;sqlStr = sqlStr + oneSalaryRecord.getOvertimeWage() + ,;sqlStr = sqlStr + oneSalaryRecord.getTrafficWage() + ,;sqlStr = sqlStr + totalWage + ,;sqlStr = sqlStr + oneSalaryRecord.getKaoqinReduce() + ,;sqlStr = sqlStr + oneSalaryRecord.getSecureReduce() + ,;sqlStr = s
54、qlStr + oneSalaryRecord.getTa*Reduce() + ,;sqlStr = sqlStr + totalReduce + ,;sqlStr = sqlStr + (totalWage - totalReduce) + ,;sqlStr = sqlStr + strFormat.toSql(editTime) + ,;sqlStr = sqlStr + strFormat.toSql(oneSalaryRecord.getMemo() + );trystmt.e*ecute(sqlStr);returntrue;catch (SQLE*ception sqle)err
55、orMessage = errorMessage + sqlStr + sqle.getMessage();returnfalse;6.3 删除工资信息/删除编号为salaryId的工资信息publicboolean delete(String salaryId) throws E*ception sqlStr = delete from salary where salaryId = + salaryId;trystmt.e*ecute(sqlStr);returntrue;catch (SQLE*ception e)System.out.println(e);returnfalse;6.4
56、 修改工资信息/更新假条表中的一条记录publicboolean update() throws E*ception String editTime; Calendar cal=Calendar.getInstance(); Integer y,m,d,h,mi,s; y=cal.get(Calendar.YEAR); m=cal.get(Calendar.MONTH) + 1; d=cal.get(Calendar.DATE); h=cal.get(Calendar.HOUR_OF_DAY); mi=cal.get(Calendar.MINUTE); s=cal.get(Calendar.S
57、ECOND); editTime = y+年+m+月+d+日+h+时+mi+分+s+秒; Float totalWage = oneSalaryRecord.getBasicWage() + oneSalaryRecord.getOvertimeWage() + oneSalaryRecord.getTrafficWage(); Float totalReduce = oneSalaryRecord.getKaoqinReduce() + oneSalaryRecord.getSecureReduce() + oneSalaryRecord.getTa*Reduce();sqlStr = up
58、date salary set ;sqlStr = sqlStr + employeeName = + strFormat.toSql(oneSalaryRecord.getEmployeeName() + ,;sqlStr = sqlStr + year = + oneSalaryRecord.getYear() + ,;sqlStr = sqlStr + month = + oneSalaryRecord.getMonth() + ,;sqlStr = sqlStr + basicWage = + oneSalaryRecord.getBasicWage() + ,;sqlStr = sq
59、lStr + overtimeWage = + oneSalaryRecord.getOvertimeWage() + ,;sqlStr = sqlStr + trafficWage = + oneSalaryRecord.getTrafficWage() + ,;sqlStr = sqlStr + totalWage = + totalWage + ,;sqlStr = sqlStr + kaoqinReduce = + oneSalaryRecord.getKaoqinReduce() + ,;sqlStr = sqlStr + secureReduce = + oneSalaryReco
60、rd.getSecureReduce() + ,;sqlStr = sqlStr + ta*Reduce = + oneSalaryRecord.getTa*Reduce() + ,;sqlStr = sqlStr + totalReduce = + totalReduce + ,;sqlStr = sqlStr + realWage = + (totalWage - totalReduce) + ,;sqlStr = sqlStr + editTime = + editTime + ,;sqlStr = sqlStr + memo = + strFormat.toSql(oneSalaryR
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 44895-2024市场和社会调查调查问卷编制指南
- 2024年度建筑工程合同:办公楼装修工程的设计与施工
- 统编人教版六年级语文上册《语文园地四》精美课件
- 2024年度技术转让合同标的的技术改进要求2篇
- 2024年度给水工程分包合同(建筑)3篇
- 劳动合同法的心得体会
- 2024年度版权质押合同:著作权抵押融资具体规定3篇
- 资产抵押合同
- 学校课件-教案包
- 《商务统计素材》课件
- 实验室设备安装调试及技术支持方案
- 糖尿病健康知识讲座
- 机器人感知智能 课件 第3、4章 机器人视觉感知、机器人接近觉感知
- 2024年再生资源回收与利用合作协议
- 生物-江西省稳派上进联考2024-2025学年2025届高三上学期11月调研测试试题和答案
- 《胶轮车操作工》(司机、检修)理论知识考试及答案
- 森林康养基地建设项目可行性研究报告
- 机械行业质量奖惩制度
- 中国航空学会-2024低空经济场景白皮书
- 23J916-1 住宅排气道(一)
- 古典诗词鉴赏学习通超星期末考试答案章节答案2024年
评论
0/150
提交评论