基于net的网上图书销售系统的设计与实现毕业论文内容摘要:

:以列表方式显示图书信息供用户浏览。 3) 图书显示:显示图书的详细信息。 4) 图书搜索:使用搜索功能使用户快速地找到所喜欢的图书。 5) 收藏夹:用户可以先将自己感兴趣的图书收藏起来,以便下次登录后查 第 4 页 共 28 页 看相关信息,如果打算购买时再放入购物车中。 6) 购物车:这是网上图书销售系统的基本元素。 用户找到所喜欢的图书时,可以 将其放入购物车中,再继续查看其它图书。 7) 图书订单:用户下订单购买图书,由管理员定期负责处理,根据订单信息向用户送货。 后台管理员功能: 管理员负责维护整个系统的运行,管理系统所有的信息和数据,应该提供以下功能。 1) 图书管理:维护网上图书销售系统中的所有图书信息。 2) 分类信息管理:维护系统中的所有分类信息。 3) 出版商信息管理:维护系统中的所有出版商信息。 4) 用户信息管理:显示所有注册用户的信息。 5) 订单管理:定期对用户订单进行处理,向用户送货。 系统基本结构 由于 B/S(Browser/Server)结构具有较好的独立 性、可伸缩性和安全性,适合于不同数据库之间的互连,并且便于管理维护,因此整个系统采用客户端、Web 服务器及数据库服务器的 B/S 结构进行设计。 基本结构如图 21所示。 图 31 系统基本结构 利用 IIS 架构 Web 服务器,用于连接客户端和数据库服务器。 对于客户端发出的需要对数据库进行访问的请求, Web 服务器负责客户端与数据库服务器的网络通信,并将相关数据嵌入返回给客户端的 Web 页面;对于客户端发出的不需要对数据库进行访问的请求, Web 服务器将直接处理这些请求,并将最终生成的 Web 页面发往客户端浏览器。 系 统设计 系统模块设计 分为用户功能模块设计和管理员功能模块设计两方面,用户登录后,可以进行图书浏览、下订单等操作;管理员登录后,可以进行图书管理、分类信息管理、出版商信息管理、用户信息管理和订单管理等操作。 1. 用户功能模块设计: 普通用户的各个功能模块,具体设计如图 32 所示: 第 5 页 共 28 页 用 户 功 能 模 块图 书 搜 索 收 藏 夹 购 物 车 图 书 订 单用 户 注册 登 录图 书 浏 览 图 书 显 示图 32 用户功能模块 2. 管理员功能模块设计: 管理员负责管理整个系统所有的信息和数据,并做相应的一些处理。 其功能模块如图 33所示。 管 理 员 功 能 模 块库 存 书 的信 息 管 理分 类 信 息管 理用 户 信 息查 询处 理 订 单出 版 商 信息 管 理 图 33 管理员功能模块 数据库设计 数据库主要由 9 个数据表组成。 Books(图书信息表), Items(图书项信息表), Categories(图书分类信息表)存储图书的分类信息, ItemCategory(图书项与分类关联信息表), Publishers(出版商信息表)存储出版商信息,Customers(客户信息表)存储用户注册信息, Favorites(收藏夹信息表)存储用户的收藏夹信息, Orders(订单信息表)存储订单的各项信息, OrderItems(订单项信息表)存储订单具体的购 买信息。 从而,可详细设计出各数据库对象,包括数据表和存储过程。 数据表: 图书相关信息表 分别如表 3表 3表 3表 3表 35 所示。 第 6 页 共 28 页 表 31 图书信息表 Books Books(ItemId为主键, PublisherId为外键 ) 列(属性)名 中文名称 类型 宽度 是否允许为空 ItemId 图书项 ID号 int 4 NOT NULL PublisherId 出版商 ID号 int 4 NOT NULL Author 作者名 nvarchar 40 NOT NULL ISBN ISBN号 char 10 NOT NULL SaleNum 已销售数量 int 4 NOT NULL 表 32 图书项信息表 Items Items(PKId为主键 ) 列(属性)名 中文名称 类型 宽度 是否允许为空 PKId 图书项唯一 ID int 4 NOT NULL Name 书名 nvarchar 255 NOT NULL ImageFileSpace 图书封面图文件地址 nvarchar 255 NULL Description 说明 nvarchar 2020 NULL UnitPrice 单价 Momey 8 NOT NULL 表 33 图书分类信息表 Categories Categories(PKId为主键 ) 列(属性)名 中文名称 类型 宽度 是否允许为空 PKId 分类唯一 ID int 4 NOT NULL Description 分类说明 nvarchar 255 NULL 表 34 图书项与分类关联信息表 ItemCategory ItemCategory(ItemId为主键, CategoryId为外键 ) 列(属性)名 中文名称 类型 宽度 是否允许为空 ItemId 图书项 ID号 int 4 NOT NULL CategoryId 分类 ID号 int 4 NOT NULL 表 35 出版商信息表 Publishers Publishers(PKId为主键 ) 列(属性)名 中文名称 类型 宽度 是否允许为空 PKId 出版商唯一 ID int 4 NOT NULL Name 出版商名称 nvarchar 40 NOT NULL 用户相关信息表分别如表 3表 37所示。 表 36 客户信息表 Customers Customers(PKId为主键 ) 列 (属性)名 中文名称 类型 宽度 是否允许为空 PKId 客户唯一 ID int 4 NOT NULL Email 客户 Email nvarchar 50 NOT NULL Password 客户登录密码 binary 24 NULL Name 客户名称 nvarchar 40 NULL 表 37 收藏夹信息表 Favorites 第 7 页 共 28 页 Favorites(PKId为主键, CustomerId、 ItemId为外键 ) 列(属性)名 中文名称 类型 宽度 是否允许为空 PKId 收藏夹 ID号 int 4 NOT NULL CustomerId 客户 ID号 int 4 NOT NULL ItemId 图书项 ID号 Int 4 NOT NULL 订单相关信息表分别如表 3表 39所示。 表 38 订单信息表 Orders Orders(PKId为主键, CustomerId为外键 ) 列(属性)名 中文名称 类型 宽度 是否允许为空 PKId 订单唯一 ID int 4 NOT NULL CustomerId 客户 ID号 int 4 NULL Status 订单状态 int 4 NULL OrderData 订单生成日期 datetime 8 NULL ShipToName 收件人名称 nvarchar 40 NULL ShipToAddress 送货地址 nvarchar 255 NOT NULL SubTotal 总价 Momey 8 NULL 表 39 订单项信息表 OrderItems OrderItems( OrderId和 ItemId为主键) 列(属性)名 中文名称 类型 宽度 是否允许为空 OrderId 订单 ID号 int 4 NOT NULL ItemId 图书项 ID号 int 4 NOT NULL UnitPrice 单价 money 8 NOT NULL Quantity 购买数量 Int 4 NOT NULL 存储过程: 因为存储过程可以在程序中被多次调用,而不必多次重复编写该存储过程的 SQL 语句,所以数据库中建立了大量的存储过程,便于将相关信息加入到数据库中。 与客户相关的存储过程有:新客户注册( CustomerRegister),客户登录( CustomerLogin),修改客户信息( EditCustomer),获取所有客户的信息( GetCustomers), 获取单个用户的信息( GetCustomerById)。 与图书相关的存储过程有:新增图书( AddBook),删除图书( DelBook),修改图书信息( EditBook),获取所有图书信息( GetAllBooks),根据图书项ID 获取单本图书信息( GetBookById),根据分类 ID 获取图书信息( GetBooksByCategoryId ), 根 据 分 类 ID 获 取 热 门 书 图 书 信 息( GetPopBooksByCategoryId),根据书名获取图书信息( GetBooksByTitle),根据关键词获取图书信息( GetBooksByKeyword),根据 ISBN 获取图书信息( GetBooksByISBN),根据出版商获取图书信息( GetBooksByPublisherId)根据作者获取图书信息( GetBooksByAuthor)。 第 8 页 共 28 页 与出版商相关的存储过程有:新增出版商( AddPublisher),删除出版商( DelPublisher),修改出版商信息( EditPublisher),获取所有出版商信息( GetPublishers)。 与图书分类相关的存储过程有:新增图书分类( AddCategory),删除图书分类( DelCategory),修改图书分类说明( EditCategory),获取图书分类信息(GetCategories)。 与收藏夹相关的存储过程有:新增收藏记录( AddFavorite),删除收藏信息( DelFavorite),根据客户 ID 获取收藏记录( GetFavoritesByCustomerId)。 与订单相关的存储过程有:获取订单信息( GetOrders),获取单条订单信息( GetOrderById),根据客户 ID 获取订单信息( GetOrdersByCustomerId),根据状态获取订单信息( GetOrdersByStatus),根据日期获取订单信息( GetOrdersByDate),提交订单( SubmitOrder),修改订单( EditOrder),取消订单( CancelOrder),接受订单( AcceptOrder),确定订单( ConfirmOrder),撤销订单( RevokeOrder ), PopFirstWord , 插 入 订 单 明 细 记 录( InsertOrderDetailsByList),插入单条订单项( InsertOrderDetail)。 由于该系统建立的存储过程很多,所以在此就只列举出一个存储过程的 SQL脚本。 新增图书存储过程 AddBook 的 SQL 脚本如下: CREATE PROCEDURE AddBook @Name NVARCHAR(255), @ImageFileSpace NVARCHAR(255), @Description NVARCHAR(2020), @UnitPrice MONEY, @PublisherId INT, @Author NVARCHAR(40), @ISBN NCHAR(13), @CategoryId INT, @ItemId INT = NULL OUTPUT output可以返回一个值 AS begin tran 事务 新增 Items表记录 insert Items (Name, ImageFileSpace, Description, UnitPrice) select @Name,@ImageFileSpace,@Description,@UnitPrice select @ItemId = @@IDENTITY 获取数据表中最后一条插入数据的 IDENTITY值 第 9 页 共 28 页 新增 Books表记录 insert Books (ItemId, PublisherId, Author,ISBN) select @ItemId,@PublisherId,@Author,@ISBN 新增 ItemCategory表记录 insert ItemCategory (ItemId,CategoryId) select @ItemId,@CategoryId mit tran return 0 GO 4 网上图书销售系统开发实现 用户功能模块实现 用户功能模块主 要包括注册登录、图书浏览、图书显示、图书搜索、购物车、收藏夹、图书订单这几个部分。 在程序设计中,。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。