基于WEB的职校人事考核系统

2014-09-17 06:39
天津职业院校联合学报 2014年5期
关键词:页面资料数据库

(天津市教育委员会职业技术教育中心,天津 300122)

一、引言

经过深入调研天津各职校教师年度考核业务流程,发现天津理工大学至今仍采用传统的考核方法,即在每个考核周期来临时,需要教师填写大量的表格。而相关人员对此进行审核的工作量较大,纸质文档在各个部门的传送耗时耗力,造成大量的重复性工作。另一方面,高校的信息化水平不断提高,具备成熟的计算机及网络条件,教师具有应用计算机进行无纸化办公的能力。

因此,高校人事考核系统的开发,将会使繁琐的纸质文档的重复性工作很科学的转化为计算机的后台工作,而管理人员和教师只需通过网络,便能高效准确地完成工作,为考核工作节省了大量不必浪费的时间和精力。

二、 职校人事考核系统功能简介

本系统采用模块化开发方法,共分为三个模块,即三个子系统:用户身份验证子系统,教师信息管理子系统,考核人员管理子系统。

1. 用户身份验证子系统

在此子系统,用户通过表单提交登陆信息,系统根据用户提供的信息对用户身份进行鉴别。如果身份合法,则根据用户类别将用户导向管理员主页或是教师主页。

图1 用户登录界面

图1是职校人事考核系统的登录页面,用于鉴别用户身份,并根据鉴别出来的用户类型分别将用户导向教师信息管理子系统或考核人员管理子系统。如果退出系统,用户的身份信息会被清空。

2. 教师信息管理子系统

系统用户通过登录验证以及类型的匹配进入教师信息管理主页面。在此页面,教师可以修改本人密码,管理基本资料、教学任务、论文著作、科研项目,查看审核结果。流程图如图2所示。

图2 教师信息管理流程图

图3所示为基本资料管理主页面(Employee.jsp),在形式上,它与系统中大多数页面相同,由头部(Header.jsp)、左侧(Left.jsp)、尾部(Footer.jsp)和主体(index_employee.jsp)构成。

图4为添加基本资料页面(AddEmployeeStep1.jsp)。在此页面,教师可以添加基本资料,添加的信息都要经过validation-framework.js的doValidate()方法的验证。日期的选择通过代码 实现对datePicker插件的引用。照片的上传利用SmartFiles.java,SmartUpload.java,UploadServlet.java等类方法,将上传的照片存于服务器,而将存储路径存于数据库中。当录入数据合法后,提交信息成功,转入添加信息的后台Servlet中(UploadServlet.java),通过Employee.java的Add()方法将提交的信息添加到数据库中。

图3 基本资料主页面

图4 添加基本资料页面

仅当已添加过资料时,才能进入修改、删除和查看页面。在修改资料页面(ModifyEmployee- Step1.jsp),先将后台数据库里已添加的资料读入页面以待修改。读取后台数据利用Employee.java类的FindByID()方法,将整个教师的资料读取到Employee.java的一个对象employee中。修改的信息经过验证合法后,由于存在照片的上传同样进入UploadServlet.java,在此Servlet中完成修改操作后,是转入添加第二步还是修改第二步时需要进行判断。

删除资料第一步(DelEmployeeStep1.jsp)与修改页面相同,先是读取已存在的信息;之后第二步(DelEmployeeStep2.jsp)利用Employee.Delete(employeeid),即Delete()方法删除数据库信息。这里的删除操作使用UPDATE,是因为此次删除并不是将此教师彻底删除,而是要保留教师编号和密码,以便再次登录更新信息。彻底删除教师功能只限于管理员。

查看基本资料页面(ViewEmployeeStep1.jsp),读取数据库信息与修改删除相似,只是查看页面里的信息不允取修改,此项功能利用了input的readonly属性。

教学任务管理页面主要包括添加、修改、删除和查看教学任务。此功能仅当未进入考核时段时可用,进入考核时段后,仅有查看功能。

图5所示为添加教学任务页面(AddTeachStep1.jsp)。提交页面后进入添加教学任务第二步(AddTeachStep2.jsp),利用Teach.Add(…)方法添加到数据库。

图6为修改教学任务页面(ModifyTeachStep1.jsp)。仅当教师已添加过教学任务,才能进入此页面。另外,本页面的显示功能是在Teach.java类中定义了一个ListAll()方法,将符合条件的教学任务存储在一个Teach的对象数组中。此页面实现了多选按钮,修改操作只能针对一条记录,操作不符会提示。

图5 添加教学任务页面图图6 修改教学任务页面

选择一条记录并提交页面后进入修改第二步(ModifyTeachStep2.jsp),此页面要显示上个页面选中的教学任务,即把多选的值传递过来。由于是多选按扭,需要把值存到一个数组中str,利用for循环取出数组中的值,然后根据这个值利用Teach.java的FindByID()方法取出该值对应的教学任务的完整信息存于Teach的一个对象teach中,之后利用get方法挨个取出字段值。修改确认后,进入修改第三步(ModifyTeachStep3.jsp),利用Teach.Modify()完成修改操作。

删除教学任务(DelTeachStep1.jsp)与修改不同的是可以选择多条记录进入下一页面(DelTeachStep2.jsp)一次性删除,删除的方法是将数组的数据利用循环运用Delete()方法,一个个删除。查看教学任务页面(ViewTeachStep1/2.jsp)与修改教学任务的前两步相似。

另外,论文著作管理页面、科研项目管理页面与教学任务页面功能相似,这里不再赘述。在考核结果查看页面,教师可以查看管理员对自己的考核意见和考核结果。不受考核时段限制。

3. 考核人员管理子系统

系统用户通过登录验证进入考核人员管理主页面。在此主页面,管理员具有以下功能:添加新用户;查询删除教师;考核时段控制;考核教师;备份教师信息。流程图如图2.7所示。

在考核人员管理页面可以对用户的登录进行管理。如图8为添加用户页面(AddUserStep1.jsp)。输入要添加的用户名、密码和用户类型,点击添加后进入后台处理页面(AddUserStep2.jsp)。在处理页面,首先读取用户类型,然后通过if判断进行对应的添加操作。如果是管理员,则利用User的Add()方法;如果是教师则利用Employee的Add_user()方法。当考核人员正在进行考核或考核完成后,教师可能又修改、删除自己的信息,发生冲突。针对这种情况,设计了考核时段控制页面,用以控制教师的权限,即考核开始后,禁止教师的添加、修改和删除操作。

图9为考核时段控制页面(InAssessStep1.jsp)。在此页面,为了方便管理员进行相关操作,将当前的考核时段状态从数据库中读取出来,利用Employee的InOrOut()方法判断数据库中Right字段值。

图8 添加用户页面图9 考核时段控制页面

图7 考核人员管理流程图

之后,管理员可以选择进入考核或退出考核。以进入考核时段为例,在处理页面利用Employee的ListAll()方法将employee表中的所有数据读出来存于一数组,之后利用for循环修改数组中所有元素的Right字段的值,修改操作的方法为Employee.In()。核心代码如下:

for(int i=0;i

Employee employee = (Employee)list.elementAt(i);

IsSucceed = Employee.In(employee.getEmployeeID());}

ListAll()核心代码:

String strSQL = "SELECT * FROM employee ORDER BY EmployeeID ASC";

In()核心代码:

dbc.prepareStatement("UPDATE employee SET [Right]='0' WHERE EmployeeID=?");

至此进入考核时段,教师失去添加、修改、删除资料的权限。教师功能的控制是在教师信息管理子系统所有的左侧页面进行了If判断处理。

考核页面是考核人员管理的核心部分。图2.10所示为考核教师的第一个页面——查询教师页面,支持多条件模糊查询,即管理员可以选择性的填写查询条件,也可以一项不写;同时有些条件并非要与已存在的一字不差,支持模糊查询,如民族、专业等。

提交页面后进入显示教师页面,如图2.11所示。此页面同样利用for循环显示数据,同时实现了多选按钮checkbox。由于显示的数据可能会比较多,所以采用了分页显示方法。分页功能主要由Page.java类的支持。

图10 查询教师页面图11 显示教师页面

利用javascript语言的一个函数将将当前页参数curPage传递到下一个页面;在下一个页面,根据传来的参数处理信息,最终完成分页结果。

选择要考核的教师提交页面,进入考核教师基本资料页面,通过头部菜单的选择可以任意查看本教师的基本资料、教学任务、论文著作和科研项目信息,此功能与教师信息管理的查看操作相似,在此不作详细说明。另外,通过头部菜单也可以进入添加本教师考核意见结果页面(AddAssessStep1.jsp)。

备份教师资料是为了将考核完的教师信息进行备份,留作底档,以防今后查用。备份教师资料也是先对教师进行查询,在显示教师页面(List_Backup.jsp)点击备份后,进入备份的第一步(BackupStep1.jsp),如图12所示,本页面将教师的所有信息显示出来。

图12 备份教师信息页面

若要将此页面打印出来,便可点击打印按钮,进入打印的设置中。此功能的实现需要javascript的print()函数。若要将教师信息在word中显示,或保存为word文档,则点击备份按钮,进入打开或保存word的对话框,如图2.13所示。此功能的实现利用了HTML支持word功能,只要将BackupStep2.jsp的头部改为<%@ page contentType="application/msword;charset=UTF-8" %>

<% response.setHeader("Content-disposition","inline; filename=1244578678.doc");%>便可实现。

word的排版,是先对未排版而保存的word文档进行排版修改,直到符合要求,之后将它另存为html格式,再将其代码取出并进行相应的动态修改存入BackupStep2.jsp即可。如图2.14所示。

图13 保存为word界面 (1)图14 保存为word界面 (2)

三、设计技术及开发环境

本系统采用B/S三层结构,它的运行环境分客户端、应用服务器端和数据库服务器端三部分,并综合运用JSP动态页面设计技术、Java Bean及Servlet实现动态交互功能,以Tomcat 5.5为应用服务器,以SQL Server 2005数据库管理系统作为强大完善的数据库支持环境。

所用的开发语言中,后台语言为Java,用来将一些功能方法打包;中层语言为JSP,控制前台与后台的联系;显示语言为HTML,用于网页显示。另外,还涉及到角本语言JavaScript,样式语言CSS等等。

四、结论

通过调研以及细致合理的规划分析,本系统采用模块化的开发机制,使用流行的系统开发技术,经过两个月的开发与设计,职校人事考核系统的用户身份验证模块、教师信息管理模块和考核人员管理模块已开发成为一个较完善的信息交互平台,初步具备实际使用的能力。

由于开发设计能力有限,开发经验不足,系统仍存在很多不足,离实际应用还有差距。系统后台管理方面需给予进一步重视。数据库设计方面,也存在一些后期发现的设计上的错误。用户输入容错设计方面需进一步加强。

本课题实用价值巨大。如果经过系统功能细节的进一步完善,数据库功能的进一步加强,它将会成为符合实际应用要求且功能强大的职校人事考核的交互平台,它的开发是有可观的前景的。

参考文献:

[1]杨珏.JSP网络开发技术[M].北京:清华大学出版社,2003.

[2](美)佩龙(Perrone).J2EE开发使用手册[M].北京:电子工业出版社,2004.

[3](美)伍特卡(Wutka,M.).JSP与Servlet程序设计使用专辑[M].北京:机械工业出版社,2002.

[4]黄理.JSP高级编程[M].北京:希望电子出版社,2003.

[5](美)里斯(Reese,G.). JDBC与Java数据库编程[M].北京:中国电力出版社,2002.

[6]王国辉,李文立,杨亮.JSP数据库系统开发完全手册[M].北京:人民邮电出版社,2006.

[7](美)乔普拉等.JSP程序设计[M].北京:人民邮电出版社,2006.

[8]吴其庆.JSP动态网站设计[M].北京:冶金工业出版社,2005.

猜你喜欢
页面资料数据库
刷新生活的页面
答案
Party Time
PAIRS & TWOS
JUST A THOUGHT
让Word同时拥有横向页和纵向页
数据库
数据库
数据库
数据库