OA协同办公自动化系统工作计划管理模块开发.由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“oa办公自动化系统项目”。
OA协同办公自动化系统 ——工作计划管理模块开发
摘要随着信息技术的不断发展,企业现有的人工管理模式已不能满足企业的发展,企业协同办公自动化系统的出现已成为必然。其不仅能改善公司办公条件,减轻工作人员负担,提高办公质量和工作效率,还能加快公司工作规范化、科学化、网络化的进程。
针对企业要求,使用JSP、Struts、Hibernate、Spring及Ibatis等技术开发一个基于Web的企业协同办公自动化系统。本系统一共分为十一个模块:人事信息管理、短消息管理、提醒器设置、日程管理、工作日志管理、工作计划管理、数据字典、部门管理、岗位管理、职位管理、权限管理、用户管理。超级管理员可以根据不同职位创建不同的角色,为用户灵活的分配系统功能权限。
关键词B/S结构,MVC设计模式,JSP网页技术标准,OA协同办公系统 ABSTRACT Along with the development of the information technology,the labour management model of enterprise can not satisfy the development of the enterprise at the present time, so the appearance of the office automation system become inevitable.The system can improve the working conditions, reduce the staff's burden,improve work quality and efficiency, can also quicken the proce of standardization, scientization and network.For requirements of the enterprise, use the technology about JSP, Struts, Hibernate, Spring and Ibatis to develop a office automation system based on web.The system has eleven modules.There are the management of personnel information, the management of short meages, reminder setttings, the management of daily work plan, the management of data dictionary, the management of department,the management of post,the
management of duty, the management of powers and the management of users.The administrator can create different roles for different positions by characters and can asign the resource of permiion flexiblely.Key Words:Browser/Server, Model View Controller, Java Server Page, Office Automation System 1.绪论(1 1.1课题意义(1 1.2课题目的(1 1.3技术要求(1 1.4可行性分析(2 2.需求分析(3 2.1概述(3 2.1.1项目名称(3 2.1.2开发背景(3 2.1.3项目目标(3 2.2任务说明(4 2.2.1个人办公管理(4 2.2.1.1日程管理(4 2.2.1.2工作计划管理(4 2.3需求分析(5
2.3.1个人办公管理(5 2.3.1.1日程管理(5 2.3.1.2工作计划管理(10 3.总体设计(17 3.1概述(17 3.2系统总拓扑图(18 3.3系统功能清单(18 3.3环境搭建(19 4.系统设计(19 4.1开发及运行环境(20 4.2数据库设计(20 4.2.1工作计划发布范围表(t_ico_ workPToStaff(21 4.2.2工作子计划表(t_ico_workSubPlan(21 4.2.3工作汇报表(t_ico_workReport(22 4.2.4工作计划表(t_ico_workPlan(22 4.2.5日程安排表(t_ico_schedule(23 5.系统程序设计(23 5.1个人办公(23 5.1.1日程管理(23
5.1.2工作计划管理(24 6.结论(29 参考文献(30 答谢(31 1.1课题意义
随着世界经济一体化进程的加快,世界经济从工业化的经济逐步进入网络信息的时代。各个企业都转变着自己企业的经营及管理模式,从传统的人工管理向信息自动化管理体制过渡。企业传统式的办公管理模式也在逐步向自动化办公管理模式转变。
通过网站对企业内部信息进行全面的自动化的管理,提高企业的办公效率;管理和统计企业生产经营中的数据,避免人为处理各类数据时所产生问题,提高企业的经济效益,使企业的管理达到科学化、系统化的范畴。
1.2课题目的本课题是为了给现在的企业提供一个信息化平台,有效提高公司内部各级部门、员工沟通、协调能力;规范化、标准化公司各项业务流程、管理流程;提高日常工作效率,快速使用文件、报告或报表;公司领导、部门主管随时随地掌握、了解员工的工作状态;利用信息化自动办公平台为公司领导、部门主管提供准确的信息和资料,提高经营者第一时间的决策能力。
1.3技术要求
JAVA:熟悉java面向对象编程的思路;WEB网页设计:能够熟练操纵网页的表单元素、JavaScript脚本(jQuery以及CSS样式表;
JSP基础:能够使用JSP进行网页排版以及结合Struts标签综合应用;Spring、Hibernate、Struts、Ibatis 框架基础:理解MVC设计模式、Struts拦截器原理、Struts标签的应用以及持久化层Hinernate及Ibatis 的应用;Oracle数据库:能熟练使用Oracle:安装、配置、使用Oracle数据库。1.4可行性分析
可行性分析是依据初步调查的结果作出系统开发可行性与否的结论的过程。可行性分析是为了论证系统开发是否可行。
为实现系统目标,需要技术保证。此系统开发所需要的技术主要有计算机硬件、软件技术、系统开发人员的水平、用户管理与使用的能力等。
在选择使用JSP还是ASP开发的时候,考虑到JSP的以下优点,选择了JSP作为web开发语言。
JSP是Java平台的一部分。ASP技术不能轻易的实现跨平台的web服务工作,只能在windows上运行。而Java可以运行在不同的环境,如Linux, Windows。Linux的安全性和稳定性也是选择Jsp作为web开发的重要原因。
ASP仅支持组建对象模型COM,而JSP技术提供的组建都是基于JavaBean技术或JSP标签库,用户许多可重用的类库,大大的方便了web 开发。
JSP开发web比ASP更加灵活,可扩展性更强,便于以后的维护和二次开发。2.需求分析 2.1概述 2.1.1项目名称
OA协同办公自动化系统 2.1.2开发背景
编写需求说明的核心源于企业需求,为明确软件开发的最终目的,使开发出来的系统能够更好的达到企业信息化建设的需求,使目标系统提供的功能与企业需求达成一致。
对于企业:重点在于清楚的表达企业提出的需求,如何理解企业机构部门、业务关系,让企业确认我们的表达和描述是符合客户的需求。
对于开发人员:开发人员、项目经理、营销人员、员工、测试人员,重点告诉他们系统需要具有哪些功能,有哪些对象,对象有哪些属性,对象之间有哪些关系,更清楚的了解企业的真正需要,从理解的角度开发产品,真正服务于企业客户。
2.1.3项目目标
有效提高公司内部各级部门、员工沟通、协调能力;规范化、标准化公司各项业务流程、管理流程;提高日常工作效率,快速使用文件、报告或报表;公司领导、部门主管随时随地掌握、了解员工的工作状态;利用信息化自动办公平台为公司领导、部门主管提供准确的信息和资料,提高经营者第一时间的决策能力;通过总结归纳后,该软件具备以下四大功能:个人办公管理、基本信息管理、人事信息管理、权限组管理。在需求分析中将详细描述各个功能。2.2任务说明
2.2.1个人办公管理 2.2.1.1日程管理
2.2.1.1.1添加日程记录
系统正常运行,并且用户拥有添加日程记录权限时,用户可以添加日程记录。2.2.1.1.2查询日程记录
系统正常运行,并且用户拥有查询日程记录权限时,用户可以查看日程记录。主要是以列表的形式查看,包括:序号,标题,事务类型,开始时间,计划完成时间,实际完成时间,重要程度,状态。
2.2.1.1.3修改日程记录
系统正常运行,并且用户拥有修改日程记录权限时,用户可以修改日程记录。2.2.1.1.4删除日程记录
系统正常运行,并且用户拥有删除日程记录权限时,用户可以删除日程记录。2.2.1.2工作计划管理 2.2.1.2.1添加工作计划
系统正常运行,并且用户拥有添加工作计划权限时,用户可以添加工作计划。2.2.1.2.2查看未读计划
系统正常运行,并且用户拥有读取未读工作计划的权限时,用户可以查看未读工作计划。主要是其他人员提交给该用户的工作计划,类似邮件系统里的未读邮件。
2.2.1.2.3查看已读计划
系统正常运行,并且用户拥有读取已读工作计划的权限时,用户可以查看已经读取的工作计划信息,同时也可以删除已读的工作计划信息。主要是以列表的形式查看,包括:序号,计划标题,员工姓名,参与人员,部门名称,计划类别,计划开始时间,计划结束时间。
2.2.1.2.4查看已提交计划
系统正常运行,并且用户拥有读取已提交工作计划的权限时,用户可以查看已经提交的工作计划信息,同时也可以删除已提交的工作计划信息。
2.2.1.2.5查看草稿箱
系统正常运行,并且用户拥有读取草稿箱的权限时,用户可以查看所有该用户保存为草稿的工作计划信息,同时也可以删除草稿状态的工作计划信息。也可以给某条工作计划添加子计划,主要是以列表的形式分页查看。
2.3需求分析 2.3.1个人办公管理 2.3.1.1日程管理 2.3.1.1.1总体描述
用户可以使用本功能来预先安排和管理自己的各项待办事项。2.3.1.1.2拓扑图
图1 日程管理拓扑图 2.3.1.1.3用例图
图2 日程管理用例图 2.3.1.1.4添加日程记录 2.3.1.1.4.1功能描述 完成对日程记录的添加。2.3.1.1.4.2界面原型
图3 添加日程界面图 2.3.1.1.4.3数据项描述 标题:必填项,最大长度30字;事务类型:必填项,点击下拉列表选择;重要程度:必填项,点击下列表选择;状态:必填项,点击下拉列表选择;开始时间:必填项,使用时间控件选择时间,也可以手动输入,所填写的时间不能早于当天的系统时间,若输入的时间不合法,则给出
提示信息;计划完成时间:必填项,使用时间控件选择时间,也可以手动输入,所填写的时间不能早于开始时间;若输入的时间不合法,则给
出提示信息;实际完成时间:非必填项,使用时间控件选择时间,也可以手动输入,若输入的时间不合法,则给出提示信息;是否提醒:必填项,点击下拉列表选择;提醒时间:若“是否提醒”选择“是”,使用时间控件选择时间,若选择“否”,则提醒时间输入框被禁用;事务内容(限100字:必填项。2.3.1.1.4.4基本流程
图4 添加日程流程图 2.3.1.1.5查询日程记录 2.3.1.1.5.1功能描述
在保证系统正常运行,并且用户拥有日程记录查询权限的情况下,进入日程记录查询页面。
2.3.1.1.5.2界面原型
图5 查询日程界面图 2.3.1.1.5.3查询条件
标题,开始时间,状态,计划完成时间,重要程度,实际完成时间。2.3.1.1.5.4查询列表
序号,标题,事务类型,开始时间,计划完成时间,实际完成时间, 重要程度,状态。2.3.1.1.6修改日程记录 2.3.1.1.6.1功能描述
可以修改日程记录的所有字段。2.3.1.1.6.2界面原型
图6 修改日程界面图
2.3.1.1.7删除日程记录 2.3.1.1.7.1功能描述
用户点击操作栏中的“删除”功能,可对该条记录做出删除,或者选择要删除记录前面的复选框,进行批量删除;查询条件:标题,开始时间,状态,计划完成时间,重要程度,有效时间,实际完成时间。
2.3.1.1.7.2基本流程
图7 删除日程记录流程图 2.3.1.2工作计划管理 2.3.1.2.1总体描述
无论是单位还是个人,无论办什么事情,事先都应有个打算和安排。有了计划,工作就有了目标的目标和明确的步骤,就可以协调大家的行动,增强工作的主动性,减少
盲目性,使工作有条不紊地进行。同时,计划本身又是对工作进度和质量的考核标准,对员工有较强的约束和督促作用。所以计划对工作既有知道作用,又有推动作用,搞好工作计划,是建立正常的工作秩序,提高工作效率的重要手段。
2.3.1.2.2拓扑图
图8 工作计划管理拓扑图2.3.1.2.3用例图
图9 工作计划管理用例图2.3.1.2.4添加工作计划 2.3.1.2.4.1功能描述
系统正常运行,并且用户拥有添加工作计划权限的时,进入添加工作计划页面。2.3.1.2.4.2界面原型
图10 添加工作计划界面图 2.3.1.2.4.3数据项描述
员工姓名:根据登录用户自动获取;部门:根据登录用户自动获取;岗位:根据登录用户自动获取;职务:根据登录用户自动获取;计划名称:必填项,最大长度30字;计划开始时间:必填项,点击输入框出现时间控件进行选择日期;计划结束时间:必填项,点击输入框出现时间控件进行选择日期,所选日期在计划开始时间之后;
计划负责人:必填项,默认为当前登录用户;计划类型:必填项,通过点击下拉列表选择;计划内容:必填项;预期目标:非必填项,限500字;参与人员:从人员列表中选择;发布范围:从人员列表中选择;备注:非必填项,限300字;附件:非必填项,文件类型须为rar、zip、jar、txt、doc、docx、xls、xlsx。2.3.1.2.4.3基本流程
图11 添加工作计划流程图 2.3.1.2.5查看未读计划
2.3.1.2.5.1功能描述
在系统正常运行,并且用户拥有读取未读工作计划的权限,进入未读工作计划查询页面。主要是其他人员提交给该用户的工作计划,类似邮件系统里的未读邮件。
2.3.1.2.5.2界面原型
图12 查询未读工作计划界面图 2.3.1.2.5.3查询条件
员工姓名,部门名称,岗位名称,职务,计划类别和计划开始时间;2.3.1.2.5.4查询列表
序号、计划标题、员工姓名、参与人员、所属部门、岗位、职务、计划类别、计划开始时间、计划结束时间。
2.3.1.2.6查看已读计划 2.3.1.2.6.1功能描述
系统正常运行,并且用户拥有读取已读工作计划的权限时,用户可以查看已经读取的工作计划信息用户查看已经读取的工作计划信息,同时也可以删除已读的工作
计划信息。主要是以列表的形式查看,包括:序号,计划标题,员工姓名,参与人员,部门名称,计划类别,计划开始时间,计划结束时间。
查询条件:员工姓名,部门名称,岗位,职务,计划类别,计划开始时间。2.3.1.2.6.2界面原型
图13 查询已读工作计划界面图 2.3.1.2.6.3基本流程
图14 查询已读工作计划界面图 2.3.1.2.7查看已提交计划 2.3.1.2.7.1功能描述
用户查看已经提交的工作计划信息,同时也可以删除已提交的工作计划信息。2.3.1.2.7.2界面原型
图15 查询提交工作计划界面图 2.3.1.2.7.3查询条件
员工姓名,部门名称,岗位,职务,计划类别,计划开始时间。2.3.1.2.7.4查询列表
序号,计划标题,员工姓名,参与人员,部门名称,计划类别,计划开始时间,计划结束时间。
2.3.1.2.8查看草稿箱 2.3.1.2.8.1功能描述
用户登录系统后,查看所有该用户保存为草稿的工作计划信息,同时也可以删除草稿状态的工作计划信息。也可以给某条工作计划添加子计划,主要是以列表的形式分页查看。
2.3.1.2.8.2界面原型
图16 查询草稿工作计划界面图 2.3.1.2.8.3查询条件
员工姓名,部门名称,岗位,职务,计划类别,计划开始时间。2.3.1.2.8.4查询列表
序号,计划标题,员工姓名,参与人员,部门名称,计划类别,计划开始时间,计划结束时间。
3.总体设计 3.1概述
本次OA协同办公系统采用基于JA V A WEB的SSH及IBATIS四大框架技术开发。其中贯穿了MVC设计模式、JA V A面对象思想。如下图所示:
图17 系统整体架构图
模型表示企业数据和业务规则。在MVC的三个部件中,模型拥有最多的处理任务。例如它可能用象EJBs和ColdFusion Components这样的构件对象来处理数据库。被模型返回的数据是中立的,就是说模型与数据格式无关,这样一个模型能为多个视图提供数据。由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。
控制器接受用户的输入并调用模型和视图去完成用户的需求。所以当单击Web 页面中的超链接和发送HTML 表单时,控制器本身不输出任何东西和做任何处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后再确定用哪个视图来显示返回的数据。
服服服服服 服服服服服
图18 系统物理架构图 3.2系统总拓扑图
图19 系统拓扑图
3.3系统功能清单 表1 系统功能明细表
3.3环境搭建 安装Oracle数据库 安装Oracle客户端 安装PLSQL 配置Oracle数据库 安装MyEclipse 6.5 配置tomcat/java环境变量 4.系统设计
4.1开发及运行环境
操作系统:Windows 2000/XP/2003 Server操作系统;数据库:Oracle 10.0.2.1;Web服务器:Tomcat 5.0;Java环境:Jdk 1.4;处理器:Intel Pentium 2GHz或以上的CPU;内存:512MB,建议使用1GB内存;硬盘:硬盘至少有1GB可用空间;4.2数据库设计
本系统数据库采用Oracle 10g数据库,使用数据库连接池连接数据库后,通过服务端的JSP环境管理员就可以象对当地数据库一样通过各种界面对数据库进行浏览进行各种功能的显示。数据管理,增加、删除、修改。数据库是数据的存储之处,它是针对特定的需求所整理与组织出的相关信息的汇总处。无论何时,企业都需要高性能、高稳定性和高安全性的服务器操作系统作为信息化的基础构架。企业级的高端应用更离不开数据库的支持。Oracle是一个采用SQL语言的关系型数据库管理系统。它是一个不折不扣的服务器级数据库管理系统,与其它数据库服务器如SQL SERVER、Sybase、Informix等相比它拥有高弹性与多元化的结构,不仅符合业界的需求,更能与现今最重要的互联网紧密集成。
本系统数据库名称为oasys。数据库oasys中包含29张表。在本系统中,以下字段作为公用字段,即每张表中都包含的字段,在以下就不在赘述。
表2 默认字段
4.2.1工作计划发布范围表(t_ico_ workPToStaff 4.2.1.1实体描述
该表用于存放工作计划发布范围,处理工作计划与接收人员间的对应关系。4.2.1.2字段列表
表12 工作计划发布范围表
4.2.2工作子计划表(t_ico_workSubPlan 4.2.2.1实体描述
该表用于存放工作子计划。4.2.2.2字段列表
表13 工作子计划表
4.2.3工作汇报表(t_ico_workReport 4.2.3.1实体描述
该表用于存放工作汇报。4.2.3.2字段列表 表14 工作汇报表
4.2.4工作计划表(t_ico_workPlan 4.2.4.1实体描述
该表用于存放工作计划。4.2.4.2字段列表 表15 工作计划表
4.2.5日程安排表(t_ico_schedule 4.2.5.1实体描述
该表用于存放日程记录。4.2.5.2字段列表
5.系统程序设计 5.1个人办公 5.1.1日程管理 5.1.1.1添加日程记录
系统正常运行,并且用户拥有添加日程记录权限时,用户可以添加日程记录。如下图所示:
图20 添加日程记录界面图 添加日程记录核心代码如下: scheduleService.saveOrUpdate(schedule, this.getLoginUserId(;5.1.1.2查询日程记录
系统正常运行,并且用户拥有日程记录查询权限的情况下,进入日程记录查询页面。如下图所示:
图21查询日程记录界面图 查询日程记录核心代码如下: scheduleService.querySchedule(qScheduleVO, this.getPage(;5.1.2工作计划管理 5.1.2.1添加工作计划
系统正常运行,并且用户拥有添加工作计划权限的时,进入添加工作计划页面。如下图所示:
图22 添加工作计划界面图 添加工作计划核心代码如下: workPlanService.queryWorkPtoStaffList(tempWorkPtoStaff, getPage(;workPlanService.saveOrUpdateAll(PublicList, getLoginUserId(;5.1.2.2查看未读计划
在系统正常运行,并且用户拥有读取未读工作计划的权限,进入未读工作计划查询页面。如下图所示:
图23 查询未读工作计划界面图 查看未读计划核心代码如下: // 设置为发布对象
workPlanInfo.setWorkptostaffFlag(2L;workPlanService.queryWorkPlanList(workPlanInfo, getPage(;5.1.2.3查看已读计划
系统正常运行,并且用户拥有读取已读工作计划的权限时,用户可以查看已经读取的工作计划信息。如下图所示:
图24 查询已读工作计划界面图 查看已读计划核心代码如下: workPlanInfo.setWorkptostaffFlag(2L;workPlanService.queryWorkPlanList(workPlanInfo, getPage(;5.1.2.4查看已提交计划
系统正常运行,并且用户拥有读取已提交工作计划的权限时,用户可以查看已经提交的工作计划信息。如下图所示:
图25 查询已提交工作计划界面图 查看已提交计划核心代码如下: // 通过当前登录用户获取其相关人事信息 if(null == workPlanInfo && null!= staffInfo { workPlanInfo = new WorkPlanInfo(;workPlanInfo.setStaffInfoId(staffInfo.getId(;workPlanInfo.setIsDraft(2L;
workPlanService.queryWorkPlanList(workPlanInfo, getPage(;} 5.1.2.5查看草稿箱
系统正常运行,并且用户拥有读取草稿箱的权限时,用户可以查看所有该用户保存为草稿的工作计划信息。如下图所示:
图26 查询草稿工作计划界面图 查看草稿箱核心代码如下: workPlanInfo.setStaffInfoId(staffInfo.getId(;workPlanInfo.setIsDraft(1L;西北民族大学电气工程学院电子信息类本科毕业论文 workPlanService.queryWorkPlanList(workPlanInfo, getPage(;28 西北民族大学电气工程学院电子信息类本科毕业论文 6.结论 通过本次对 OA 协同办公系统的研究,我们小组完成了个人办公、人事 信息、基本信息、权限管理等基础模块的开发。在开发的过程中,我们小组的团队协作能力有了更进一步的提高。当 小组成员遇到问题时,我们先以小组讨论的形式去解决这个问题,然后确 定最终的解决方案,小组成员在这种模式下相互的交流也越来越多。项目中
我负责工作计划管理模块,通过对该模块的开发,使我对 Oracle 数据库有了一定的了解,对 SSH 框架技术也有了更进一步的认识。这个项 目不管在技术上还是团队协作上,为我以后的项目都积累了宝贵的经验。29 西北民族大学电气工程学院电子信息类本科毕业论文 参考文献 [1] 李钟尉《Java 从入门到精通》,北京:清华大学出版社,2010 年。[2] 李刚 《轻量级 Java EE 企业应用实战》 北京:,电子工业出版社,2011 年。[3] 陆荣幸,郁洲《J2EE 平台上 MVC 设计模式的研究与实现》,2003 年。[4] 孙卫琴,李洪称 《Tomcat 与 Java Web 开发技术详解》,北京:电子工业 出版社,2003 年。[5] 何成万,余秋惠《MVC 模型 2 及软件框架 Struts 的研究》,北京:计算 机工程,2002 年。[6] Marty Hall,Larry Brown《Servlet 与 JSP 核心编程(第 2 版)北京:清 》 华大学出版社,2004 年。30 西北民族大学电气工程学院电子信息类本科毕业论文 答 谢 走的最快的总是时间,来不及感叹,大学生活已接近尾声,四年的努力 与付出,随着本次论文的完成,将要划下完美的句号。论文得以完成,要感谢的人实在太多了,首先要感谢指导老师王书文院 长,从课题选择到具体的写作过程,论文初稿到定稿无不凝聚着您的关怀与 帮助,在论文创作过程中您给了我们很多指导与建议,才使得我们的论文得 以顺利完成。还要感谢在这四年中给予我诸多教诲和帮助的各位老师,感谢你们四年 来的辛勤栽培。感谢我的母校给我的教育,我将以加饱满的热情投入到社会中去,充实 自己,完善自己,向着自己的目标不断地前进,用我的所学的,您教授的,以实际行动报答母校,实现自己的梦想。31