图书馆管理系统管理员功能模块.docx
图书馆管理系统管理员功能模块 图书管理系统管理员功能点图 一、引言 对于图书馆来说,如何简化图书流通的操作流程,提高图书管理的工作效率是关键因素。因此,须要引入图书馆管理系统来实现图书馆的现代化管理。作为一个图书馆管理系统,首先,必需要有友好的、美观的操作界面,人机对话操作方式简洁。其次,图书信息和读者信息分类管理,能实现综合查询。再次,对图书借阅信息,图书借阅排行榜信息实现全程数据跟踪,保证数据的真实性和刚好性。最终,能实现刚好的提示用户归还即将到期的图书,做到图书借阅管理流程规范且流畅。 更具图书管日常图书管理的需求和图书借阅的管理流程,如下图,图书馆管理系统功能模块主要包括系统设置、读者管理功能、图书管理功能、图书借阅功能和相关的查询功能。其中管理员功能模块如下图: 图书馆管理系统(管理员)系统管理读者信息管理图书信息管理借阅信息管理退出修改密码用户添加用户管理添加读者类别读者类别管理添加读者信息读者信息管理添加图书类别图书类别管理添加图书信息图书信息管理图书借阅图书归还图书预约查询统计超期图书图书借阅统计 管理员功能模块 1.2 图书管理系统的可行性分析 本次课程设计题目:“图书管理系统的开发”主要目的是利用数据库软件编制一个管理软件,用以实现图书、读者以及日常工作等多项管理。同时对整个系统的分析、设计过程给出一个完整论证。图书管理系统是一种基于集中统一规划的数据库数据管理新模式。在对图书、读者的管理,其实是对图书、读者数据的管理。本系统的建成无疑会为管理者对图书管理系统供应极大的帮助。本系统的设计主要从以下几方面做起:系统业务流程分析、系统的功能设计、系统的数据库结构设计等。作这些工作需对数据库学问有足够相识,并深化的了解c#的运用和管理系统的相关学问。在信息时代的今日,人类须要对在政治、经济、军事、文化、科研、教化等领域产生的大量信息进行管理,并对数据进行加工处理,数据库技术则是信息管理与数据处理的先进技术。随着信息量的不断增加,作为计算机的三大主要应用(科学计算、过程限制和数据处理)之一的数据处理,已快速上升为计算机应用的主要方面,数据库技术则成为人们日常生活中处理数据不行缺少的有力工具,并且现代的信息管理系统几乎都以数据库技术作为核心。 现在大多数的图书管理方式为手工处理,重复劳动多,劳动强度大,而且简单出错,新系统的运用能否可以很好的解决这些问题要看系统的可行性,可行性探讨的目的是用最小的代价在尽可能短的时间内确定问题是否能够解决。系统的可行性分析有以下几个方面: (1)技术可行性:处理速度快、精确通过权限的设置,数据的平安性好、便利查询、借阅管理等。 (2)经济可行性:系统建设不须要很大的投入、可缩减人力投入。 (3)运行上可行性:本系统作为一个小型的图书馆信息管理系统,所耗费的 资源特别的小。 (4)从各种社会因素可行性分析:可降低工作人员工作强度,提高效率,会 得到学校工作人员的一样同意的。 综上所述通过可行性分析认为新系统的开发方案切实可行,可进行开发。 1.3 系统开发运行环境 系统开发环境:Microsoft Visual Studio 2022 系统开发语言:c# 运行平台:Windows 8 数据库:sql 2022 二、图书管理系统模块分析 2.1管理员数据流图 (1)图书档案管理系统为用户供应图书档案信息其数据流图如图2-1所示。 图2-1图书档案管理数据流图 (2)读者档案系统用于记录读者的具体信息其数据流图如图2-2所示。 图2-2读者档案管理数据流图 2.2管理员用例图 2.2.1管理员用例图 2.3 管理员E-R图 姓名电话管理员编号级别性别 管理员总体E-R图 级别姓名类型班级编号姓名性别学号读者管理管理员级别添加修改删除添加归还时间借阅条形码借阅时间编号图书价格图书名称管理修改删除作者 三、管理员各功能及实现 3.1管理员登录代码 protectedvoid Button1_Click(object sender, EventArgs e) /*取得帐号密码信息*/ string userName = this.txtName.Text; string paword = this.txtPwd.Text; string identify = this.Identify.SelectedValue; if ("管理员" = identify) AdminModel adminModel = newAdminModel(); adminModel.AdminUsername = userName; adminModel.AdminPaword = paword; AdminLogic adminLogic = newAdminLogic(); /*假如管理员帐号信息正确*/ if (adminLogic.IsExistAdminInfo(adminModel) Seion"adminFlag" = true; Seion"adminUsername" = userName; Response.Redirect("Admin/index.aspx"); /*假如管理员帐号信息不正确*/ else Response.Write("alert('" + adminLogic.ErrMeage + "');"); else ReaderModel readerModel = newReaderModel(); readerModel.ReaderId = userName; readerModel.ReaderPaword = paword; ReaderLogic readerLogic = newReaderLogic(); /*假如读者帐号信息正确*/ if (readerLogic.IsExistReaderInfo(readerModel) Seion"readerFlag" = true; Seion"readerId" = userName; Response.Redirect("Reader/index.aspx"); /*假如读者帐号信息不正确*/ else Response.Write("alert('" + readerLogic.ErrMeage + "');"); 3.2管理员图书管理部分核心代码 protectedvoid BindData() string keyword = this.Keyword.Text; int diskTypeId = Int32.Parse(this.DiskType.SelectedValue); string isRecommend = this.IsRecommend.SelectedValue; /*调用业务层进行查询*/ this.GridView1.DataSourceID = "" this.GridView1.DataSource = (newDiskLogic().QueryDiskInfo(keyword, diskTypeId, isRecommend); this.GridView1.DataBind(); protectedvoid Btn_Query_Click(object sender, EventArgs e) /*取得查询的各个参数*/ string keyword = this.Keyword.Text; int diskTypeId = Int32.Parse(this.DiskType.SelectedValue); string isRecommend = this.IsRecommend.SelectedValue; /*调用业务层进行查询*/ this.GridView1.DataSourceID = "" this.GridView1.DataSource = (newDiskLogic().QueryDiskInfo(keyword, diskTypeId, isRecommend); this.GridView1.DataBind(); protectedvoid GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) /*取得查询的各个参数*/ string keyword = this.Keyword.Text; int diskTypeId = Int32.Parse(this.DiskType.SelectedValue); string isRecommend = this.IsRecommend.SelectedValue; /*调用业务层得到查询的结果数据集*/ DataSet ds = newDataSet(); ds = (newDiskLogic().QueryDiskInfo(keyword, diskTypeId, isRecommend); /*将查询结果集绑定到gridview控件上*/ this.GridView1.DataSourceID = null; this.GridView1.DataSource = ds; this.GridView1.PageIndex = e.NewPageIndex; ; this.GridView1.DataBind(); protectedvoid GridView1_RowDataBound(object sender, GridViewRowEventArgs e) if (e.Row.RowType = DataControlRowType.DataRow) /当鼠标选择某行时变颜色 e.Row.Attributes.Add("onmouseover", "c=this.style.backgroundColor;this.style.backgroundColor='#00ffee'"); e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=c;"); 3.3添加图书类型部分核心代码 protectedvoid Btn_Add_Click(object sender, EventArgs e) DiskTypeModel diskTypeModel = newDiskTypeModel(); diskTypeModel.DiskTypeName = this.DiskTypeName.Text; DiskTypeLogic diskTypeLogic = newDiskTypeLogic(); if (diskTypeLogic.InsertDiskTypeInfo(diskTypeModel) Response.Write("alert('图书类型信息添加胜利!');location.href='diskTypeAdd.aspx'"); else Response.Write("alert('" + diskTypeLogic.ErrMeage + "');"); 3.4读者类型添加管理核心代码 protectedvoid Btn_Add_Click(object sender, EventArgs e) /*建立读者类型对象模型并传入界面上的各个参数*/ ReaderTypeModel readerModel = newReaderTypeModel(); readerModel.ReaderTypeName = this.ReaderTypeName.Text; readerModel.LoanNum = Int32.Parse(this.LoanNum.Text); readerModel.LoanDays = Int32.Parse(this.LoanDays.Text); readerModel.ContinueDays = Int32.Parse(this.ContinueDays.Text); readerModel.ReserverNum = Int32.Parse(this.ReserveNum.Text); /*调用业务层进行添加*/ ReaderTypeLogic readerTypeLogic = newReaderTypeLogic(); if (readerTypeLogic.AddNewReaderType(readerModel) Response.Write("alert('读者类别信息添加胜利!');location.href='readerTypeManage.aspx'"); else Response.Write("alert('" + readerTypeLogic.ErrMeage + "');"); 3.5 读者信息添加核心代码 protectedvoid Btn_Upload_Click(object sender, EventArgs e) /*假如上传了文件*/ if (this.ReaderPhotoUpload.PostedFile.ContentLength > 0) /*验证上传的文件格式,只能为gif和jpeg格式*/ string mimeType = this.ReaderPhotoUpload.PostedFile.ContentType; if (String.Compare(mimeType, "image/gif", true) = 0 | String.Compare(mimeType, "image/pjpeg", true) = 0) /this.DeviceImagePath.Text = "上传文件中." string extFileString = System.IO.Path.GetExtension(this.ReaderPhotoUpload.PostedFile.FileName); /*获得文件扩展名*/ string saveFileName = this.MakeFileName(extFileString); /*依据扩展名生成文件名*/ string imagePath = "ReaderPhoto" + saveFileName;/*图片路径*/ this.ReaderPhotoUpload.PostedFile.SaveAs(Server.MapPath(imagePath); this.ReaderPhoto.ImageUrl = imagePath; this.ReaderPhotoUrl.Text = imagePath; else Response.Write("alert('上传文件格式不正确!');"); /*依据当前系统时间生成一个文件名*/ privatestring MakeFileName(string exeFileString) System.DateTime now = System.DateTime.Now; int year = now.Year; int month = now.Month; int day = now.Day; int hour = now.Hour; int minute = now.Minute; int second = now.Second; string yearString = year.ToString(); string monthString = month /*依据当前时间的年月日时分秒生成文件名*/ string fileName = yearString + monthString + dayString + hourString + minuteString + secondString + exeFileString; return fileName; protectedvoid Btn_Add_Click(object sender, EventArgs e) /*建立读者对象模型,将读者的各个信息传入模型的对应属性中*/ ReaderModel readerModel = newReaderModel(); readerModel.ReaderId = this.ReaderId.Text; readerModel.ReaderPaword = this.ReaderPaword.Text; readerModel.ReaderName = this.ReaderName.Text; readerModel.ReaderSex = this.ReaderSex.SelectedValue; if (this.ReaderBirthday.Text != "") readerModel.ReaderBirthday = Convert.ToDateTime(this.ReaderBirthday.Text); readerModel.ReaderTypeId = Int32.Parse(this.ReaderType.SelectedValue); readerModel.ReaderPhone = this.ReaderPhone.Text; readerModel.ReaderEmail = this.ReaderEmail.Text; readerModel.ReaderAddre = this.ReaderAddre.Text; readerModel.ReaderPhotoUrl = this.ReaderPhotoUrl.Text; readerModel.ReaderMemo = this.ReaderMemo.Text; /*调用业务层执行新读者信息的添加*/ ReaderLogic readerLogic = newReaderLogic(); if (readerLogic.AddNewReaderInfo(readerModel) Response.Write("alert('读者信息添加胜利!');location.href='readerAdd.aspx'"); else Response.Write("alert('" + readerLogic.ErrMeage + "');"); protectedvoid Btn_Cancle_Click(object sender, EventArgs e) Response.Write("location.href='index.aspx'"); 3.6图书借阅部分代码 protectedvoid Btn_Add_Click(object sender, EventArgs e) string readerId = this.ReaderId.Text; string diskIndex = this.DiskIndex.Text; DiskLogic diskLogic = newDiskLogic(); DiskModel diskModel = diskLogic.GetDiskInfo(diskIndex); LoanLogic loanLogic = newLoanLogic(); if (loanLogic.AddNewLoanInfo(diskIndex, readerId, Seion"adminUsername".ToString() diskLogic.UpdateDiskLoanNum(diskModel.Id); (newReaderLogic().UpdateReaderLoanNum(readerId); this.Result.Text = "读者:" + ReaderLogic.GetReaderNameById(readerId) + "借阅图书:" + DiskLogic.GetDiskNameById(diskModel.Id) + " 胜利!" else this.Result.Text = loanLogic.ErrMeage; this.ReaderId.Text = "" this.DiskIndex.Text = "" 3.7图书归还部分代码 protectedvoid Btn_Add_Click(object sender, EventArgs e) string readerId = this.ReaderId.Text; string diskIndex = this.DiskIndex.Text; DiskLogic diskLogic = newDiskLogic(); DiskModel diskModel = diskLogic.GetDiskInfo(diskIndex); LoanLogic loanLogic = newLoanLogic(); if (loanLogic.ReturnDisk(diskModel.Id,readerId,Seion"adminUsername".ToString() this.Result.Text = "读者:" + ReaderLogic.GetReaderNameById(readerId) + "归还图书:" + diskModel.DiskName + " 胜利!" else this.Result.Text = loanLogic.ErrMeage; this.ReaderId.Text = "" this.DiskIndex.Text = "" 3.8图书预约代码 protectedvoid Btn_Query_Click(object sender, EventArgs e) ArrayList reserveInfoList = ReserveLogic.QueryReserveInfo(this.ReaderId.Text,this.DiskIndex.Text); ShowReserveInfoList(reserveInfoList); privatevoid ShowReserveInfoList(ArrayList reserveInfoList) if (reserveInfoList.Count = 0) this.Result.Text = "没有图书预约信息" else this.Result.Text = "" for (int i = 0; i this.Result.Text += "" + reserveModel.ReserveId + "" this.Result.Text += "" + reserveModel.ReaderId + "" this.Result.Text += "" + ReaderLogic.GetReaderNameById(reserveModel.ReaderId) + "" this.Result.Text += "" + diskModel.DiskIndex + "" this.Result.Text += "" + diskModel.DiskName + "" this.Result.Text += "" + reserveModel.ReserveTime.ToLongDateString() + " " + reserveModel.ReserveTime.ToLongTimeString() + "" this.Result.Text += "图书借阅" 3.9用户修改权限部分核心代码 protectedvoid GridView1_RowDataBound(object sender, GridViewRowEventArgs e) if (e.Row.RowType = DataControlRowType.DataRow) /当鼠标选择某行时变颜色 e.Row.Attributes.Add("onmouseover", "c=this.style.backgroundColor;this.style.backgroundColor='#00ffee'"); e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=c;"); /*获得当前记录的管理员账号名然后获得权限信息*/ string adminUsername = this.GridView1.DataKeyse.Row.RowIndex.Value.ToString(); AdminLogic adminLogic = newAdminLogic(); AdminModel adminModel = adminLogic.GetAdmin(adminUsername); Literal DiskType = (Literal)e.Row.Cells1.FindControl("DiskType"); DiskType.Text = adminModel.DiskTypeFlag = 1 ? "YES" : "NO" Literal Disk = (Literal)e.Row.Cells2.FindControl("Disk"); Disk.Text = adminModel.DiskFlag = 1 ? "YES" : "NO" Literal ReaderType = (Literal)e.Row.Cells3.FindControl("ReaderType"); ReaderType.Text = adminModel.ReaderTypeFlag = 1 ? "YES" : "NO" Literal Reader = (Literal)e.Row.Cells4.FindControl("Reader"); Reader.Text = adminModel.ReaderFlag = 1 ? "YES" : "NO" Literal Lend = (Literal)e.Row.Cells5.FindControl("Lend"); Lend.Text = adminModel.LendFlag = 1 ? "YES" : "NO" Literal Return = (Literal)e.Row.Cells6.FindControl("Return"); Return.Text = adminModel.ReturnFlag = 1 ? "YES" : "NO" Literal UserManage = (Literal)e.Row.Cells7.FindControl("UserManage"); UserManage.Text = adminModel.UserManageFlag = 1 ? "YES" : "NO" protectedvoid Page_Load(object sender, EventArgs e) if (!IsPostBack) /*验证是否登陆了系统*/ if (Seion"adminFlag" = null) Response.Write("top.location.href='./login.aspx'"); return; string adminUsername = Request.QueryString"adminUsername" this.AdminUsername.Text = adminUsername; AdminLogic adminLogic = newAdminLogic(); AdminModel adminModel = adminLogic.GetAdmin(adminUsername); this.DiskType.Checked = adminModel.DiskTypeFlag = 1; this.Disk.Checked = adminModel.DiskFlag = 1; this.Reader.Checked = adminModel.ReaderFlag = 1; this.ReaderType.Checked = adminModel.ReaderFlag = 1; this.Lend.Checked = adminModel.LendFlag = 1; this.Return.Checked = adminModel.ReturnFlag = 1; this.UserManage.Checked = adminModel.UserManageFlag = 1; protectedvoid Btn_Edit_Click(object sender, EventArgs e) string adminUsername = Request.QueryString"adminUsername" AdminModel adminModel = newAdminModel(); adminModel.AdminUsername = adminUsername; adminModel.DiskTypeFlag = this.DiskType.Checked ? 1 : 0; adminModel.DiskFlag = this.Disk.Checked ? 1 : 0; adminModel.ReaderTypeFlag = this.ReaderType.Checked ? 1 : 0; adminModel.ReaderFlag = this.Reader.Checked ? 1 : 0; adminModel.LendFlag = this.Lend.Checked ? 1 : 0; adminModel.ReturnFlag = this.Return.Checked ? 1 : 0; adminModel.UserManageFlag = this.UserManage.Checked ? 1 : 0; AdminLogic adminLogic = newAdminLogic(); if (adminLogic.UpdateAdmin(adminModel) Response.Write("alert('用户权限修改ok!');location.href='userManage.aspx'"); else Response.Write("alert('用户权限修改失败!');location.href='userManage.aspx'"); 四、程序运行界面 4.1登录界面 4.2主界面 4.3图书添加类型界面 4.4图书类别管理 4.5图书信息添加 4.6图书信息管理 4.7读者信息管理 4.8图书借阅 4.9图书预约查询 4.10修改用户权限 五、心得体会 经过一个星期的设计和开发,图书管理系统基本开发完毕。其功能基本符合用户需求。对于数据的一样性的问题也通过程序进行了有效的解决。但是该系统还有很多不尽如人意的地方,在今后有待进一步改善。回首整个开发设计过程,我学到了许多书本上学不到的东西。但是这次课程设计,我要负责图书管理系统的整个开发过程,包括系统可行性分析、系统需求分析、系统概要设计、系统具体设计等方面的工作。在每个设计阶段我都能学到一些新学问,对我的动手实力提高很大。在整个设计过程中,我基本上完成了图书管理系统管理员模块的功能,达到了课程设计的要求。页面设计还有进一步改善的地方,我会在今后的学习工作中着重加强这方面的熬炼。 在以后的工作中,还会遇到许多类似的状况,此次课程设计为我以后的工作积累了许多珍贵的阅历。当然仍存在很多问题不能解决地尽善尽美,还需不断地接着与探究。在结束设计的同时也感到了劳动的艰辛与劳动成果的来之不易,明白了课程设计是给自己供应了一个熬炼、升华、提高、完善的机会。 图书馆管理系统管理员功能模块 系统管理员职责 系统管理员职责 ERP系统管理员职责 系统管理员述职报告 系统管理员岗位职责 系统管理员的工作汇总 系统管理员岗位职责 系统管理员面试题 系统管理员岗位职责 本文来源:网络收集与整理,如有侵权,请联系作者删除,谢谢!第22页 共22页第 22 页 共 22 页第 22 页 共 22 页第 22 页 共 22 页第 22 页 共 22 页第 22 页 共 22 页第 22 页 共 22 页第 22 页 共 22 页第 22 页 共 22 页第 22 页 共 22 页第 22 页 共 22 页