




已阅读5页,还剩22页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
此文档收集于网络,如有侵权,请联系网站删除图书管理系统1课程设计的目的随着社会的发展,每天都有数以十万、百万计的图书/期刊问世,图书馆的图书和期刊也在迅速的增加。面对这些数量庞大的图书管理,需要处理复杂的读者信息,频繁的借还图书信息,图书增减信息,如果仍然采用传统的人工管理方法,既费时费力,更容易出错。信息技术的发展给图书的管理带来了新的机遇。使用图书管理系统对图书馆进行管理,这不仅解决了一系列的弊端和问题,更加提高了工作效率。推行图书管理自动化的基本目标,在於把图书馆由图书管理的农业社会带入图书馆的工业社会,并以创新具工业化作业精神的服务制度,来满足读者的资讯需求。图书馆唯有迈向自动化,才能面对资讯消费者新奥的需求。 图书馆自动化的主要目标,在於加强服务而不在於精简人力。换言之,其 效益不在於节省现有的人力、物力,而在於提供许多尚未自动化作业时,所无法提供之服务,期望以最快的速度将资讯传递给读者做最适当之运用。 以信息化高效管理代替旧的手工作坊。开发图书借阅系统,进一步提高办学效益和现代化信息管理水平。建立学院数字化WEB图书管理系统,为广大师生提供方便、快捷的资料信息获取渠道和手段。减轻图书管理员的负担,节省人力物力开支。本课题设计并实现了基于Web的图书馆管理系统,该系统采用现今比较流行的ASP.NET语言,结合SQL Server数据库,实现了图书的借阅、查询、管理等基本功能。系统不仅维护方便,节省了图书馆的资源,方便图书馆进行图书管理,同时,用户也能够更容易更直观的查询书籍、管理藏书,使借书、还书、查书的过程大大简化,更加的方便和容易。总之,建立图书馆的计算机自动化管理系统,不但可以大大提高图书馆图书流通率,而且推动了社会文化生活的进步。2设计方案论证2.1 系统实现功能主要工作是实现了图书信息功能,图书借还功能等。图书信息功能是实现了图书的数字管理,能方便管理员快速查看图书信息;借书功能,用户可以通过此功能选择是否借出检索的书籍;还书功能,读者可以查看自己所借书籍信息;管理员可以查看借书还书历史和违规书籍信息;查看书籍具体信息,管理员可以查看书籍的具体信息以及在图书馆的存储状态。2.2系统分析2.2.1系统开发的可行性分析可行性分析(Feasibility Analysis)也称为可行性研究,是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。为了确定开发具有可行性,对本系统主要进行了以下四个方面的分析。(1) 经济可行性。经济可行性主要是对项目的经济效益进行评价。可利用现有的服务器,装上IIS服务器软件,即可成为一台IIS服务器,客户只要连上INTERNET利用自己的机器即可使用系统,对企业不构成经济的负担,系统成本主要集中在系统软件的开发上,当系统投入运行后可以为企事业单位节约大量的人力,物力。所带来的效益远远大于系统软件的开发成本。在经济上完全可行。本系统对系统开发者来说并不需要太高的成本支出,只是对系统的管理者付出管理报酬即可,而且开发周期不需要太长,节省了人力、物力、财力资源,所以本系统在经济上是可行的。(2) 技术上的可行性。技术上的可行性分析主要是分析技术条件能否顺利完成开发工作,硬、软件能否满足开发者的需要等。在软件方面,本系统采用的是ASP进行开发,前台网页设计使用的是Microsoft Visual Studio 2010,而数据库系统采用的是Microsoft SQL 2005。通过分析,在软、硬件方面现有工具与环境完全可以实现系统的开发,因此具有技术上的可行性。(3) 时机可行性。时机可行性是分析系统开发时机是否成熟。目前越来越多的应用程序都已经是转向基于Web的开发,并且Internet已经广泛使用,因此系统的设计具有时机可行性。(4)法律可行性。本系统开发不会侵犯他人、集体或国家利益,不存在侵权等问题,不违反国家法律,因此具有法律可行性。综上所述,本系统开发目标已明确,在技术和经济等方面具备可行性,并且投入少、见效快,因此系统的开发是完全可行的。2.2.2需求分析长期以来,人们使用传统的人工方式管理图书馆的日常业务,其操作流程比较繁琐。在借书时,读者首先将要借的书和借阅证交给工作人员,工作人员然后将每本书的信息卡片和读者的借阅证放在一个小格栏里,最后在借阅证和每本书贴的借阅条上填写借阅信息。在还书时,读者首先将要还的书交给工作人员,工作人员然后根据图书信息找到相应的书卡和借阅证,并填写相应的还书信息,了解用户的明确需求,WEB图书管理系统需要满足来自三方面的需求,这三个方面分别是图书借阅者、图书馆工作人员和图书馆管理人员。图书借阅者的需求是查询图书馆所存的图书、个人借阅情况及个人信息的修改;图书馆工作人员对图书借阅者的借阅及还书要求进行操作,同时形成借书或还书报表给借阅者查看确认;图书馆管理人员的功能最为复杂,包括对工作人员、图书借阅者、图书进行管理和维护,及系统状态的查看、维护并生成催还图书报表。图书借阅者可直接查看图书馆图书情况,如果图书借阅者根据本人借书证号和密码登录系统,还可以进行本人借书情况的查询和维护部分个人信息。一般情况下,图书借阅者只应该查询和维护本人的借书情况和个人信息,若查询和维护其他借阅者的借书情况和个人信息,就要知道其他图书借阅者的借书证号和密码。这些是很难得到的,特别是密码,所以不但满足了图书借阅者的要求,还保护了图书借阅者的个人隐私。图书馆工作人员有修改图书借阅者借书和还书记录的权限,所以需对工作人员登陆本模块进行更多的考虑。在此模块中,图书馆工作人员可以为图书借阅者加入借书记录或是还书记录,并打印生成相应的报表给用户查看和确认。图书馆管理人员功能的信息量大,数据安全性和保密性要求最高。本功能实现对图书信息、借阅者信息、总体借阅情况信息的管理和统计、工作人员和管理人员信息查看及维护。图书馆管理员可以浏览、查询、添加、删除、修改、统计图书的基本信息;浏览、查询、统计、添加、删除和修改图书借阅者的基本信息,浏览、查询、统计图书馆的借阅信息,但不能添加、删除和修改借阅信息,这部分功能应该由图书馆工作人员执行,但是,删除某条图书借阅者基本信息记录时,应实现对该图书借阅者借阅记录的级联删除。并且还应具有生成催还图书报表,并打印输出的功能。2.3 数据库设计(1)管理员权限设置表tb_admSet,如表1所示。 只有系统分配的用户才能操作图书馆管理系统,而用户的权限又各不相同。表1 管理员权限设置表字段名数据类型长度主键否描述userNameVarchar80否管理员名称systemSetbit1否系统设置readerManagebit1否读者管理bookManagebit1否图书管理bookBorrowbit1否图书借还systemSearchbit1否系统查询(2)图书借阅表tb_bookBorrow,如表2所示。图书借阅信息实体,用于存储所有图书借阅情况的信息,以准确地记录每本图书的借阅信息。表2 图书借阅表字段名数据类型长度主键否描述bookBarcodevarchar50否图书条形码bookNamevarchar20否图书名称borrowTimedatetime8否借阅日期returnTimedatetime8否应还日期readerBarCodevarchar50否读者条形码readerNamevarchar20否读者姓名isReturnbit1否是否归还(3)书架信息表tb_bookcase,如表3所示。图书馆对图书的分类,通常是将不同类型的图书分别放置在相应类型的书架上。书架信息实体,用于存储图书馆中所有的书架信息。表3 书架信息表字段名数据类型长度主键否描述bookcaseIDInt4是书架编号bookcaseNamevarchar80否书架名称(4)图书信息表tb_bookInfo,如表4所示。不同的图书,会有不同的图书信息。对这些图书信息进行详细的记录,方便了图书的分类和查询。图书信息实体,用于存储所有图书的相关信息。表4 图书信息表字段名数据类型长度主键否描述bookBarCodevarchar100是图书条形码bookNamevarchar100否图书名称bookTypeint4否图书类型bookcaseint4否书架类别bookConcernvarchar100否出版社名称authorvarchar80否作者名称pricemoney8否图书价格borrowSumint4否借阅次数(5)图书类型信息表tb_bookType如表5所示。图书馆会有不同类型的图书,为了避免图书归类发生混乱,必须建立一个图书类型信息实体,用于存储图书的类型信息。表5 图书类型信息表字段名数据类型长度主键否描述typeIDInt4否图书类型编号typeNamevarchar50否类型名称borrowDayInt4否可借天数(6)图书馆信息表tb_library,如表6所示。每个事物都会有其自身的历史背景,图书馆也不例外。为了记录图书馆的历史背景及其相关的信息,需要建立一个图书馆信息实体,用于存储图书馆的有关信息。表6 图书馆信息表字段名数据类型长度主键否描述libraryNamevarchar80否图书馆名称curatorvarchar80否馆长名称telvarchar100否联系电话addressvarchar200否联系地址emailvarchar100否电子邮件netvarchar200否网址upbuildTimedatetime8否建馆时间remarkvarchar500否备注(7)读者类型信息表tb_readerType,如表7所示。在读者群体中,会有不同的分类,例如借阅图书的读者可能是教师、学生和市民等,所以对读者人群进行有效的分类是至关重要的。读者类型信息实体,用于存储读者的类型信息。表7 读者类型信息表字段名数据类型长度主键否描述idint4是类型编号typevarchar50否类型名称numvarchar50否可借数量(8)读者信息表tb_readerInfo,如表8所示。当有读者借阅图书时,要对读者的各项信息进行记录,以方便归还图书和已借阅图书的历史查询,读者信息实体,用于存储所有借阅图书的读者信息。表8 读者信息表字段名数据类型长度主键否描述readerBarCodevarchar50是读者条形码readerNamevarchar50否读者名称sexchar10否读者性别readerTypevarchar50否读者类型certificateTypeVarchar50否证件类型certificateVarchar50否证件号码telVarchar50否联系电话emailVarchar50否电子邮件remarkvarchar500否备注(9)管理员信息表tb_user,如表9所示。当管理员登录图书馆管理系统时,需要通过登录窗口验证成功后才能进入系统主页。管理员信息实体,用于存储管理员的登录名称和登录密码。表9 管理员信息表字段名数据类型长度主键否描述userIdint4是管理员编号userNamevarchar50否管理员名称userPwdvarchar50否管理员密码 3.设计结果与分析本网站共分系统设置、读者管理、图书管理、图书借还、系统查询以及更改口令等几大模块,其母版界面如图1所示。图1母版页3.1登录界面登录界面,用户需要密码登录,进入系统,登录设计效果图如图2所示。图2登录界面其代码设计如下:using System;using System.Data;using System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;public partial class Login : System.Web.UI.Page OperatorClass operatorclass = new OperatorClass(); AdminManage adminmanage = new AdminManage(); ReaderManage readermanage = new ReaderManage(); protected void Page_Load(object sender, EventArgs e) protected void btnLogin_Click(object sender, EventArgs e) if (txtAdmin.Text = string.Empty) Response.Write(alert(管理员名称不能为空!); return; else DataSet adminds = null; DataSet readerds = null; adminmanage.Name = txtAdmin.Text; adminmanage.Pwd = txtPwd.Text; adminds = adminmanage.Login(adminmanage); readermanage.ID=txtPwd.Text; readermanage.Name=txtAdmin.Text; readerds=readermanage.ReaderLogin(readermanage); if (adminds.Tables0.Rows.Count 0 & txtCode.Text = Request.CookiesCheckCode.Value) SessionName = txtAdmin.Text; Response.Redirect(Global/Default.aspx); else if (readerds.Tables0.Rows.Count 0 & txtCode.Text =Request.CookiesCheckCode.Value) SessionName = txtAdmin.Text; Sessionreadid = txtPwd.Text; Sessionrole = Reader; Response.Redirect(Global/Default.aspx); else Response.Write(alert(登录名或密码不正确!); protected void btnCancel_Click(object sender, EventArgs e) txtAdmin.Text = txtPwd.Text = txtCode.Text = string.Empty; 3.2读者管理3.2.1 读者信息的添加与修改输入读者的各项信息,即可添加或修改读者信息,如图3所示。图3 添加/修改读者信息页面代码如下:public partial class ReaderManage_AddReader : System.Web.UI.Page ValidateClass validate = new ValidateClass(); RTypeManage rtypemanage = new RTypeManage(); ReaderManage readermanage = new ReaderManage(); protected void Page_Load(object sender, EventArgs e) this.Title = 添加/修改读者信息页面; if (!IsPostBack) if (Requestreaderid = null) btnAdd.Enabled = true; txtReaderID.Text = readermanage.GetReaderID(); txtBirthday.Text = txtDate.Text = DateTime.Now.ToShortDateString(); txtDate.Text = txtDate.Text = DateTime.Now.ToShortDateString(); else btnSave.Enabled = true; txtReaderID.Text = Requestreaderid.ToString(); readermanage.ID = txtReaderID.Text; DataSet readerds = readermanage.FindReaderByCode(readermanage, tb_reader); txtReader.Text = readerds.Tables0.Rows01.ToString(); ddlSex.SelectedValue = readerds.Tables0.Rows02.ToString(); ddlRType.SelectedValue = readerds.Tables0.Rows03.ToString(); txtBirthday.Text = readerds.Tables0.Rows04.ToString(); ddlPaperType.SelectedValue = readerds.Tables0.Rows05.ToString(); txtPaperNum.Text = readerds.Tables0.Rows06.ToString(); txtTel.Text = readerds.Tables0.Rows07.ToString(); txtEmail.Text = readerds.Tables0.Rows08.ToString(); txtDate.Text = readerds.Tables0.Rows09.ToString(); txtOper.Text = readerds.Tables0.Rows010.ToString(); txtRemark.Text = readerds.Tables0.Rows011.ToString(); DataSet typeds = rtypemanage.GetAllRType(tb_readertype); ddlRType.DataSource = typeds; ddlRType.DataTextField = name; ddlRType.DataBind(); protected void btnAdd_Click(object sender, EventArgs e) ValidateFun(); readermanage.ID = txtReaderID.Text; readermanage.Name = txtReader.Text; if (readermanage.FindReaderByName(readermanage, tb_reader).Tables0.Rows.Count 0) Response.Write(alert(该读者已经存在!); return; readermanage.Sex = ddlSex.Text; readermanage.Type = ddlRType.Text; readermanage.Birthday = Convert.ToDateTime(txtBirthday.Text); readermanage.PaperType = ddlPaperType.Text; readermanage.PaperNum = txtPaperNum.Text; readermanage.Tel = txtTel.Text; readermanage.Email = txtEmail.Text; readermanage.CreateDate = Convert.ToDateTime(txtDate.Text); readermanage.Oper = txtOper.Text; readermanage.Remark = txtRemark.Text; readermanage.AddReader(readermanage); Response.Redirect(ReaderManage.aspx); protected void btnSave_Click(object sender, EventArgs e) ValidateFun(); readermanage.ID = txtReaderID.Text; readermanage.Name = txtReader.Text; readermanage.Sex = ddlSex.Text; readermanage.Type = ddlRType.Text; readermanage.Birthday = Convert.ToDateTime(txtBirthday.Text); readermanage.PaperType = ddlPaperType.Text; readermanage.PaperNum = txtPaperNum.Text; readermanage.Tel = txtTel.Text; readermanage.Email = txtEmail.Text; readermanage.CreateDate = Convert.ToDateTime(txtDate.Text); readermanage.Oper = txtOper.Text; readermanage.Remark = txtRemark.Text; readermanage.UpdateReader(readermanage); Response.Redirect(ReaderManage.aspx); protected void btnCancel_Click(object sender, EventArgs e) txtBirthday.Text = txtDate.Text = DateTime.Now.ToShortDateString(); txtDate.Text = txtDate.Text = DateTime.Now.ToShortDateString(); txtReader.Text = txtPaperNum.Text = txtTel.Text = txtEmail.Text = txtOper.Text = txtRemark.Text = string.Empty; protected void ValidateFun() if (txtReader.Text = ) Response.Write(alert(读者名称不能为空!);location=javascript:history.go(-1);); return; if (!validate.validateNum(txtPaperNum.Text) Response.Write(alert(证件号码输入有误!);location=javascript:history.go(-1);); return; if (!validate.validatePhone(txtTel.Text) Response.Write(alert(电话号码输入有误!);location=javascript:history.go(-1);); return; if (!validate.validateEmail(txtEmail.Text) Response.Write(alert(Email地址输入有误!);location=javascript:history.go(-1);); return; 3.2.2 查看读者信息在表中显示读者的各项信息,如图4所示。图4 查看读者信息页面代码如下:public partial class ReaderManage_ReaderManage : System.Web.UI.Page ReaderManage readermanage = new ReaderManage(); protected void Page_Load(object sender, EventArgs e) this.Title = 查看读者信息页面; if (!IsPostBack) gvBind(); protected void gvReaderInfo_PageIndexChanging(object sender, GridViewPageEventArgs e) gvReaderInfo.PageIndex = e.NewPageIndex; gvBind(); protected void gvReaderInfo_RowDeleting(object sender, GridViewDeleteEventArgs e) readermanage.ID = gvReaderInfo.DataKeyse.RowIndex.Value.ToString(); readermanage.DeleteReader(readermanage); Response.Write(alert(读者信息删除成功); gvBind(); private void gvBind() DataSet ds = readermanage.GetAllReader(tb_reader); gvReaderInfo.DataSource = ds; gvReaderInfo.DataKeyNames = new string id ; gvReaderInfo.DataBind(); 3.3图书管理3.3.1 图书信息的添加与修改输入图书的各项信息,即可添加或修改图书信息,如图5所示。图5 添加/修改图书信息页面代码如下:public partial class BookManage_AddBook : System.Web.UI.Page ValidateClass validate=new ValidateClass(); BookcaseManage bookcasemanage = new BookcaseManage(); BTypeManage btypemanage = new BTypeManage(); BookManage bookmanage = new BookManage(); protected void Page_Load(object sender, EventArgs e) this.Title = 添加/修改图书信息页面; if (!IsPostBack) DataSet bcaseds = bookcasemanage.GetAllBCase(tb_bookcase); ddlBCase.DataSource = bcaseds; ddlBCase.DataTextField = name; ddlBCase.DataBind(); DataSet btypeds = btypemanage.GetAllBType(tb_booktype); ddlBType.DataSource = btypeds; ddlBType.DataTextField = typename; ddlBType.DataBind(); if (Requestbookcode = null) btnAdd.Enabled = true; txtInTime.Text = DateTime.Now.ToShortDateString(); else btnSave.Enabled = true; txtBCode.ReadOnly = txtBName.ReadOnly = true; txtBCode.Text = Requestbookcode.ToString(); bookmanage.BookCode = txtBCode.Text; DataSet bookds = bookmanage.FindBookByCode(bookmanage,tb_bookinfo); txtBName.Text = bookds.Tables0.Rows01.ToString(); ddlBType.SelectedValue = bookds.Tables0.Rows02.ToString(); txtAuthor.Text = bookds.Tables0.Rows03.ToString(); txtTranslator.Text = bookds.Tables0.Rows04.ToString(); txtPub.Text = bookds.Tables0.Rows05.ToString(); txtPrice.Text = bookds.Tables0.Rows06.ToString(); txtPage.Text = bookds.Tables0.Rows07.ToString(); ddlBCase.SelectedValue = bookds.Tables0.Rows08.ToString(); txtStorage.Text = bookds.Tables0.Rows09.ToString(); txtInTime.Text = bookds.Tables0.Rows010.ToString(); txtOper.Text = bookds.Tables0.Rows011.ToString(); protected void btnAdd_Click(object sender, EventArgs e) ValidateFun(); bookmanage.BookCode = txtBCode.Text; if (bookmanage.FindBookByCode(bookmanage, tb_bookinfo).Tables0.Rows.Count 0) bookmanage.BookName = txtBName.Text; bookmanage.Type = ddlBType.SelectedValue; bookmanage.Author = txtAuthor.Text; bookmanage.Translator = txtTranslator.Text; bookmanage.PubName = txtPub.Text; bookmanage.Price = Convert.ToDecimal(txtPrice.Text); bookmanage.Page = Convert.ToInt32(txtPage.Text); bookmanage.Bcase = ddlBCase.SelectedValue; bookmanage.Storage = Convert.ToInt32(txtStorage.Text) + Convert.ToInt32(bookmanage.FindBookByCode(bookmanage, tb_bookinfo).Tables0.Rows09.ToString(); bookmanage.InTime = Convert.ToDateTime(txtInTime.Text); bookmanage.Oper = txtOper.Text; bookmanage.UpdateBook(bookmanage); else bookmanage.BookName = txtBName.Text; bookmanage.Type = ddlBType.SelectedValue; bookmanage.Author = txtAuthor.Text; bookmanage.Translator = txtTranslator.Text; bookmanage.PubName = txtPub.Text; bookmanage.Price = Convert.ToDecimal(txtPrice.Text); bookmanage.Page = Convert.ToInt32(txtPage.Text); bookmanage.Bcase = ddlBCase.SelectedValue; bookmanage.Storage = Convert.ToInt32(txtStorage.Text); bookmanage.InTime = Convert.ToDateTime(txtInTime.Text); bookmanage.Oper = txtOper.Text; bookmanage.AddBook(bookmanage); Response.Redirect(BookManage.aspx); protected void btnSave_Click(object sender, EventArgs e) ValidateFun()
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度离婚财产分割争议解决与子女监护权调解合同
- 2025国际会展中心智能化展台设计与交互多媒体系统服务合同
- 2025年社区便民餐饮设施设备租赁及服务合同
- 2025年新设分公司投资合作框架合同书
- 2025年高科技企业专利权保护与员工竞业禁止协议
- 2025年有机农产品运输合同范本汇编与绿色环保质量监督合同
- 2025年校园电工技能培训及校园设施维护服务合作协议
- 钢轨焊接气压焊
- 2025医疗器械远程诊断与保养服务合同
- 2025年数据中心电力设备运维保障与清洁保养服务合同
- 2024-2030年中国热电行业运营模式及盈利前景预测报告
- 德佑房屋买卖合同范本
- GB/T 43933-2024金属矿土地复垦与生态修复技术规范
- (正式版)JBT 14875-2024 带式输送机 输送带纠偏装置
- 人教版数学六年级下册核心素养教案全册
- 新时代劳动教育教程(中职版劳动教育)全套教学课件
- 白银公司考试题2024
- 轧光机安全操作规程范本
- 眼耳鼻咽喉口腔科护理学(高职)全套教学课件
- 中国华能:风电机组数字化感知与运行状态评估
- 海洋岩土工程的挑战与机遇
评论
0/150
提交评论