胡耀文 阳海峰 广西科技大学
我国高校信息化历经20多年的发展,校园信息化建设逐步完善,教务管理系统、招生就业系统、教师办公自动化系统广泛应用于教学和管理中,比较常见,但学生请假管理系统还并不完善,不少高校还存在学生打印纸质假条,填写内容,找班主任、二级学院党委副书记、院长签字盖章,然后将假条交给辅导员备案的传统请假方式,存在耗时长、效率低、统计整理不便等的问题。为此,需要设计一套请假管理系统,能实现学生网上请假、班主任审核和销假、领导网上批假、管理员进行系统数据维护等操作。本文介绍了基于ASP.NET 三层技术开发的高校学生请假管理系统,能实现请假管理网络化、信息化,提高办事管理效率。
ASP.NET高校学生请假管理系统采用基于.NET Framework 4.0的 Visual Studio2010集成开发环境开发,后台程序使用C#语言编写,数据库使用SQL Server2008;使用JQuery EasyUI前端插件、My97DatePicker插件、富文本编辑器FreeTextBox,使用AJAX页面异步刷新技术。
(1)学生通过Web浏览器登录请假管理系统,填写请假单,输入请假时间、外出地点、请假原因、返校日期等信息,提交请假申请。
(2)班主任收到学生的请假申请后,根据学生填写的信息进行审批,若学生请假时间超过1天,审批通过后还需提交学院党委副书记审批,审批不通过,退回给学生,并填写意见。
(3)学院党委副书记收到学生的请假申请后,根据学生填写的信息和班主任意见进行审批,若学生请假时间超过3天,审批通过后还需要学院院长审批。
(4)学院院长收到学生的请假信息后,根据学生填写的信息和班主任意见、学院党委副书记意见进行审批,学生请假时间在7天内院长可以审批,超过7天直接联系学校教务部门办理请假手续。
系统有6类用户,包括学生、班主任、二级学院党委副书记、二级学院院长、二级学院管理员、系统管理员,系统主要功能模块如图一所示。
图一 高校学生请假管理系统主要功能模块结构图
二级学院管理员可以发布本学院的通知公告,对所在学院的系统用户数据进行处理,学校管理员负责系统数据定期备份和还原。
(1)学生用户表,存储系统学生用户信息,主要字段学号(主键)、姓名、学院、专业、班级、角色等。
(2)教师用户表,存储系统教师用户信息,包括班主任、二级学院党委副书记、二级学院院长、二级学院管理员、学校系统管理员;主要字段教师号(主键)、教师姓名、学院、班级、角色等。
(3)请假记录表,学生每次填写请假单,则产生一条请假信息记录,以供老师和领导审批;主要字段请假单号(主键)、学院、专业、班级、学号、姓名、联系电话、外出地点、请假开始日期请假截至日期、请假原因、家长意见、班主任意见、学院党委副书记意见、院长意见、销假日期、请假时间等。
(4)通知公告表,系统用户都可以查看放假文件、公告,主要字段通知公告编号、栏目、标题、内容、发布人、发布日期、浏览次数等。
登陆界面用于用户的身份验证、密码登陆,用户需要选择自己的身份,身份选定后,根据用户输入的用户名系统自行判定角色是班主任、副书记还是院长或管理员,为了防止不法分子利用程序暴力登陆或攻击设置验证码。
妥善处理浏览器对CSS和JS代码的兼容性需要开发人员长期的实践和经验积累,为了便于快速开发,涌现出不少前端UI框架,EasyUI就是一款轻量级的前端UI框架,C#与EasyUI结合简单易用,非常适合中小型系统。
界面分为上下左右中五个区域,顶部区域主要放置LOGO和登入登出信息,底部区域一般放置版权信息,左侧区域放置导航的图标,右侧区域显示时钟和当前用户在线情况等信息,中间区域是内容显示区域,每打开一个页面,在中部区域生成一个标签,使用JavaScript脚本生成,接收title和url两个参数,如标签页面已有,则转换成当前显示页面,若标签页面不存在,则生成新的标签页面,标签页面采用AJAX开发技术,只更新中部区域数据,加快Web程序的响应速度,提升用户体验。
请假表单中的请假理由输入直接使用富文本编辑器FreeTextBox插件,该插件体积小巧,支持从Visual Studio工具箱中直接拖拽使用。EasyUI中的DataGrid表格正常显示数据需要绑定Json数据源,通过一般处理程序从数据库获取到DataSet数据集合,再把DataSet转换为Json字符串,绑定到DataGrid上。
学生请假单中的请假理由通过富文本编辑器编辑,存入数据库中的数据是带有html标记的富文本,在进行Json转换时会出错,有2种解决方案,方案一是通过程序把富文本处理成不带html标记的文本再进行转换,方案二是Json转换程序在扫描到DataTable字段名为请假理由时,直接跳过。考虑到DataGrid表中不需要展示请假原因,本系统Json转换采用方案二。
班主任、学院党委副书记、院长登录系统后,可以查看审批权限范围内所在学院学生的请假申请,可以对请假记录进行查询。
学院管理员登录系统后,可以对所在二级学院学生用户的数据进行维护、发布通知公告。学校管理员登录系统后,可以对系统数据进行维护。
业务逻辑层主要对数据进行逻辑处理,例如本系统用户登录是否成功、密码是否错误、用户是否存在等判断,就在登录模块中的业务逻辑层进行处理。
数据访问层主要用于存放对数据库数据进行操作的代码,它封装了所有与数据库交互的操作,并为业务逻辑层提供数据服务。本系统使用ADO.NET技术访问数据库。
使用ASP.NET技术开发完成了高校学生请假管理系统,已经测试并部署完毕,在我校的学生管理中获得应用,取代了现有的纸质请假单,减少了学生请假耗费的时间,同时学生请假外出情况也能及时掌握,今后系统将进一步同微信小程序结合,学生使用手机进行请假信息填写,教师登录管理后台进行审批。