1ASP.NET图书馆管理系统文档1.1开发背景随着现代图书流通市场竞争的愈演愈烈,如何以一种新的管理方式提高图书流通信息的反馈速度、降低库存占用、加快资金周转、提高工作效率,已经成为图书企业提高竞争力的关键。信息技术的发展给图书企业的管理带来了新的力量,通过图书馆管理系统对图书企业经营运作的全程管理,不仅使企业摆脱了人工管理所固有的一系列弊端和问题,更重要的是提高了工作效率,进而提高了企业的经济效益。通过管理系统对企业的管理,为企业的发展提供了大量的、关键性的数据,企业根据这些数据,可以及时作出决策,进行调整,使之能够更好地把握市场的销售规律,适应市场变化,在激烈的行业竞争中赢得一席之地。1.2需求分析长期以来,人们使用传统的人工方式管理图书馆的日常业务,其操作流程比较繁琐。在借书时,读者首先将要借的书和借阅证交给工作人员,工作人员将每本书的信息卡片和读者的借阅证放在一个小格栏里,然后在借阅证和每本书贴的借阅条上填写借阅信息。在还书时,读者首先将要还的书交给工作人员,工作人员根据图书信息找到相应的书卡和借阅证,并填写相应的还书信息。从上述描述中可以发现,传统的手工流程存在着种种不足。首先处理借书、还书业务流程的效率很低;其次处理能力比较低,一段时间内,所能服务的读者人数只能是很有限的。为此,图书信息管理系统需要为企业解决上述问题,提供快速的图书信息检索功能及快捷的图书借阅、归还流程。1.3系统设计1.3.1系统目标根据图书馆日常图书管理工作的需求和图书借阅的管理流程,该系统实施后,应达到以下目标。●界面设计友好、美观,数据存储安全、可靠。●基本信息设置保证图书信息和读者信息的分类管理。●强大的查询功能,保证数据查询的灵活性。●实现对图书借阅、续借、归还过程的全程信息服务跟踪。●设置读者借阅和图书借阅排行榜,为图书馆管理提供真实的数据信息。●提供借阅到期提醒功能,使管理者可以及时了解到期的图书借阅信息。●提供管理员修改自己密码的功能,保证系统的安全性。●提供灵活、方便的权限设置功能,使整个系统的管理分工明确。●采用人机对话的操作方式,方便管理员的日常操作。●系统要最大限度地实现易维护性和易操作性。1.3.2业务流程图图书馆管理系统的系统流程如图1.1所示。读者图书借阅图书续借图书归还管理员管理图书档案信息图书档案管理读者档案信息读者档案获取读者信息根据读者信息获取借阅图书信息归还相关图书图书归还档案图书借阅档案完成图书续借完成图书借阅2图1.1系统流程图1.3.3系统功能结构根据图书馆管理系统的特点,可以将其分为系统设置、读者管理、图书管理、图书借还、系统查询等部分,其中各个部分及其包括的具体功能模块如图1.2所示。图书馆管理系统系统设置读者管理图书管理图书借还系统查询图书馆信息管理员设置书架设置读者类型管理读者档案管理图书类型管理图书档案管理图书借阅图书续借图书归还图书档案查询图书借阅查询更改口令退出系统图1.2系统功能结构图1.3.4系统预览为使读者对图书馆管理系统有初步的了解,下面给出系统中的几个页面。系统登录页面如图1.3所示,系统主页如图1.4所示。图书借阅页面如图1.5所示,图书归还页面如图1.6所示。图书管理页面如图1.7所示,图书信息打印页面如图1.8所示。图1.3系统登录页面图1.4系统主页3图1.5图书借阅页面图1.6图书归还页面4图1.7图书管理页面图1.8图书信息打印页面1.3.5构建开发环境1.网站开发环境网站开发环境:MicrosoftVisualStudio2008集成开发环境。网站开发语言:ASP.NET+C#。网站后台数据库:SQLServer2005。开发环境运行平台:WindowsXP(SP2)/Windows2000(SP4)/WindowsServer2003(SP1)2.服务器端操作系统:WindowsServer2003(SP1)。Web服务器:Internet信息服务管理器。数据库服务器:SQLServer2005。浏览器:速达。网站服务器运行环境:Microsoft.NETFrameworkSDKv2.0。3.客户端浏览器:速达。分辨率:最佳效果:1024x768像素。1.3.6数据库设计本系统采用SQLServer2005数据库,名称为:db_tsrj,其中包含9张表。下面分别给出数据表概要说明、数据表E-R图及主要数据表的结构。1.数据库概要说明从读者角度出发,为了使读者对本系统的数据库中的数据表有一个更清晰的认识,我们设计了一个数据表树形结构图,如图1所示,其中包含系统所有数据表。图1.9数据库并结构52.数据库概要设计通过对本系统的需求分析、系统流程设计以及系统功能结构的确定,规划出系统中使用的数据库实体对象,具体说明如下。只有系统分配的用户才可以操作图书馆管理系统,而用户的权限又各不相同。管理员权限设置信息实体E-R图如图1.10所示。管理员权限设置系统查询权限图书借还权限图书管理权限管理员名称权限系统设置权限读者管理权限图1.10管理员权限设置信息实体E-R图图书借阅信息实体,用于存储所有图书借阅情况的信息,以准确地记录每本图书的借阅情况。图书借阅信息实体E-R图如图1.11所示。图书馆对图书的分类,通常是将不同类型的图书分别放置在相应类型的书架上。书架信息实体,用于存储图书馆中所有的书架信息。书架信息实体ER图如图1.12所示。图1.11图书借阅信息实体E-R图6图1.12书架信息实体E-R图不同的书,会有不同的图书信息。对这些信息进行详细的记录,方便了图书的分类和查询。图书信息实体,用于存储所有图书的相关信息。图书信息实体E-R图如图1.13所示。图1.13图书信息实体E-R图图书馆中会有不同类型的图书,为了避免图书归类发生混乱,必须建立一个图书类型信息实体,用于存储图书的类型信息。图书类型信息实体E-R图如图1.14所示。图书类型信息类型编号类型编号可借天数图1.14图书类型信息实体E-R图每个事物都会有其自身的历史背景,图书馆也不例外。为了记录图书馆的历史背景及其相关的信息,需要建立一个图书馆信息实体,用于存储与图书馆有关的信息。图书馆信息实体E-R图如图1.15所示。图书馆信息建馆时间网址电子邮件图书馆名称馆长名称联系电话备注联系地址图1.15图书馆信息实体E-R图当有读者借阅图书时,要对读者的各项信息进行记录,以方便归还图书和已借阅图书的历史查询。读者信息实体,用于存储所有借阅图书的读者信息。读者信息实体E-R图如图1.16所示。7读者信息电子邮件证件类型读者条形码读者名称读者性别备注读者类型证件号码联系电话图1.16读者信息实体E-R图在读者群体中,会有不同的分类,例如借阅图书的读者可能是教师、学生和普通市民等,所以对读者人群进行有效的分类是至关重要的。读者类型信息实体,用于存储读者的类型信息。读者类型信息实体E-R图如图1.17所示。读者类型信息类型编号类型名称可借数量图1.17读者类型信息实体E-R图当管理员登录图书馆管理系统时,需要通过登录窗口验证成功后才能进入系统主页。管理员信息实体,用于存储管理员的登录名称和登录密码。管理员信息信息实体E-R图如图1.18所示。管理员信息管理员编号管理员名称管理员密码图1.18管理员信息信息实体E-R图3.数据库逻辑结构设计在设计完数据库实体E-R图之后,需要根据实体E-R图设计数据表结构。下面给出主要的数据表的数据结构和用途。●tb_admSet(管理员权限设置表)。表tb_admSet用于保存与管理员设置相关的信息,该表的结构如表1.1所示。表1.1管理员权限设置表字段名数据类型长度是否关键描述userNamevarchar80否管理员名称systemSetbit1否系统设置readerManagebit1否读者管理bookManagebit1否图书管理bookBorrowbit1否图书借还systemSearchbit1否系统查询●tb_bookBorrow(图书借阅表)。8表tb_bookBorrow用于保存所有已借阅图书的信息,该表的结构如表1.2所示。表1.2图书借阅表字段名数据类型长度是否主键描述bookBarcodevarchar50否图书条形码bookNamevarchar20否图书名称borrowTimedatetime8否借阅日期returnTimedatetime8否应还日期readerBarCodevarchar50否读者条形码readerTimevarchar20否读者姓名isReturnbit1否是否归还●tb_bookcase(书架信息表)。表tb_bookcase用于保存书架的详细信息,该表的结构如表1.3所示。字段名数据类型长度是否主键描述bookcaseIDint4是书架编号bookcaseNamevarchar80否书架名称●tb_bookInfo(图书信息表)。表tb_bookInfo用于保存与图书相关的所有信息,该表的结构如表1.4所示。字段名数据类型长度是否主键描述bookBarCodevarchar100是图书条形码bookNamevarchar100否图书名称bookTypeint4否图书类型bookcaseint4否书架类型bookConcernvarchar100否出版社名称authorvarchar80否作者名称pricemoney8否图书价格borrowSumint4否借阅次数●tb_bookType(图书类型信息表)。表tb_bookType用于保存图书类型信息,该表的结构如表1.5所示。字段名数据类型长度是否主键描述typeIDint4否图书类型编号typeNamevarchar5否类型名称borrowDayint10否可借天数●tb_library(图书馆信息表)。表tb_library用于保存与图书馆相关的信息,该表的结构如表1.6所示。字段名数据类型长度是否主键描述libraryNamevarchar80否图书馆名称curatorvarchar80否馆长名称telvarchar100否联系电话addressvarchar200否联系地址emailvarchar100否电子邮件netvarchar200否网址upbuildTimedatetime8否建管时间remarkvarchar500否备注9●tb_readerInfo(读者信息表)。表tb_readerInfo用于保存所有读者信息,该表的结构如表1.7所示。字段名数据类型长度是否主键描述readerBarCodevarchar50否读者条形码readerNamevarchar50否读者名称sexchar10否读者性别readerTypevarchar50否读者类型certificateTypevarchar50否证件类型certificatevarchar50否证件号码telvarchar50否联系电话emailvarchar50否电子邮件remarkvarchar500否备注●tb_readerType(读者类型信息表)。表tb_readerType用于保存所有读者类型信息,该表的结构如表1.8所示。字段名数据类型长度是否主键描述idint4是类型编号typevarchar50否类型名称numvarchar50否可借数量●tb_user(管理员信息表)。表tb_user用于保存所有管理员信息,该表的结构如表1.9所示。字段名数据类型长度是否主键描述userIdint4是管理员编号userNamevarchar50否管理员名称userPwdvarchar50否管理员密码1.3.7文件夹组织机构为了便于读者对本网站的学习,在此将网站文件的组织结构展示出来,如图1.19所示。10图1.19系统文件组织结构图1.4公共类设计在开发过程中,经常会用到一些公共模块,如数据库连接及操作的类、字符串处理的类等,因此,在开发系统前首先需要设计这些公共模块。下面将具体介绍图书馆管理系统中所需要的数据库操作类。数据库操作类用来完成数据库的连接操作,以及数据库的查询、添加、删除和修改操作。将