学校办公自动化系统的设计
2014-02-24潘中建
潘中建
(江苏商贸职业学院,江苏 南通 226011)
0 引言
随着网络技术的飞速发展,传统的信息交流方式及处理办公业务方式已不能满足单位对大量信息快速传递和处理需求,于是需要一种新的技术改善现状,因此办公自动化系统在适应时代发展需求中产生。
目前很多学校是通过电话、聊天工具、邮箱等方式实现校内各部门之间的交流、信息共享与传输,学校内部缺乏统一的信息交流平台来应对外部网络故障导致的不能正常办公和信息的保密性。目前其他高校基本上都有自己的办公自动化系统,建设一个安全、开放、高效的办公自动化系统,为管理部门提供现代化的日常办公条件,实现各部门日常工作的规范化已经成为必要。
1 系统分析
1.1 需求分析
通过调查与分析,本系统将实现以下功能:用户管理、公告管理、公文信息管理。系统需实现的是对用户输入工号和密码进行验证,根据不同岗位的的员工授权级别不同;支持相应操作权限的员工对公告的查看和发布,对文档的浏览、删除、上传和下载,可以进行类似聊天工具的即时信息交流功能,对公文的接受和发送通过收发电子邮件为主的方式,对员工信息查看、添加、浏览和删除。
系统的设计应面向用户,应该具有良好的开放性,便于与教务系统、人事系统、资产系统的集成,应该考虑数据的安全性已经不同的用户授权访问问题。
1.2 可行性分析
通过办公自动化系统对学校日常办公进行管理,实现了教职工之间的信息的交流与共享;同时网站的公告与公文管理,方便教职工及时了解学校的动态。对软件配置的要求则是系统最好是基于日常办公软件如OFFICE系列上的应用系统,这样既不用花大量资金添置软件,员工又较容易学会使用应用。
2 总体设计与实现
2.1 系统架构设计
本系统利用基于B/S的三层架构系统(表示层—业务逻辑层—数据库层)进行开发。表示层位于客户端,只要通过客户端浏览器即可以访问界面。业务逻辑层通过接收表示层送来的HTTP请求,进行分析处理访问数据库层,并将处理结果返回到表示层的客户端。
集成Struts与Hibernate框架进行开发,实现了J2EE应用系统的多层架构,利用Struts做表示层,负责页面请求的接受与转发实现表示层与逻辑层的分离,利用Hibernate框架是业务层与数据库访问分开,提高了系统的开发效率和可维护性。
2.2 系统功能结构设计
2.2.1 用户登录。根据登录用户输入的用户名和密码进行级别确认,先做客户端的有效性检验,分为部门领导与一般教师权限,通过检验后提交给服务器端,由服务器端提交信息与数据库里的信息相比较,如果二者不符则返回相应的出错信息。用户名由学校进行统一分配,用户成功登录后可以维护自己的个人信息。系统管理员可以管理其他教师的个人信息,可以通过工号及姓名查找筛选员工。权限分为三个级别:系统管理员、部门领导、教师。系统管理员负责部门领导的权限分配。部门内部由部门领导分配教师权限。
身份验证主要代码:
<%String path=request.getContextPath();
String basePath = request.getScheme ()+ "://"+ request.getServerName()+":"+request.getServerPort()+path+"/";
User user=(User)request.getSession().getAttribute("USER");
if(user==null||user.getIsManager()==null||!user.getIsManager().equals("Y")){
response.sendRedirect(path+"/index.jsp");
}%>
2.2.2 公告管理。包括查看公告与发布公告,用户可以及时了解学校的相关通知。本系统对公告的操作也有权限,游客只能够浏览公告而不能添加和删除公告。只有管理员才有资格进行这些操作。
下面重点介绍如何实现修改公告的功能。
1)查看“修改链接”。
在Look_pcard.jsp页面中用到的“修改”链接代码如下:
<a href="<%=request.getContextPath()%>/pcard/pcard_update.do?id=<bean:write name='pcardsigle'property='pcardid'/>&updatetype=link">√修改</a>
2)配置文件Struts-config.xml中对该模块的声明:
<form-beans>
<form-bean name="pcardform" type="com.office.actionform.PcardForm"/>
</form-beans>
<action
name="pcardform"
parameter="pcard_update"
path="/pcard/pcard_update"
scope="request"
type="com.office.action.PcardAction">
<forward name="success"path="/pcard/pcard_look.do"/>
<forward name="update"path="/pcard/Update_pcard.jsp"/>
<forward name="false"path="/pcard/Update_pcard.jsp"/>
</action>
3)创建PcardForm类,键代码如下:
package com.office.actionform;
import org.apache.struts.action.ActionForm;
public class PcardForm extends ActionForm{
private int pcardid;
private String time;
private String content;
private String subject;
private String author;
public int getPcardid(){
return pcardid;
}
public void setPcardid(int pcardid){
this.pcardid=pcardid;
}
…….//省略了其他属性的方法声明
4)创建 executePcardUpdate()方法。
2.2.3 公文信息管理。包括即时信息模块和邮件管理模块。即时交流模块是所有员工间可以随时交流,避免了邮件发送不能即时查看,满足了现代办公的习惯;邮件管理模块包括通讯录管理,对公文的发送、浏览、删除和查看详细内容的功能,与邮件发送类似。邮件管理模块还需设计文件的的上传与下载功能。
写信主要代码:
<FORM action=”showResult.jsp” method=”post”>
<table width=”608” border=”1” cellpadding=”5” cellspacing=”0”>
<td colspan="2"><b>新建邮件</b></td></tr>
<tr><td bgcolor="#F0F0F0">收件人:</td>
<td width=”400” ><input name=”name” type=”text”></td></tr>
<tr><td bgcolor="#F0F0F0"> 主题:</td>
<td width=”400” ><input name=”subject” type=”text”></td></tr>
<tr><td rowspan="2"align="right"bgcolor="#F0F0F0">内容:</td>
<td width=”500” ><input name=”content” type=” textarea”></td></tr>
<tr><td ><html:submit value="发送"/> </td></tr>
</table> </FORM>
3 数据库结构设计及关键技术
本系统数据库采用SQL Server 2000数据库,数据库设计时分析了各个数据之间的关系。为了设计合理的表结构,较少数据冗余,数据库的设计要合理选择数据类型,保证数据的完整性。下面列出主要的表结构:
用户信息(用户ID,用户密码,用户权限,姓名,部门,学历,职称,电话,邮箱)
公文(公文ID,公文名称,公文内容,保存路径,用户ID)
公告(公告ID,主题,内内容,用户ID)
MVC(Model-View-Controller)设计模式强制性的将输入、处理和输出分开。模型表示数据和业务规则,与数据格式无关,能为多个视图提供数据。视图主要是前端用户交互节目,接受用户的输入,但不处理数据而是送给控制器。控制器接受用户的输入后通过控制模型和视图去完成数据的输出。
4 结束语
本文对学校办公自动化系统进行设计,教职工可以实现系统内部信息的交流与共享,信息的发布与查询等功能。本系统设计了严格的人员权限解决目前使用2个公共邮箱的问题,不同层次的人员要通过身份验证。软件设计基于B/S架构,前台采用了JSP技术,数据库使用SQL Server2000,利用结构化设计使系统层次结构清晰,利于后期将教务系统、人事系统、资产系统等融入进去。
[1]文东戈.B/S架构网上考试系统的设计与实现[J].黑龙江科技学院学报,2002,12(04).
[2]张艺雪.基于JSP的办公自动化系统的研究与设计[J].西昌学院学报,2013,27(3).
[3]栾阳.基于WEB的办公自动化系统应用研究[J].电脑知识与技术,2008(3):42-45.