目录
5.源代码
1.系统分析
1.1基本需求功能点分析
图书借阅管理系统,主要目标是简化现有的人工管理,通过科学的计算机管理图书借阅管理,提高工作效率,实现日常管理信息化,无纸化。
1)系统用户主要分为两大类:a.管理员用户类(相当于一名有各种操作权限的超级用户) b.普通用户类。系统根据登录页面不同的身份选择登录进入不同页面进行后续操作。
2)管理员用户的主要功能:a.管理功能:用户管理、图书管理(图书类别管理、图书信息管理)、读者管理(读者类别管理、读者信息管理)、借阅记录管理、系统管理(注销、退出);b.统计功能:最热图书类别统计、最热图书统计、活跃读者统计、失信读者统计。
3)普通用户的主要功能:a.管理功能:图书借阅管理(借阅图书、归还图书)、密码修改、系统管理(注销、退出);b.查询功能:查询读者借阅情况、查询图书借阅情况。
4)系统性能:与实际图书馆管理工作需要相适应,信息更新及时,数据查询高效准确,提高工作人员的管理效率。
5)系统输入:用户名,用户密码,图书的各种信息,读者的各种信息等。
1.2系统运行条件分析
此软件系统需要至少一台计算机为服务器,并要求该计算机装有Microsoft Visual Studio及 SQL Server详细系统要求如下:
·Windows XP 或Windows 7 及以上系统
·Microsoft Visual Studio 2005及以上
·SQL Server 2008 或更高版本数据库服务器。
2.系统设计
2.1系统功能模块设计
本系统的设计包含系统功能模块设计与数据库设计两方面,本文将对系统整体模块设计和数据库设计进行性介绍,具体功能模块将介绍管理员操作主界面、图书借阅功能、图书归还功能以及借阅记录删除功能。下面给出本系统的整体模块图:
2.2管理员功能模块
该模块具体功能是对普通用户、图书信息、读者信息及图书借阅情况等信息进行查询管理,主要包括系统管理、用户管理、图书管理、读者管理、数据统计及数据管理等功能。
1.用户管理模块:此模块下,管理员用户主要对普通用户进行添加、删除以及对普通用户进行重置密码。
2.图书管理模块:此模块包含图书类别管理和图书信息管理两个子模块。图书类别管理包含添加图书类别、修改图书类别和查询图书类别;图书信息管理包含添加图书信息、修改图书信息、查询图书信息及报废图书处理。
3.读者管理模块:此模块包含读者类别管理和读者信息管理两个子模块。读者类别管理包含添加读者类别和查改读者类别;读者信息管理包含添加读者信息、查看读者信息、查改读者信息、删除读者信息。
4.数据统计模块:此模块主要是对读者在一段时间内的借阅情况进行统计,具体包含最热图书类别统计、最热图书统计、活跃读者统计、失信读者统计。
数据管理模块:此模块为管理员对一段时间的读者借阅情况(已还书)进行删除。
系统管理:此模块包含注销和退出。
管理员模块的整体设计图如下:
2.3普通用户功能模块
该模块具体功能是对读者图书借阅、图书借阅情况、个人密码等信息进行查询管理,主要包括系统管理、图书借阅、借阅情况查询及密码修改等功能。
1.图书借阅模块:此模块包含图书借阅和归还图书两个功能。
2.借阅情况查询模块:此模块包含读者借阅情况查询和图书借阅情况查询两个功能。
3.密码修改模块:此模块一般用来修改用户修改普通用户密码。
4.系统管理:此模块包含注销和退出。
普通用户模块的整体设计图如下:
3.数据库设计
根据需求分析,一个基本的图书借阅管理系统数据库大致包括6个表:用户信息表(Manager)、图书类别表(BookCategory)、图书信息表(BookList)、读者类别表(ReaderCategory)、读者信息表(Reader)、借阅信息表(BookLendList)。分别存放相应子功能模块的数据信息,各表之间相互关联,数据统一操作。下面给出本系统数据库设计的E-R图:
-
create
database
Library
-
go
-
use
Library
-
-
--管理员表
-
create
table Manager
-
(
-
managerid
char(
20) primary
key,
--账号
-
managerPassword
char(
12)
not
null,
--密码
-
mIdentity
bit
not
null
default
1,
--身份(管理员-1、工作人员-0)
-
)
-
-
--图书类别表
-
create
table BookCategory
-
(
-
bCategoryid
int primary
key,
--图书类别编号
-
bCategoryname
nchar(
16)
not
null,
--图书类别名称
-
)
-
-
--图书信息表
-
create
table BookList
-
(
-
ISBN
char(
25) primary
key,
--ISBN
-
BookName
nchar(
30)
not
null,
--书名
-
bCategoryid
int
not
null
foreign
key
references BookCategory,
--图书类别编号
-
author
nchar(
20)
not
null,
--第一作者
-
publisher
nchar(
30)
not
null,
--第一出版社
-
publishTime
int
not
null,
--出版年份
-
bookstate
bit
not
null
default
1,
--状态(正常-1,报废-0)
-
num
int
not
null,
--库存数目
-
lendnum
int
not
null,
--借出数目
-
price
float
not
null
--单价
-
)
-
-
--读者类别
-
create
table ReaderCategory
-
(
-
Rcategoryid
int
not
null primary
key,
--读者类别编号
-
Rcategoryname
nchar(
10)
not
null,
--读者类别名称
-
Rbnum
int
not
null,
--可借书数目
-
Rday
int
not
null
--可借书天数
-
)
-
-
--读者信息表
-
create
table Reader
-
(
-
Rid
char(
19) primary
key,
--身份证号
-
Rname
nchar(
10)
not
null,
--姓名
-
Rcategoryid
int
not
null
foreign
key
references ReaderCategory,
--类别(学生,教师等)
-
Phone
char(
11),
--电话
-
RbLnum
int
not
null,
--已借书数目
-
)
-
-
--借书记录明细
-
create
table BookLendList
-
(
-
Rid
char(
19)
not
null
foreign
key
references Reader,
--读者身份证号
-
ISBN
char(
25)
not
null
foreign
key
references BookList,
--ISBN
-
LendTime datetime
not
null
Default
getdate(),
--借书时间
-
BackTime datetime
not
null
Default
getdate(),
--还书时间
-
money
float
not
null,
--超期扣款
-
isback
bit
not
null,
--是否已还书
-
renew
bit
not
null
--是否续借
-
)
-
4.页面展示
5.源代码
项目源代码及数据库代码,见云盘链接:
【如果本博文对你有帮助,动动手指,点个赞呗,诚谢~】
链接:https://pan.baidu.com/s/1vLQdKXXPTquNTT_t71Dg-A
提取码:4kut【注】用户登录账号密码是存储在数据库中的,自己填写。具体要求在SQL代码中也加了注释。
【注】:代码中一些配置需要根据自己实际情况进行填写。例如:Login.cs文件中第30行,(string connstring = "Data Source = .;Initial Catalog = Library;User ID= sa;Pwd=123456";),数据库相关信息需自己设置,其他文件类似。我使用的使SQL Server验证,如果你使用Windows验证,请自行查找解决办法(很简单实现)。
转载:https://blog.csdn.net/Aibiabcheng/article/details/106482492