目录
一.研究目的
1.1背景及意义
21世纪初,人类社会继工业文明之后,进入知识经济与信息时代。高新技术的迅猛发展,信息技术的广泛应用,全球经济趋于一体化。在新经济与信息时代,随着计算机技术的迅猛发展,信息技术资源的开发和利用对社会经济的发展起着举足轻重的作用。同时,社会的信息化发展也有了长足的进步,计算机技术越来越深入各行各业,图书馆也由传统向数字化转变,为广大的用户提供更为周到和便捷的服务,这就要求各个环节都均衡发展,从软硬件双方面推进社会的信息化建设。网上图书预约系统就是在此背景下,志在追求如何为读者提供更为便利的服务,能够在网上方便地对图书进行预约和查询并及时了解最新的图书信息,而且也使图书管理员更为方便有效地管理种类繁多的图书。本系统可以完成图书的预约、查询等功能以及图书信息的录入、修改、维护,另外还可以对用户进行分组并赋予权限,以满足安全性方面的要求。系统的组成模块主要有身份验证模块、用户个人信息模块、图书查询预约模块、信息发布模块、图书管理模块和系统管理模块。
1.2主要研究思路和方法
本系统的开发要求采用B/S结构,进行网上图书预约系统的设计与开发。因此,本设计首先分析该系统的相关功能,结合本设计的相关要求写出需求分析;其次,综合运用以前所学的相关知识,选择所熟悉的开发工具进行本设计的开发;在设计中以需求分析为基础,写出系统开发计划、实现流程及相关问题的实现方法;最后,在系统开发完毕后,进行调试和运行,做好调试和运行的相关记录。
二.需求分析
通过对用户需求调研及分析,确定系统应具备的功能,包括:安全管理,用户个人信息管理,图书查询及预约,信息发布,图书信息管理,用户信息管理,用户角色权限管理。其具体功能设计如下:
1、安全管理
提供用户登录、注销以及修改密码等功能。
2、用户个人信息管理
每个用户可以对自己的信息进行查看以及修改密码等操作,还可以查看和删除自己的预约信息。
3、图书查询及预约
根据一定的条件对图书进行查询,并可以查看图书的详细信息。用户登录后可以对查询到的图书进行预约操作。
4、信息发布
用户可以查看当前最新图书信息以及当前预约信息和历史预约信息。
5、图书信息管理
图书管理员可以对图书进行添加、更新及删除操作。在图书管理员录入图书信息时,需要输入图书名称、图书作者、出版社及价格等信息,同时还需要选择图书状态。对于已存在的图书信息同样可以对其进行修改和删除操作。
6、用户信息管理
系统管理员可以添加新用户,并对用户的信息进行修改更新操作。在用户编辑修改页面,可以更改用户类别和用户状态等,但不可以对用户的ID进行修改。
7、系统角色权限管理
系统管理员可以添加、修改和删除某一角色。对应于某一种角色,有类别名称、是否允许预约、是否允许管理图书信息、是否允许管理系统等参数。
1、用户身份验证模块
用户身份验证模块实现用户合法性检查,把用户ID保存到Session中,而在后面的页面中通过判断这个Session值是否为空来判断用户是否登录。在这个模块中提供注销和修改密码的功能。
2、用户个人信息管理模块
在用户个人信息管理模块里主要包括了查看用户个人信息和预约信息等功能,同时还可以在预约信息列表中查看当前预约图书的状态及到书情况,并可以取消预约的图书。
3、图书查询预约模块
图书查询预约模块提供用户查询和预约图书。查询可以分为简单查询、普通查询和高级查询等3种。用户查询到书后,可以点击预约按钮对相应的图书进行预约。
4、信息发布模块
信息发布模块主要提供的是查看最近上架的图书信息、当前预约图书信息和历史预约图书信息等功能,以方便用户查看,并起到提示作用。这个信息是面向所有的用户,并不需要登录。
5、图书管理模块
图书管理模块主要提供对图书信息的管理,包括了图书的添加、更新和删除操作。
6、系统管理模块
系统管理模块包括用户信息管理和角色权限管理两个功能。用户信息管理主要包括了用户信息的添加与删除、查询等功能。而角色权限管理主要包括了角色权限的添加、修改与删除功能。在设计的时候,将不同的功能模块当作一种权限分配给某角色组,一种角色组里面可以有不同的用户,对于某一用户,他具有其角色的权限。
三.数据库设计
在本系统中,存在用户、图书和角色3种对象实体。
用户实体E-R图
图书实体E-R图
角色实体E-R图
1、系统中所用到的表及用途
表1 系统所用表
表名 | 用途 | 表名 | 用途 |
UserInfo | 用户信息表 | BookInfo | 图书信息表 |
BookingInfo | 预约信息表 | LendInfo | 借阅信息表 |
RoleInfo | 角色权限表 |
2、用户信息表(UserInfo)
表2 用户信息表
名称 | 数据类型 | 数据长度 | 作用 |
UserID | varchar | 20 | 用户ID(用户登录名,主键) |
UserName | varchar | 50 | 用户真实姓名 |
Pass | varchar | 50 | 用户密码(初始为用户ID) |
Sex | varchar | 10 | 用户性别 |
RoleID | int | 4 | 角色ID |
| varchar | 50 | 用户E-mail |
Unit | varchar | 100 | 单位 |
Phone | varchar | 20 | 电话 |
State | int | 4 | 当前状态(0-挂起,1-激活) |
3、图书信息表(BookInfo)
表3 图书信息表
名称 | 数据类型 | 数据长度 | 作用 |
BookID | int | 4 | 图书ID(自增,主键) |
BookName | varchar | 100 | 图书名 |
PubName | varchar | 100 | 出版社名称 |
BookAuthor | varchar | 50 | 图书作者 |
BookStyle | varchar | 20 | 图书类别 |
UploadDate | smalldatetime | 4 | 上架时间 |
Series | varchar | 50 | 丛书名 |
Subject | varchar | 300 | 主题 |
Language | varchar | 10 | 语言 |
ISBN | varchar | 50 | ISBN号 |
SearchNO | varchar | 50 | 索取号 |
PubDate | smalldatetime | 4 | 出版日期 |
BookState | int | 4 | 图书状态 |
Price | float | 8 | 价格 |
BarCode | varchar | 50 | 图书条码 |
IsBorrow | bit | 1 | 图书是否被借过(默认值为0) |
4、借阅信息表(LendInfo)
表4 借阅信息表
名称 | 数据类型 | 数据长度 | 作用 |
LendID | int | 4 | ID(自增,主键) |
BookID | int | 4 | 图书ID |
UserID | varchar | 20 | 用户ID |
LendDate | smalldatetime | 4 | 借阅日期 |
ReturnDate | smalldatetime | 4 | 归还日期 |
IsBack | int | 4 | 是否归还 |
5、预约信息表(BookingInfo)
表5 预约信息表
名称 | 数据类型 | 数据长度 | 作用 |
BookingID | int | 4 | 预约ID(自增,主键) |
BookID | int | 4 | 图书ID |
UserID | varchar | 20 | 用户ID |
BookingState | int | 4 | 是否到书 |
BookingDate | datetime | 8 | 预约时间 |
State | int | 4 | 预约状态(0-已失效,1-有效,2-已过期,默认值为1) |
6、角色权限表(RoleInfo)
表6 角色权限表
名称 | 数据类型 | 数据长度 | 作用 |
RoleID | int | 4 | 角色权限ID(自增,主键) |
RoleStyle | varchar | 50 | 角色名称 |
BookNum | int | 4 | 允许借书数 |
BookDate | int | 4 | 允许借书天数 |
AllowBooking | int | 4 | 是否允许预约(0:否 1:是) |
IsBookManager | int | 4 | 是否为图书管理员(0:否 1:是) |
IsSysManager | int | 4 | 是否为系统管理员(0:否 1:是) |
四.页面展示
个人预约信息的主界面图
代码展示
Private Sub MisBtn_Click (ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MisBtn.Click
QuerySql ()
If txtContent.Text.ToString.Trim <> "" Then
Dim str As String = txtContent.Text.ToString.Trim
sqlstr += " where a.BookAuthor like '%" + str + "%' or a.Subject like '%" + str + "%' or a.BookName like '%" + str + "%'"
End If
Session ("sqlstr") = sqlstr
BindGrid ()
End Sub
简单查询页面的主界面图
当前预约信息的主界面图
历史预约信息的主界面图
图书编辑页面的主界面图
五.免费源码获取
本文只展示了部分功能和源码需要免费源码可关注后私信或
标签:varchar,C#,用户,信息,预约,int,源码,图书 From: https://blog.csdn.net/2401_84374348/article/details/142584931