唐高芳
(北京师范大学珠海分校图书馆,广东 珠海 519085)
唐高芳 女,1980年生。工程硕士,馆员。研究方向:图书采访。
由于书商配书的滞后性,学校图书馆除了招标书商的订单外,还有一部分时效性较强的图书,比如推荐图书、畅销图书和考试类图书等,需要通过其他各种渠道购买,这部分图书数量也是比较大的,现有的图书采访系统没有分类管理图书的功能,正因为这样学校图书馆对这部分图书基本上还是由采购员用简单的报表方式自行登记。随着这类图书数据的增多,管理员不能及时查询这些图书的订购状况,读者的咨询难以在短时间内回复。为了更好地适应采访员和读者的需求,解决不规范管理中存在的许多弊端,就迫切需要一个自动化管理系统来弥补,以实用性为原则,既规范了管理也带来了方便。
特配图书管理系统主要是用来处理招标书商以外零散订购的图书,包括荐购急配图书、热点畅销图书、考试类图书等。为了解决已有系统的不足,本系统设计的整个过程都以方便、直观、灵活为原则。既要具有图书采访系统的基本功能,能够处理订单的上传、征订、验收、催到、经费统计等工作,又要能够提供各类图书信息的检索查询功能,方便用户很快查到图书是属于哪种类型的采购。由于图书信息内容庞杂无序,所以提供多途径检索和灵活的排序方式可以有效地提高操作效率。为了实现这一效果更加体现系统界面的人性化,本系统对以下内容进行了设置:
书目类型:推荐类、畅销热点类、考试类、其他类;
书目状态:全部、征订、发订、已到;
检索途径:ISBN、书名、作者、出版社;
排序方式:ISBN、类型、书名、出版时间;
显示方式:15 条/页、30 条/页、40 条/页、50 条/页。
作为一个集成的图书信息处理系统,通过对采购流程各功能的整合,从而达到高速检索信息、提高工作效率、降低管理成本的目的。
①书目上载
书目数据的导入:由于数据来源的零散性,数据可能是单条的书目信息也可能是书目文件,这样就要求系统既要支持单条数据录入也要支持数据文件的导入。由于图书信息量庞大,查重工作就显得非常重要,在导入文件的同时系统要能自动与系统数据进行查重、去重。为了能查询到采购图书的类型,不同类型的图书要能区别开,对于推荐的图书进行邮箱登记,以便后期邮件自动提醒功能的实现,批量导入的数据为了数据显示的正常要为用户提供文件导入模板,采访人员可以自行查看导入日志并能随时随地下载导入的文件。
②征订管理
图书征订:上传后的书目信息进入到选订模块,为了能对上传信息进行维护和管理,在这一模块里系统要能实现对上传数据的浏览、修改和删除功能。由于图书订购渠道的多样性,系统要能够进行一条或多条数据的征订操作,征订成功后书目状态自行更改,因为一个系统由多个采访员操作,显示最后操作人员的信息就能更好地明确责任关系。
③验收记到
验收签到:能够浏览所有发订、已到状态的数据,可进行一条数据或多条数据的登到,当所订图书已完全到货后状态自动变为已到状态,未完全登到的书目进入催发管理模块。
④催发管理
催发管理:能够浏览所有未到或未全到的书目信息,采访员可以选择是否催发,如果原来的书商没法配货,则可以更改购买途径另外购买。
⑤经费管理
经费管理:可以由管理员设定预算经费,对发订书目的价格进行累加形成已用经费,并显示可用经费的数值。
⑥系统维护
系统维护:包括用户参数、书商管理和数据整理。用户参数中可以进行增加和删除管理员的操作,并能为不同的用户分配各模块的使用权限;书商管理中能够增加、修改和删除书商信息;数据整理中能够按时间调出书目进行批清理,这样就避免了无用数据占用空间。
首先对系统进行一个角色定义,整个系统设置了两种类型的管理员,一种是系统管理员如图1所示,拥有系统所有模块的操作权限;另一种是普通管理员,如图2所示,拥有除了经费管理和系统维护之外的其他模块的操作权限。
图1 系统管理员
图2 普通管理员
数据流向如图3所示,两种书目数据来源经过上传后进入到征订管理模块,征订成功后的数据进入验收登到模块,经过筛选将未到或未全到的数据推送到催发管理模块,接下来进行催发或修改订购操作。
图3 数据流向
图4是系统的流程图,首先进行用户身份验证,如果确定是合法用户,则进入对应权限的主窗体。如果不是合法用户则返回到验证界面。
图4 系统流程
本系统采用的是基于JSP和Struts1的架构设计,根据其工作原理对文件夹组织结构设计如图5所示。
图5 文件夹组织结构
在Web应用启动时就会加载,初始化ActionServlet。ActionServlet从struts-config.xml文件中读取配置信息,把它们存放到各种配置对象中,当ActionServlet接收到一个客户请求时,将执行如下流程:
①检索和用户请求匹配的ActionMapping实例,如果不存在就返回请求路径无效信息;
②如果ActionForm实例不存在,就创建一个ActionForm对象,把客户提交的表单数据保存到ActionForm对象中;
③根据配置信息决定是否需要表单验证,如果需要验证,就调用ActionForm的validate()方法;
④如果ActionForm的validate()方法返回null或返回一个不包含ActionMessage的ActuibErrors对象,就表示表单验证成功;
⑤ActionServlet根据ActionMapping所包含的映射信息决定将请求转发给哪个Action,如果相应的Action实例不存在,就先创建这个实例,然后调用Action的execute()方法;
⑥Action的execute()方法返回一个ActionForward对象,ActionServlet再把客户请求转发给ActionForward对象指向的JSP组件;
⑦ActionForward对象指向JSP组件生成动态网页,返回给客户。
本系统的主要使用对象是图书采访人员,用户的需求体现在各种书目数据的操作方面,具体概括为书目上传、保存、修改、查询和经费统计这些方面,这就要求数据库结构能够支持采访员进行各种信息的输入和输出操作。同时系统还要实现分权管理的功能,根据所要实现的功能,数据库需要建立的表单如下:
tb_book(图书基本信息表):用来存储所有上传的图书信息,根据图书的特点,基本信息设置了图书编号、ISBN、题名、著作者、价格、出版时间、出版社、图书类型8个字段。
tb_file(文件导入信息表):用来存储所有上传文件的信息,包括上传编号、文件名、文件大小、上传时间、上传途径5个字段。
tb_manager(操作员信息表):用来保存操作人员的信息,包括操作员编号、用户名、密码3个字段。
tb_fund(经费管理信息表):用来保存经费的预算金额的数值。
tb_order(订单信息表):用来保存图书标准书号、书商名、订购数量、已到数量、发订时间、操作员用户名6个字段。
tb_purview(用户权限信息表):用来存储不同管理员的权限,包括管理员编号、管理员用户名以及在书目上载、征订管理、催发管理、验收签到、经费管理、系统维护模块的权限信息7个字段。
tb_recommender(推荐类信息表):用来保存推荐类图书的推荐人信息,包括推荐人名、推荐图书标准书号、邮箱地址3个字段。
tb_store(书商信息表):用来保存书商的信息,包括书商编号、书商名两个字段。
界面效果如图6,servlet文件Manager.java用来实现用户的登录认证功能,Manager.java 接收从 login.jsp 中 post过来的用户名和密码,并根据这两个参数判断数据库中是否有该用户的信息存在,若存在则显示登录成功后的不同界面,若不存在这个用户信息或密码错误则提示出错并返回登录认证页面。
图6 登录界面窗口
当成功登录后,进入主窗体,窗体效果如图7所示,界面中可以通过上端的菜单栏进入系统中的任意模块,并且提示用户进行更改密码的操作。
图7 主窗体界面
随着计算机技术的飞速发展,计算机在图书馆得到了广泛应用,图书馆的服务内容、服务方式和服务手段都发生了翻天覆地的变化。采访工作是图书馆工作的第一个环节,图书馆采访自动化管理是图书馆发展的大趋势。图书采访作为图书馆文献资源建设的一项基础性工作,其质量直接关系到后续工作的正常进行。
本系统是以图书采访工作的特点和需求为依据设计开发的。系统数据库使用的是MySQL,很好地保证了数据的有效性和完整性,提高了系统的安全等级;系统采用了B/S技术架构和JSP开发语言,以用户需求为核心,使程序开发的效率和可靠性得到了提高。系统经过反复的调试、测试及实际应用,表明系统界面友好,检索途径便捷,功能完善,能够满足采访人员日常工作的需求。系统的功能在使用过程中可以进一步研究和完善。
[1] 胡敏.图书管理系统的设计与实现[D].武汉:华中科技大学,2010.
[2] 曾云华,江伟.高校图书征订系统的研究与开发[J].图书馆学刊,2011(3).
[3] 吴莉.图书馆管理系统的设计和实现[D].上海:华东师范大学,2010.
[4] 李欣.高校图书馆购书系统的设计与实现[D].成都:电子科技大学,2009.
[5] 惠开敏.网上书店的设计与实现[D].济南:山东大学,2009.
[6] 曹玉平.网上荐购图书的探讨[J].图书馆学刊,2006(2).
[7] 张丽萍.高校图书馆网络采访工作的新认知[J].现代情报,2009(3).
[8] 陈靓.数字图书馆门户信息系统设计与实现[D].上海:华东师范大学,2009.
[9] RamakrishnanR,GehrkeJ.Database Management Systems.McGraw-Hill,2006(2).