基于工作流的期刊在线投稿系统的设计与实现
2015-04-16成亚玲杨学文
成亚玲,杜 芳,杨学文
(湖南工业职业技术学院,湖南 长沙,410208)
引言
网络期刊在线投稿系统较之传统的人工投稿审稿模式具有较强的实用性和灵活性,可以有效缩短出版周期,提高审稿效率,提升稿件质量,节约编审成本,因而成为当下许多期刊杂志社特别是高校学报编辑部的主流无纸化办公系统,并被应用到稿件的处理过程中。然而,目前许多在线投稿系统仅满足应付需求固定、流程固定的稿件处理功能,而无法满足期刊论文处理方案实时变更以及编审各部门内部大量文档信息交互的新要求。因而,开发具有通用性和灵活性的基于工作流的期刊在线投稿系统具有更加实际的应用价值,可以高效整合编审业务流程,加快处理速度,提高工作效率。
1 系统功能及架构
1.1 系统功能
根据期刊在线投稿涉及到的用户对象和流程,系统具有作者、责任编辑、专家、主编等基础用户信息管理功能;与稿件处理相关的投稿、查稿、审稿、定稿、退稿、版面安排和系统维护等核心功能。下面用UML顺序图来体现系统的功能实现及各用户之间的动态交互。如图1所示:
图1 学术期刊在线投稿系统顺序图
作者将新稿件提交给责任编辑,责任编辑负责对稿件进行复制比等资格审查,对不合格稿件发送消息给作者,要求修改或退稿,对合格稿件送专家审查,专家意见反馈给责任编辑,责任编辑将修改或退稿意见反馈作者,作者修改后,重新提交给责任编辑审查,再由责任编辑提交主编,由主编最终决定稿件的录用与否,责任编辑最终向作者发出录用函或退稿通知。
1.2 系统架构
根据系统涉及的作者、责任编辑、专家、主编4类用户,划分为4个子系统,各子系统的功能如图2所示。
图2 基于工作流的期刊在线投稿系统功能划分
系统提供单一的登录入口,根据用户的不同身份及账号信息,进入各子系统,完成特定的功能。作者子系统主要完成在线投稿、查看已投稿件、上传返修稿件、修改注册信息和登录密码、向各责任编辑发送消息的管理。作者只有在注册后,才能登录系统完成预定的功能。责任编辑子系统主要完成初审稿件、复审稿件、查看稿件信息、修改注册信息和登录密码,给作者、审稿专家以及主编进行消息交互等功能。专家子系统主要完成审核稿件、查看已审稿件、修改注册信息和登录密码、给责任编辑发送消息等功能。主编子系统主要完成初审稿件、复审稿件、安排合格稿件版面信息、查看所有来稿信息、修改登录密码、发送消息、人员管理和系统设置等功能。
2 系统设计
2.1 开发平台
系统采用B/S三层架构,利用IIS6.0搭建Web服务器,服务器端采用ASP技术,数据存储采用MicroSoft企业级数据库SQL Server 2000。
2.2 数据存储设计
根据系统的需求分析和系统架构,采用文件系统和数据库系统存储相结合的存储方式,数据库的搭建主要包括以下几个表:
(1)用户表
主要存储作者、责任编辑、专家、主编四类用户的登录名、密码、用户真实姓名、性别、学历、专业方向、职称、职业、工作单位、联系电话、通讯地址、个人简介、系统身份等基本信息。其中系统身份状态用不同的数字标记,并加以区分,如0为主编,1为专家,2为责任编辑,3为作者。
(2)稿件表
主要存储稿件编号、投稿时间、中文标题、英文标题、中文摘要、英文摘要、中文关键词、英文关键词、字数、投稿栏目、附件存储位置、通讯作者、稿件作者、稿件状态、编辑部意见等核心信息。其中稿件状态字段用不同的数字标记,并加以区分,如0为等待审核,1为专家审核,2为编辑退回返修,3为编辑退稿,4为主编审核,5为主编退回返修,6为主编退稿,7为审核通过,8为主编复审;稿件附件的存储采用文件存储方式,而只把保存的路径和对应的文件名信息存储在数据库中。
(3)专家审核表
主要存储稿件编号,审稿专家,专家意见,完审日期等信息。
(4)责任编辑审核表
主要存储稿件编号,初审意见,复审意见,初审日期,复审日期等信息。
(5)稿件状态表
主要存储状态编号和对应的状态名称信息。
(6)版面信息表
主要存储稿件编号,发表期次,版面费,缴费状态等核心信息。
(7)站内消息表
主要存储消息编号,写信人,收信人,时间,标题,内容,状态等信息。
(8)栏目信息表
主要存储期刊栏目编号,栏目名称,栏目专家等信息。
3 系统工作流分析
系统主要包括在线投稿工作流、在线处理稿件工作流和在线审稿工作流,工作流以稿件为中心,在投稿用户、责任编辑用户、专家用户和主编用户之间进行传递,并进行稿件状态的转换。在线投稿工作流、在线处理稿件工作流、在线审稿工作流分别如图3、图4、图 5所示。
图3 在线投稿工作流
图4 在线处理稿件工作流
图5 在线审稿工作流
4 系统关键功能实现
4.1 投稿功能
作者填写稿件信息,页面通过form表单与数据库进行交互。
部分代码如下:
if(true)
{rs.addnew;
rs("txt Title")=request.form("doc Title")//中文标题写入数据库
rs("txt title EN")=request.form("doc Title En")//英文标题写入数据库
rs("txt Abstract")=request.form("doc Abstract")//中文摘要写入数据库
rs("txt Abstract EN")=request.form("doc Abstract En")//英文摘要写入数据库
rs("txt Keyword")=request.form("doc Keywords")//中文关键字写入数据库
rs("txt Keyword EN")=request.form("doc Keywords En")//英文摘要写入数据库
rs("txt Letters")=request.form("doc Letters")//字数统计写入数据库
rs("txt Author Info")=request.form("doc Author")//作者信息写入数据库
rs("ddd lColumn")=request.form("doc Column ID")//投稿栏目写入数据库
Response.Redirect("compile_up_upload.asp")
rs.update;
}
4.2 稿件上传功能
作者进行稿件上传时,程序对上传文件的类型、大小、上传所用时间等信息进行记录和拦截。部分代码如下:
Private Sub Class_Initialize
Max Size=3000*1024
File Type="jpg/gif/zip/rar/txt/xls/doc/htm/mp3/wma/b mp"//约束上传文件类型
Save Path="../10jjy-XTDATA-0099/Up News/files"//上传地址
Save Name=""
Auto Save=true
Set Form D=Server.CreateObject("Scripting.Dictionary")
Form D.CompareMode=1
End Sub
……
if Item Stream.Size<>0 then
Dim Source File,Target File
p Temp=52+Len(Item Name)
Source File=Mid(Item Info,pTemp,Instr(p Temp,Item-Info,"""")-pTemp)
Form D.Add Item Name&"_Type",Mid(Item Info,Instr(p Temp,Item Info,"Content-Type:")+14)
Form D.Add Item Name&"_Name",Mid(Source File,Instr Rev(Source File,"")+1)
Form D.Add Item Name&"_Path",Left(Source File,Instr Rev(Source File,""))
if ucase(right(Mid(Source File,Instr Rev(Source File,"")+1),4))=".ASP"or ucase(right(Mid(SourceFile,Instr Rev(Source File,"")+1),4))=".EXE"then
response.Write("")
response.End
end if
5 结语
最后,按照注册、登陆、投稿、审稿的流程对系统进行了回归测试,实践证明,以工作流为基础设计实现的学术期刊在线投稿系统具有较强的实用性和灵活性,且具有良好的扩展性和可维护性,有较好的推广价值。
[1] 袁玉花.中国图书馆学情报学核心期刊在线投稿系统调查[J] .农业图书情报学刊,2012,24(1):172-174.
[2] 邓薇,张红林.学术论文稿件处理与管理的网络应用[J] .武汉科技大学学报,2009,8(5):144-152.