毕业论文太原科技大学华科学院计算机系信管专业09级郑成龙.docx
- 文档编号:9214937
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:63
- 大小:4.83MB
毕业论文太原科技大学华科学院计算机系信管专业09级郑成龙.docx
《毕业论文太原科技大学华科学院计算机系信管专业09级郑成龙.docx》由会员分享,可在线阅读,更多相关《毕业论文太原科技大学华科学院计算机系信管专业09级郑成龙.docx(63页珍藏版)》请在冰豆网上搜索。
毕业论文太原科技大学华科学院计算机系信管专业09级郑成龙
华科学院
HUAKEINSTITUTEOFTAIYUANUNIVERSITYOF
SCIENCE&TECHNOLOGY
毕业设计(论文)
题目:
企业OA管理系统的开发与实现
学生姓名郑成龙
学号20092204013
班级信管092201H
所属院(系)计算机科学与技术系
指导教师王丽霞
2013年6月1日
太原科技大学毕业设计(论文)任务书
学院(直属系):
计算机科学与技术系时间:
2013年3月4日
学生姓名
郑成龙
指导教师
王丽霞
设计(论文)题目
企业OA管理系统开发与实现
主要研
究内容
1.Java面向对象程序设计
2.JavaEE企业开发方式以及相关技术
3.OA的核心概念以及Java平台的实现
研究方法
按照软件开发CMM标准实施,具体包括,需求分析、体系结构设计、模块设计、数据库设计等相关设计。
主要技术指标(或研究目标)
JavaEE企业核心技术(servlet、jsp、jdbc、框架ssh、工作流引擎jbmp)
主要参考文献
1.实践者的研究方法(美)普雷斯曼
2.JavaWeb整合开发王者归来刘京华
3.JavaScript权威指南(美)弗兰纳根
4.Java与模式闫宏
5.HTML+CSS网页设计与布局从入门到精通温谦
企业OA管理系统的开发与实现
摘要
本系统的开发基于经典的瀑布模型。
在依次完成可行性分析、需求分析、总体设计、详细设计和编码实现以及测试等环节后最终建立了基于B/S结构的企业OA管理系统。
在开发过程的相关环节所应用的技术及其实现的目标包括,利用POI技术实现含员工信息的excel文件的下载,利用JavaScipt和JQuery技术实现对用户输入是否合法的判断,以及利用日历插件实现员工出生年月的快捷输入。
经测试合格后,本人企业OA管理开发系统可以实现的功能包括:
1.部门管理管理员可以执行添加新部门、删除部门、修改部门信息和查看部门列表信息等权利;
2.员工管理管理员可以执行添加新员工、删除员工、修改员工信息和查看员工列表信息等权利;
3.日程管理管理员可以执行添加新日程和删除某项日程的权利;
4.权限管理本系统对不同的用户设定了不同的权限,管理员可执行所有操作,一般操作员只能查询和添加个人信息。
系统同时具备方便易用性和高度可靠性;
5.信息发布个部门主管都有权利在公司网站上发布新的信息,以通知本部门的员工进行相应的调整;
6.个人文件夹用以显示员工的个人通讯录;
本系统的上述功能实现了对企业员工的科学管理和统一调配,基本满足了企业提出的要求。
关键字:
企业OA管理系统,SSH,POI
DevelopmentandImplementationofOAmanagementsystem
Abstract
Thedevelopmentofthissystemisbasedontheclassicwaterfallmodel.Inordertocompletethefeasibilityanalysis,demandanalysis,overalldesign,detaileddesignandcoding,andtestingandotheraspectsoftheeventualestablishmentbasedonB/Sstructure.Technologyanditsapplicationintherelevantpartofthedevelopmentprocesstoachievethegoal,includingthroughtousePOItechnicalexcelfilecontainingemployeeinformationsystemdevelopmentdownload,aswellascalendarplug-instoachievefastinputofthedateofbirthoftheemployees.
Afterpassingthetest,IOAmanagementdevelopmentsystemfunctionscanbeachievedinclude:
1)Departmentadministratorscanperformoperationslikeaddingnewdepartment,deletethedepartmenttomodifyadepartmentandviewalistofdepartmentsinformationandotherrights;
2)Staffmanagementadministratorcanperformaddanewemployee,deleteemployees,modifyemployeeinformationandViewstafflistinformationrights;
3)Calendaradministratorcanperformtoaddanewscheduleandtherighttodeleteaschedule;
4)Rightsmanagementsystemtobesetfordifferentusersdifferentpermissions,administratorscanperformalloperations,generaloperatorcanonlyqueryapersonalmessage.
5)Theinformationdepartmentcompetenthastherighttopostnewinformationonthecompany'sWebsite,tonotifythestaffofthedepartmenttomaketheappropriateadjustments;
PersonalFolderstodisplaytheemployee'spersonaladdressbook;
6)Thefunctionsofthesystemofscientificmanagementandunifieddeploymentofemployees,basicallymeettherequirementsoftheenterprise.
Keywords:
OAmanagementsystem,ssh,POI,AJAX
目录
摘要I
关键字I
AbstractII
KeywordsII
第一章系统概述-1-
1.1系统开发背景-1-
1.2项目开发的环境-1-
1.2.1硬件环境-1-
1.2.2软件环境-1-
1.3技术介绍及开发工具-1-
1.3.1MyEclipse-2-
1.3.2Oracle11-2-
1.3.3Tomcat-2-
1.4任务概述-2-
第二章系统需求分析-4-
2.1系统实现的基本功能-4-
2.2数据库设计-6-
2.2.1数据库概念结构设计-6-
2.2.2数据库逻辑结构设计-8-
2.2.3数据库物理设计-8-
第三章系统总体设计-11-
3.1系统结构-11-
3.2模块-11-
第四章系统详细设计和实现-14-
4.1人机界面设计-14-
4.1.1OA管理系统登录首页-14-
4.1.2部门调整-15-
4.1.3员工管理-15-
4.1.4权限管理-16-
4.1.5信息发布-17-
4.1.6日程管理-18-
4.1.7个人文件夹-18-
4.2技术介绍-19-
4.2.2POI-24-
4.2.3AJAX技术-26-
4.2.4JavaScipt技术-27-
4.2.5JQuery技术-28-
4.2.6JavaEE-28-
4.2.7增删改查的实现-28-
第五章测试-31-
5.1测试目的-31-
5.2测试目标-31-
5.3测试用例-31-
结束语-38-
参考文献-39-
致谢-40-
附录Ⅰ英文资料翻译-41-
第一章系统概述
1.1系统开发背景
OA是OfficeAutomation的缩写,本意为利用技术的手段提高办公的效率,进而实现办公的自动化处理。
OA从最初的以大规模采用复印机等办公设备为标志的初级阶段,发展到今天的以运用网络和计算机为标志的现阶段,对企业办公方式的改变和效率的提高起到了积极的促进作用。
OA软件解决企业的日常管理规范化、增加企业的可控性、提高企业运转的效率的基本问题,范围涉及日常行政管理、各种事项的审批、办公资源的管理、多人多部门的协同办公、以及各种信息的沟通与传递。
可以概括的说,OA软件跨越了生产、销售、财务等具体的业务范畴,更集中关注于企业日常办公的效率和可控性,是企业提高整体运转能力不可缺少的软件工具。
不同企业的管理侧重点各不相同,因此不同的企业就对OA管理系统有着不同的需求。
针对山西维信科技有限公司的管理重点和客户需求,本为推出了企业OA管理系统。
1.2项目开发的环境
1.2.1硬件环境
酷睿处理器,2GB以上内存容量。
1.2.2软件环境
MicrosoftWindows7操作系统,Oracle11数据库,MyEclipse8.5开发工具,服务器采用Tomcat6.0.32。
1.3技术介绍及开发工具
本系统采用Java语言,基于JavaEE企业级开发,前台采用用HTML,JavaScript,CSS,JQuery技术得到页面,后台用JQuery框架实现与数据库的交互,数据库采用Oracle11,选用Hibernate框架实现访问数据库,并用Spring框架来管理整个开发过程。
1.3.1MyEclipse
MyEclipse,是一个十分优秀的用于开发Java,JavaEE的Eclipse插件集合。
利用它我们可以在数据库和JavaEE的开发,他有着功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,JavaScript,Spring,SQL,Hibernate。
在本设计中用MyEclipse作为开发工具的角色出现。
1.3.2Oracle11
Oracle11g是甲骨文公司在2007年年7月12日推出的最新数据库软件,Oracle11g有400多项功能,经过了1500万个小时的测试,开发工作量达到了3.6万人/月。
相对过往版本而言,Oracle11g具有了与众不同的特性。
1.3.3Tomcat
Tomcat是一个轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。
当在一台机器上配置好Apache服务器,可利用它响应对HTML页面的访问请求。
本设计中,Tomcat是作为服务器的角色出现的,利用Tomcat来响应HTML页面的请求。
1.4任务概述
本设计借助山西维信科技有限公司OA管理系统帮助学生强化软件开发的流程和规范,需要实现的功能大致包括。
1.完成对各种不同种类的人员(新员工、在职人员、单位领导及其在单位的职位和权限)管理、人员调整。
2.完成部门的添加功能和查看功能。
3.实现对用户的管理(增加,查看,删除)。
4.实现对各部门之间的日程管理(增加,查看,删除),导出表。
5.权限管理,管理员和一般操作员,只有管理员能执行导出和删除、修改功能。
6.信息发布,管理员和一般操作员,只有管理员能执行增加、删除的操作,普通操作员只能进行查看操作。
7.个人文件夹,任何一个操作员之能对自己的信息进行修改的操作,对其他人的信息则只能进行查看操作。
第二章系统需求分析
本系统运用Windows7作为操作平台,数据库采用Oracle11g数据库,运用的软件开发平台为MyEclipse,属于浏览器/服务器模式,数据库在浏览器上能运行,并提供数据库之间的数据复制功能,人员具备知识:
Java核心,数据库的基本操作,Web网页的基本开发。
从技术可行性的角度可以完成此设计。
OA软件解决企业的日常管理规范化、增加企业的可控性、提高企业运转的效率的基本问题,范围涉及日常行政管理、各种事项的审批、办公资源的管理、多人多部门的协同办公、以及各种信息的沟通与传递。
可以概括的说,OA软件跨越了生产、销售、财务等具体的业务范畴,更集中关注于企业日常办公的效率和可控性,是企业提高整体运转能力不可缺少的软件工具。
确定软件产品是否能够被最终的用户所接受,用户是否能操作最终的产品:
由于网站的操作是基于B/S结构,简单明了,用户只需相关电脑的基本知识,而管理员也无需具备专业知识,只需要对一些数据进行输入以及平时的日常维护就够了。
所以,从可操作性上来看,也是合理的。
2.1系统实现的基本功能
1)个人资料管理:
所有信息的脚本验证是必须的
增加新员工:
录入新员工基本信息,包括编号,姓名,密码,性别,出生日期,加入日期,地址,内部邮箱,电话,部门ID,角色ID,其他手工填写;需要注意在此处应该提供添加编号、密码、出生日期、加入日期、内部邮箱对于必填项目要使用ajax效果给出提示。
职务包含:
员工,总经理,各部门经理,副总经理
员工角色包含:
系统管理员、部门管理员、普通员工
2)员工管理:
查询:
完成员工的查询,显示所有员工,在此处要提供按名字查询的功能,要求是模糊查询(要分页显示),用户点击该员工姓名,系统立刻显示该员工的所有详细信息。
同时显示效果要求使用界面友好的提示效果。
删除
显示所有员工,用户首先输入姓名,然后系统列出该姓名的所有在职员工,点击删除即可将该员工删除;删除时有友好的提示效果。
3)部门管理:
增加部门:
录入部门的名称,电话号码
查询部门:
完成部门查询,显示所有部门,在此处要提供按部门名称查询的功能,要求是模糊查询(要分页显示),用户点击该部门名称,系统立刻显示该部门的所有详细信息。
同时显示效果要求使用界面友好的提示效果。
删除部门:
显示所有部门,用户首先输入部门名称,然后系统列出该名称的部门,点击删除即可将该员工删除;删除时有友好的提示效果。
4)权限管理:
查询权限:
完成员工权限的查询,显示所有员工,在此处要提供按名字查询的功能,要求是模糊查询(要分页显示),用户点击该员工姓名,系统立刻显示该员工的职位和权限。
同时显示效果要求使用界面友好的提示效果。
修改权限:
显示所有员工,用户首先输入姓名,然后系统列出该姓名的所有员工,点击员工姓名即可显示员工现有的权限,点击修改便可对员工的权限进行修改;修改时有友好的提示效果。
2.部门管理:
增加部门:
录入部门的名称,电话
查询部门:
列出所有的部门
3.人员调整
部门调整:
某员工由A部门调到B部门,系统要提供该功能,在该模块内要根据员工名字查询,查询以后显示该员工原来所在部门,然后用户选择调整的目标部门,提交即可。
用户可以在界面上通过鼠标点击可以完成员工状态的调整,注意在该模块里要提供按员工名字的模糊查询,用户先输入名字,然后在屏幕上看到该员工调整前的状态,用户选择目标状态即可。
4.用户管理
增加系统用户,包括用户名和密码以及角色
查看系统用户
删除系统用户、修改用户信息
2.2数据库设计
2.2.1数据库概念结构设计
针对本人力资源管理系统,得到的总E-R图(见图2.1)和实体属性图(见图2.2、图2.3、图2.4、图2.5、图2.6、图2.7、图2.8)。
图2.1总E-R图
图2.2部门实体-属性图
图2.3菜单实体-属性图
图2.4公告实体-属性图
图2.5角色实体-属性图
图2.6权限实体-属性图
图2.7日程实体-属性图
图2.8员工实体-属性图
2.2.2数据库逻辑结构设计
把上述的E-R图模型转化成关系模型为:
员工(员工编号,姓名,性别,出生日期,入职日期,员工密码,部门id,地址,联系电话,邮箱,员工代码,角色id,备注);
部门(id,部门名称,上级部门,电话,备注);
用户(id,用户名,密码,角色)。
2.2.3数据库物理设计
根据需求,本设计采用七张表七个序列来实现,包括员工信息表OA_EMPLOVEE,见表2.1,部门信息表OA_DEPT,见表2.2,菜单信息表OA_POWER,角色表OA_ROLE,角色菜单权限表OA_ROLEPOWER,日程信息表OA_CALENDAR,公告信息表OA_BULLETIN这七张表中的id是用序列来实现的。
其中P_USER表中的id使用的序列为SEQ_PUSER,最小值为1,最大值为99。
P_STAFF表中的id使用的序列为P_STAFF_ID,最小值为1,最大值为50000。
P_DEPT表中的id使用的序列为P_DEPT_ID,最小值为1,最大值为50000。
表2.1员工表(OA_employee)
字段名
描述
数据类型
数据长度
NULL
Primarykey
emp_id
员工编号
NUMBER
1
N
PK
emp_code
员工代码
VC2
2
N
empname
员工名称
VC2
2
N
emppwd
员工密码
VC2
2
N
emp_sex
性别
VC2
1
N
emp_joindate
加入日期
date
N
emp_birth
员工生日
date
emp_email
邮箱
VC2
5
emp_address
地址
VC2
10
emp_phone
电话
NUMBER
2
emp_desc
备注
VC2
10
dept_id
部门id
NUMBER
1
N
FK
role_id
角色id
NUMBER
1
N
FK
表2.2部门信息表(OA_dept)
字段名
描述
数据类型
数据长度
NULL
Primarykey
dept_id
部门id
NUMBER
1
N
PK
dept_name
部门名称
VC2
2
N
dept_fid
上级部门
NUMBER
1
dept_desc
备注
VC2
10
表2.3菜单信息表(OA_power)
字段名
描述
数据类型
数据长度
NULL
Primarykey
power_id
菜单id
NUMBER
1
N
PK
power_name
菜单名
VC2
2
N
power_address
菜单地址
VC2
10
power_fid
上级菜单
NUMBER
1
表2.4角色表(OA_role)
字段名
描述
数据类型
数据长度
NULL
Primarykey
role_id
角色id
NUMBER
1
N
PK
role_name
角色名
VC2
1
N
表2.5角色菜单权限表(OA_rolepower)
字段名
描述
数据类型
数据长度
NULL
Primarykey
rolepower_id
权限id
NUMBER
1
N
PK
role_id
角色id
NUMBER
1
N
FK
power_id
菜单id
NUMBER
1
N
FK
表2.6日程信息表(OA_calendar)
字段名
描述
数据类型
数据长度
NULL
Primarykey
calendar_id
日程id
NUMBER
1
N
PK
calendar_name
日程主题
VC2
2
N
calendar_starttime
开始日期
DATE
calendar_endtime
结束日期
DATE
calendar_remind
提醒时间
NUMBER
2
calendar_content
日程内容
VC2
10
calendar_isremind
是否提醒
NUMBER
1
emp_id
员工编号
NUMBER
1
N
FK
表2.7公告信息表(OA_bulletin)
字段名
描述
数据类型
数据长度
NULL
Primarykey
bulletin_ID
公告ID
NUMBER
1
N
PK
bulletin_name
公告标题
VC2
2
N
bulletin_content
公告内容
VC2
2
N
bulletin_time
发布公告时间
VC2
1
N
bulletin_dept
发布公告部门
VC2
1
N
第三章系统总体设计
3.1系统结构
根据需求,本人力资源管理系统分为员工管理,部门管理,日程管理,权限管理,信息发布,个人文件夹六个模块,如图3.1.
图3.1系统功能模块
3.2模块
以下列出上述六个模块。
员工管理模块包括:
查询员工、设置员工、添加员工;模块图如图3.2
1.查询员工:
按姓名模糊查询所需要调整人的id,姓名,部门信息。
2.设置员工:
修改员工的状态,所属部门,权限以及删除员工。
3.添加员工:
添加新员工及其所属部门,该员工的权限等。
图3.2员工管理模块图
部门管理模块包括:
查询部门、添加部门、设置部门;模块图如图3.3。
1.查询部门:
按部门模糊查询所需要调整部门的id,名称,部门信息。
2.添加部门:
管理员添加新部门及其权限。
3.修改部门信息:
修改部门名称,部门职能,部门权限。
4.删除用户:
删除部门信息。
图3.3用户管理模块图
权限管理模块包括:
新增角色权限、修改角色权限、设置员工角色;模块图如图3.4。
1.新增角色:
添加新的角色。
2.设置角色权限:
按照新的角色的定位赋予一定的权限。
3.修改角色权限:
对于有些需要对其权限进行修改的角色进行一定的处理。
图3.4员工管理模块图
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业论文 太原 科技大学 科学院 计算机系 专业 09 成龙
![提示](https://static.bdocx.com/images/bang_tan.gif)