大家好,又见面了,我是你们的朋友全栈君。
目录
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/1shOsTOfdhcpjhiUg2vwUdg
提取码:yl1d【注】用户登录账号密码是存储在数据库中的,自己填写。具体要求在SQL代码中也加了注释。
【注】:代码中一些配置需要根据自己实际情况进行填写。例如:Login.cs文件中第30行,(string connstring = “Data Source = .;Initial Catalog = Library;User ID= sa;Pwd=123456”;),数据库相关信息需自己设置,其他文件类似。我使用的使SQL Server验证,如果你使用Windows验证,请自行查找解决办法(很简单实现)。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/150080.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...