杨公义,王胜清
(北京大学 教师教学发展中心,北京100871)
2015年北京大学社会科学部委托项目组开发了北京大学人文社会科学科研管理信息系统(网址为http://skb.pku.edu.cn/,以下简称“社科系统”)。
社科系统的设计目标在于推动全校文科学科建设与改革;推进文科科研机构和研究基地建设与发展;管理文科各级各类科研项目;管理各级各类文科优秀科研成果奖励的申报;统计全校文科科研项目与成果;推进全校文科科学研究工作的国内外交流与合作;管理学校人文科学和社会科学领域学科建设和科学研究工作。
社科系统的功能集通知管理、新闻管理、学术交流管理、部门管理、服务管理、科研管理、项目管理、基地管理、机构管理、平台管理、奖项管理、成果管理、专家人才管理为一体。
社科系统的用户管理用例如图1所示,用户分为四类共有14个用户。超级管理员1个、栏目审核员6个、栏目操作员6个、前台访客1个,每个栏目审核员和栏目操作员分别管理相应的栏目。这四类用户的权限是递减的。超级管理员管理栏目审核员,栏目审核员管理栏目操作员。用户管理的功能包括新增用户、编辑用户、删除用户、查询用户、分页浏览用户。[1]
图1 社科系统的用户管理用例
社科系统的信息管理用例如图2所示,前台访客只能访问社科系统中已经审核发布的信息,对于未经审核的信息只能被登录用户访问。社科系统的登录用户可以进行的共同用例包括登录、个人资料编辑、我的云盘管理。[2]
超级管理员、栏目审核员、栏目操作员所能进行的共同用例为信息管理,区别在于他们所管理的模块不同,不同模块所能进行的操作不同。信息管理用例的共同操作包括:新增、编辑、删除、查询、分页浏览。每个栏目审核员比相应的栏目操作员多的权限是“推荐某条信息进入首页某个栏目”和“审核某条信息能在栏目中显示”。超级管理员在信息管理用例中能管理所有模块,并且在每个模块中比栏目审核员增加的权限是“首页与系统管理”和“批准某条信息进入首页某个栏目”。[3]
图2 社科系统的信息管理用例
社科系统的功能模块如图3左侧所示。在实际开发中把这些功能模块分成六类,六类功能模块由图1中的六类栏目审核员和六类栏目操作员相应进行管理。[4]
图3 社科系统的功能模块和信息流程
社科系统的信息流程如图3右侧所示。栏目操作员登录系统后,可以新增、编辑、修改、删除所管理栏目中的信息,这时信息只有登录用户才能查看。栏目审核员登录系统后,对信息进行审核、上下移动调整,只有审核通过的信息才能在社科系统的相应栏目中显示,但这里还不能在首页模块中显示。栏目审核员可以推荐某条信息进入首页某个模块,超级管理员登录后批准某条被推荐的信息进入首页某个模块,对于审核通过的信息,会显示在首页的某个模块中。[5]
社科系统的E-R图如图4所示。
图4 社科系统的E-R图
用户管理的E-R图如图4左侧所示。超级管理员、栏目审核员、栏目操作员这三个实体逐级进行管理,并共用一个用户实体。用户表的属性包括:用户ID、用户名、密码、真实姓名、创建时间、创建者用户编号、创建者院系编号、创建者院系名称、角色、学期、院系编号、密码遗失提示问题、提示问题答案、联系电话、电子邮箱、二级院系编号、二级院系名称、审核状态(待审核、审核通过、审核未过)。
信息管理的E-R图如图4右侧所示。系统中所有的信息模块分为七类,超级管理员能管理所有模块。六类栏目审核员和栏目操作员各自管理自身账户有权管理的多个模块。所有模块的属性大同小异,共同的属性包括:标题、时间、内容、创建者用户编号、摘要、关键词1、关键词2、审核、审核意见建议、首页模块、点标题开什么、批准上主页、附图。这些属性有几个需要说明。审核下拉选项为:待审核、审核通过、审核未过。当下拉框中选择审核未过时,需要在审核意见建议元数据中输入理由。首页模块下拉框用于推荐本条信息到首页的某个模块中。批准上主页下拉框中,可以允许所推荐的信息在首页的某个模块中显示。点开标题,下拉框的内容为:内容、附件、标题URL;各下拉项的含义为:内容表示点击标题时显示的网页中的内容来自上述内容元数据,附件表示点击标题时超级链接到上述所上传的附图,标题URL表示点击标题时超级链接到一个用户输入的URL。
社科系统的前台首页如图5所示。图5顶部是网站banner,然后是一级导航,再下面是方形首页slideshow和长形首页slideshow,然后是学术交流、通知公告、专题链接、社科新闻、版权所有。其中一级导航的详细内容已经在图3中说明。
图5 社科系统前台首页
为了显示上的美观,标题的显示只指定字数之内的信息,超出字数的标题部分以“…”代替。关键代码如下:
在图5中单击某个模块的红底白字的模块名称,如单击“科研项目”进入图6所示的前台信息二级浏览页。在图6左侧以树状列表的形式显示了“科研项目”的二级栏目和三级栏目。在图6右侧的列表页中有功能全面的分页功能。在图6的右下侧是常用文件的标题和链接。图6中某一模块的信息是显示在右上侧的“普通内容”中,还是右下侧的“常用文件”中,程序是根据图10中的“栏目内容”字段的下拉项是“普通内容”还是“常用文件”决定的。
图6 社科系统前台信息二级浏览页
图7 社科系统前台三级内容页
在图6右侧列表页面中单击某一行的标题,进入图7三级内容页。在图7中显示了某条信息的标题、浏览次数、更新时间、内容、上一篇和下一篇的标题和链接、相关文章的标题和链接、字体加大、字体减小、打印本页、关闭窗口的功能链接。如果页面内容较多,在页面的右下角显示了返回顶部的图标和链接。
社科系统后台管理的信息浏览页根据用户的级别有所不同,超级管理员的后台管理如图8所示。图8左侧树形菜单中显示的栏目最全,图8右侧信息浏览页中显示的列最全。栏目审核员的后台管理如图9所示,图9比图8的左侧少了很多模块。图9比图8的右侧少了“批准上首页”这一列。栏目操作员的后台管理和图9类似,比图9少了“批准”这一列。在信息浏览页中可以新增、编辑、删除、审核、预览、上移下移、分页浏览信息,分页功能包括设置页面大小、跳转到某页、第一页、下页、上页、末页。在信息浏览页中单击某条信息右侧的编辑按钮进入如图10所示以纵向视图编辑各个字段。信息浏览页简要显示几个最常用的元数据,信息编辑中显示该模块的全部元数据。
图8 超级管理员账户的信息浏览页
图9 科研项目审核员账户的信息浏览页
社科系统后台管理的信息编辑页,如图10所示。和信息浏览页类似,信息编辑页也是根据用户的级别不同在图10中显示不同的字段。
图10 社科系统后台信息编辑页
图8所示是超级管理员登录后的效果,超级管理员能管理所有模块,左侧树形菜单中显示了所有模块。图9所示是科研项目审核员账户登录后的效果。科研项目审核员只能管理科研项目大类中的5个子模块,如图9左侧树形菜单所示。权限控制机制如下:
超级管理员的用户名为aq,科研项目模块的栏目操作员用户名为aq2kyxm,栏目审核员的用户名为aq1kyxm。程序判断如果用户名为aq,则该用户为超级管理员,该用户能管理所有的模块,并且在每个模块的浏览页中的每行信息显示一个按钮“批准某条信息进入首页某个栏目”。对于栏目审核员aq1kyxm和栏目操作员aq2kyxm,用户名的字母中大部分是相同的,只有中间夹杂的数字不同,程序中利用正则表达式进行判断,对用户名以正则表达式“aq\d{1}kyxm”进行匹配,如果匹配成功则授予管理相应的模块权限。
图9是社科系统前台三级内容页。页面中显示了字体加大、字体减小、打印本页、关闭窗口的功能链接。打印功能的实现代码为<a href="javascript:window.print()">打印本页</a>。关闭窗口的实现代码为<a href="javascript:window.close();">关闭窗口</a>。字体加大的实现代码为<a href="javascript:fontSizeChange(+2)">加大</a>。字体减小的实现代码为<a href="javascript:font-SizeChange(-2)">减小</a>。fontSizeChange 函数的实现代码为:<script language="JavaScript"type="text/javascript">
function fontSizeChange(num){
var thisEle=$("#Zoom").find("p:eq(0)").css("font-size");//获取id="Zoom"里面的第一个p标签的font-size值。
var textFontSize=parseFloat(thisEle,10);//函数可解析一个字符串,并返回一个10进制浮点数,10就表示转为10进制。
北大社科系统将人文社会科学科研管理工作和流程信息化,提升了管理水平和办事效率,促进了科学研究,探索出了人文社会科学科研管理的路径。