admin 管理员组

文章数量: 887629


2024年1月13日发(作者:佛山web前端培训)

1.设计思想

我们通过对其他院校的图书馆管理系统的分析和研究,结合目前学院的管理实际情况等因素,归纳整理出了如下的设计思想:

(1)一个系统,两个界面

该系统分两个界面,一个是图书馆的后台管理系统,登陆者为系统管理员设计的核心功能是实现图书馆的多方面的信息查询,包括图书馆信息,读者的信息和图书的借阅等信息的管理;另一个是读者的运行界面,有查询和借阅归还图书等功能,不具备管理功能。系统会根据登录者的信息来判断应该进入哪个运行环境。

(3)两类角色

即普通用户和管理员,普通用户中又可进一步细分为老师、学生等。

(4)五种管理

◆ 图书馆信息管理

◆ 用户信息管理

◆ 图书档案管理

◆ 读者档案管理

◆ 图书的借阅归还管理

以下主要围绕该设计思想对系统体系结构分析,数据库设计分析、模块功能等进行详细说明。

2.系统体系结构

开发采用ASP+SQL SERVER模式,系统体系结构如下图所示:

【说明】:在系统设计过程中,管理人员按角色进一步划分,篇幅有限,详细设计这里不做介绍,请谅解。

1

普通用户

综合查询

书架设置

用户权限设置

图书馆信息

读者档案管理

管理员

读者类型管理

图书档案管理

图书类型管理

图书借阅

图书归还

图书借阅排行榜

读者借阅排行榜

读者留言

3.数据库设计

数据库是网站的基础,因此必须在数据库框架设计完成的情况下,其他模块才有可能实施。我们采用的数据库开发工具是SQL Server 2000,数据库名称为LibraryMS,根据系统设计需要的存储信息,在该数据库中定义了如下各数据表。

1. 图书馆信息表(library),表设计如下:

libraryname——图书馆名称 ,curator——馆长 ,tel——联系电话 ,address——地址 ,email——邮箱地址 ,url——网址 ,createdate——建馆日期 ,introduce——介绍说明

2

2. 用户信息表(admin),表设计如下:

id——用户编号,name——姓名,pwd——密码

3. 用户权限设置表(purview),表设计如下:

Id——用户编号,sysset——系统设置,readset——读者管理,bookset——图书管理,borrowback——图书借还管理,sysquery——系统查询

4. 书架信息表(bookcase),表设计如下:

id——书架编号,name——书架类型

5. 读者档案信息表(reader),表设计如下:

Id——读者编号,name——读者姓名,pwd——密码,sex——性别,type——读者类型,birthday——出生日期,papertype——证件类型,papernum——证件号码,tel——联系电话,email——邮箱,habby——爱好,createdate——用户创建日期,oper——管理者,remark——备注,borrownum——可借数量,num——累积借阅次数,photo——照片

3

6. 读者类型表(readertype),表设计如下:

id——类型编号,name——名称,number——可借数量

7. 图书档案信息表(bookinfo),表设计如下:

bookcode ——图书条形码编号,bookname——书名,type——类别,auto——作者,translator——翻译,pubname——出版社,price——价格,page——页数,bcase——所属书架,storage——藏书量,intime——引进时间,oper——管理者,borrownum——已借数量

8. 图书类型表(booktype),表设计如下:

id——编号,typename——类型名称,days——可借天数

4

9. 图书借阅归还表(borrowandback),表设计如下:

Id——编号,readerid——读者编号,bookcode——图书条形码,borrowtime——借书日期,ygbacktime——应还日期,sjbacktime——实际归还日期,borrowoper——借书负责人,backoper——还书负责人,isback——是否归还

10.读者留言表(readertalk),表设计如下:

id——留言编号,readername——读者姓名,title——主题,speaktime——留言时间,neirong——留言内容

4.功能模块

这一部分主要是各个模块的实现功能、代码、及效果图,本人参与的是读者留言模块。

4.1 登陆界面

系统编码的类:

using System;

using ;

using uration;

using ;

5

using ty;

using ;

using trols;

using ts;

using ntrols;

using ent;

public class DataBase

{

private SqlConnection conn;

public void open()

{ conn = new SqlConnection();

string connstring =

ng(tionStrings["LibraryMSConnectionString"]);

tionString = connstring;

();

}

public SqlConnection Acc()

{

return conn;

}

public void Close()

{ ();

}

public int Returncmd(string cmdstring)

{

();

int i = 0;

SqlCommand cmd = new SqlCommand(cmdstring ,conn );

dType = ;

tion = ();

i = eNonQuery();

();

return i;

}

public DataSet ReturnDataSet(string cmdstring, string bName)

{ ();

SqlCommand cmd = new SqlCommand(cmdstring, conn);

6

public DataBase()

{

}

dType = ;

tion = ();

SqlDataAdapter myda = new SqlDataAdapter(cmdstring, conn);

Command = cmd;

DataSet myds = new DataSet();

(myds, bName);

();

return myds;

}

}

using System;

using ;

using uration;

using ;

using ty;

using ;

using trols;

using ts;

using ntrols;

public class ReaderTalkManage

{

public ReaderTalkManage()

{

}

DataBase da = new DataBase();

public DataSet GetReadersTalk(string bname)

{

return (DataSet("select top 5 * from readertalk order by speaktime

desc", bname));

}

public int AddReaderTalk(string readername,string title,DateTime speaktime,string

neirong)

{

return (cmd("insert into

readertalk(readername,title,speaktime,neirong) values('" + readername + "','" + title

+ "','" + speaktime + "','" + neirong + "')"));

}

public DataSet GetAllTalk(string bname)

{

return (DataSet("select * from readertalk ", bname));

}

}

7

登录界面,代码如下:

using System;

using ;

using uration;

using tions;

using ;

using ty;

using ;

using trols;

using ts;

using ntrols;

using .SqlClient ;

public partial class _Default :

{

AdminManage adminmanage = new AdminManage();

ReaderManage readermanage = new ReaderManage();

protected void Button1_Click1(object sender, EventArgs e)

{

if ( == "")

{

("");

return;

}

else

{

DataSet adminds = null;

DataSet readerds = null;

string aname = ;

string apwd = ;

adminds = (aname, apwd);

string rname = ;

string rpwd = ;

readerds = Login(rname, rpwd);

if ([0]. > 0 && ==

s["CheckCode"].Value)

{

Session["name"] = ;

ct("");

}

else if ([0]. > 0 && ==

s["CheckCode"].Value)

{

Session["name"] = ;

Session["readid"] = ;

8

Session["role"] = "Reader";

ct("");

}

else

{

("");

}

}

}

protected void Button2_Click1(object sender, EventArgs e)

{

= "";

= "";

= "";

}

protected void LinkButton1_Click1(object sender, EventArgs e)

{

rl = "~/";

}

}

程序运行效果图如下:

当用户在上图所示的界面中填写完数据后,单击“确定”按钮,进入系统

主界面。

9

4.2 首页

登陆界面进去以后是系统首页,显示的是图书借阅和读者借阅排名前五位的图书和读者信息,要想查看更多的话点击右下方的更多按钮,程序运行效果如下(管理员):

普通用户登录以后系统首页的工具栏没有系统设置选项:

4.3 图书馆信息

此模块介绍的是图书馆的有关信息,由管理员编辑修改,运行效果图如下:10

4.4 管理员设置

此模块可对管理员进行管理及权限进行设置,也可点击添加管理员信息添加新的管理员的信息内容,运行效果如下:

添加管理员信息:

4.5 书架管理

11

图书馆的图书是按书架分类排放,此模块是对书架信息的管理,运行效果如下:

4.6 更改口令

通过此模块管理员可以修改其登录系统的密码,运行效果如下:

4.7 读者档案管理

此模块可以查看所有读者基本信息,点击详细可以查看更多具体信息,也可点击添加读者信息添加新的读者的各项信息内容,运行效果如下:

12

添加读者信息:

4.8读者类型管理

图书馆读者可分为多类,每一类读者的借阅图书数量和借阅期限不同,在此模块中管理读者类型,也可点击添加读者类型信息添加新的读者类型,运行效果如下:

添加读者类型信息:

13

4.9图书档案管理

此模块可管理图书馆图书及查看图书信息,点击详细可查看具体的图书信息,若图书馆中已没有某本书,可点击删除,去掉其在系统中的图书信息,也可点击添加图书信息添加新的图书信息,运行效果如下:

添加图书信息:

14

4.10图书类型管理

图书除了按书架分为几大类外,还有其具体分类,方便读者查询,此模块用来管理图书类型,对其具体内容进行修改删除等,也可点击添加图书类型信息添加新的图书类型,运行效果如下:

添加图书管理信息:

4.11图书借阅

通过此模块,读者可以根据书名、出版社等信息查询要借阅的图书,然后点击借阅按钮即可,上方显示的是读者信息,运行效果如下:

15

4.12图书归还

此板块模式和图书借阅类似,点击归还可归还所借图书。运行效果如下:

16

4.13图书档案查询

此模块是方便读者查询所需图书的具体信息,读者可输入查询条件,例如书名、出版社等信息,然后点击查询即可,运行效果如下:

4.14图书借阅排行榜

设立此排行榜的目的是,让同学可以知道目前图书馆有哪些书是比较热门的,有兴趣的同学也可以借阅,运行效果如下:

4.15读者借阅排行榜

此模块的作用是从侧面反映借阅图书的人群类型,运行效果如下:

17

4.16 读者留言

前台读者留言,代码如下:

using System;

using ;

using uration;

using tions;

using ;

using ty;

using ;

using trols;

using ts;

using ntrols;

public partial class ReaderTalk :

{

ReaderTalkManage readertalkmanage = new ReaderTalkManage();

protected void Page_Load(object sender, EventArgs e)

{

DataSet readertalkds = dersTalk("readertalk");

urce = readertalkds;

nd();

}

protected void Button1_Click(object sender, EventArgs e)

18

{

string readername = Session["name"].ToString ();

string title = ;

DateTime speaktime = Time(tDateString());

string neirong = ;

derTalk(readername,title,speaktime,neirong );

ct("");

}

protected void Button2_Click(object sender, EventArgs e)

{

ct("");

}

}

程序运行效果图如下:

点击“提交”按钮后的界面:

19

点击“查看所有留言”按钮,可链接到,其代码如下:

using System;

using ;

using uration;

using tions;

using ;

using ty;

using ;

using trols;

using ts;

using ntrols;

public partial class ReaderTalks :

{

ReaderTalkManage readertalkmanage = new ReaderTalkManage();

protected void Page_Load(object sender, EventArgs e)

{

DataSet talkds = Talk("readertalk");

urce = talkds;

nd();

}

protected void Button1_Click(object sender, EventArgs e)

20

{

ct("");

}

}

程序运行结果如下:

点击“返回”按钮,即又返回至上个页面。

4.17 退出系统

退出系统即返回登陆界面。

5、总结

通过对图书馆管理系统的设计和制作,从中进一步了解了一个完善的网站、

系统的数据库的设计和安全体制的重要性,并且对与数据库的开发有了新的了解和认识,也懂得了在软件开发过程中只有做到理论联系实际,才能开发出较好的应用软件。

此次毕业设计培养了我综合运用各门计算机知识的能力,特别是在数据库程序设计、编程技术方面有了长足的进步,对软件系统开发过程、步骤有了比较深刻的认识,懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。在此感谢金老师这学期的教导和帮助,谢谢。

21

6、参考书目

1 、文东,秦敬祥,《程序设计基础与项目实训》,北京,中国人民大

学出版社

2、北京科海电子出版社,2009

3、《C#项目开发全程实录》 主编 唐政 房大伟清华大学出版社

4、《SQL Server 2000 实用教程》主编 周力 大连理工大学出版社

5、百度等

22

23

24

25


本文标签: 图书 信息 读者 设计