电子商务系统教案.docx
《电子商务系统教案.docx》由会员分享,可在线阅读,更多相关《电子商务系统教案.docx(17页珍藏版)》请在冰豆网上搜索。
![电子商务系统教案.docx](https://file1.bdocx.com/fileroot1/2023-4/19/e8ad51d3-c1f8-4fce-9fd9-8579e202a284/e8ad51d3-c1f8-4fce-9fd9-8579e202a2841.gif)
电子商务系统教案
一、系统工作流程
系统分为前台普通用户界面和后台管理界面。
商品的购物流程
在前台子系统用户可以登录,注册,可以浏览商品,搜索商品,购买商品,购物车查询,订单的查询,前台网站还进行新商品宣传展示,新上架商品和热销商品推荐等。
后台子系统供电子商务公司内部管理人员使用,可以进行新品上传,商品修改和调整,商品种类维护,可以对普通用户进行管理;对用户的订单进行管理,系统工作流程可以用图形象描述如下:
系统的功能模块图设计如下:
各模块功能介绍:
用户信息管理模块的实现:
即用户注册、登录、基本信息的修改
商品信息增加及管理模块的实现:
即发布商品信息、删除、修改商品信息
商品查询及销售模块实现:
即商品搜索、商品销售
系统管理模块:
管理员的登录、用户信息管理的增加、修改、和删除,商品基本属性管理、商品的上传数据库等。
二、数据库设计
(一)数据库的表结构(含实体完整性)设计如下:
根据以上的系统功能,设计数据库的表结构
1、商品信息表BookInfo
2、商品类别表
3、用户信息表UserInfo
4、管理用户表ManageUser
5、购物车信息表ShoppingCart
6、用户订单表Orders
7、订单详情表OrderDetail
1、商品信息存储于BookInfo的结构如下:
2、商品类别表
3、将用户信息表UserInfo
4、管理用户表ManageUser
5、购物车信息表ShoppingCart
6、用户订单表Orders
7、订单详情表OrderDetail
(二)参照完整性设计
表之间的这张关系图展示了表之间的关系。
它们之间通过主键和外间的关系来确定的。
(三)、存储过程的创建
为了构建三层架构的应用程序,我们把所有对数据的操作的命令,全部写在存储过程中,这样,在应用程序中,只需要调用这些存储过程即可,无须再写数据操纵的命令了。
ALTERPROCEDURE[dbo].[AddBook]
@booknamenvarchar(50),
@booktypeIdint,
@authornvarchar(50),
@ISBNnvarchar(16),
@publishernvarchar(50),
@pricefloat,
@covernvarchar(50),
@descriptionntext,
@amountint,
@statusbit
as
insertbook(booktypeId,bookname,author,ISBN,publisher,price,cover,description,amount,status)
values(@booktypeId,@bookname,@author,@ISBN,@publisher,@price,@cover,@description,@amount,@status)
ALTERPROCEDURE[dbo].[AddBookType]
@booktypenamenvarchar(50)
AS
InsertintoBookType(booktypename)Values(@booktypename)
ALTERPROCEDURE[dbo].[AddManageUser]
@manageusernamenvarchar(30),
@passwordvarchar(32),
@mailnvarchar(30)
AS
InsertintoManageUser(manageusername,Password,Mail)Values(@manageusername,@password,@mail)
ALTERPROCEDURE[dbo].[AddUser]
@usernamenvarchar(50),
@passwordvarchar(32),
@mailnvarchar(50),
@Xinminnvarchar(50),
@Sexbit,
@Telnvarchar(50),
@Addressnvarchar(50)
AS
InsertintoUserInfo(userName,Password,Mail,Xinmin,Sex,Tel,Address)Values(@username,@password,@mail,@Xinmin,@Sex,@Tel,@Address)
ALTERPROCEDURE[dbo].[ChangePassword]
@newPasswordvarchar(32),
@usernamenvarchar(50),
@oldPasswordvarchar(32)
AS
UpdateUserInfoSetPassword=@newPasswordWhereusername=@usernameAndPassword=@oldPassword
ALTERProcedure[dbo].[CreateOrderToOrdersAndOrderDetails]
(
@UserIDint,
@CartIDnvarchar(50),
@OrderDatedatetime,
@SumMoneyfloat,
@OrderIDintOUTPUT
)
AS
BEGINTRANSACTIONAddOrder
INSERTINTOOrders
(
UserID,
SumMoney,
OrderDate
)
VALUES
(
@UserID,
@SumMoney,
@OrderDate
)
SELECT
@OrderID=@@Identity
INSERTINTOOrderDetails
(
OrderID,
BookID,
Quantity
)
SELECT
@OrderID,BookID,Quantity
FROM
ShoppingCart
WHERE
CartID=@CartID
EXECShoppingCartEmpty@CartID
COMMITTRANSACTIONAddOrder
ALTERPROCEDURE[dbo].[DealOrderPaymentForGoodsStatus]
@OrderIDint
AS
SELECT*FROMOrdersWHEREOrderId=@OrderIdANDPaymentForGoodsStatus=0
IF@@ROWCOUNT>0
BEGIN
UpdateOrdersSetPaymentForGoodsStatus=1WhereOrderId=@OrderIdANDPaymentForGoodsStatus=0
END
ALTERPROCEDURE[dbo].[GetBooksByBookId]
@BookIdint
AS
SELECTBookId,BookName,Author,ISBN,Publisher,Price,Amount,Cover,Status,Description
FROMBook
WHEREBookId=@BookId
ALTERPROCEDURE[dbo].[GetBooksByBookType]
@BookTypeIdint
AS
SELECTBookId,BookName,Author,ISBN,Publisher,Price,Cover,Amount,Status
FROMBook
WHEREBookTypeId=@BookTypeId
ORDERBYBookIdDESC
ALTERPROCEDURE[dbo].[GetOrderByOrderId]
@OrderIdint
as
SELECTOrderId,UserId,UserName,Xinmin,Address,OrderDate,SumMoney,PaymentForGoodsStatus,CarryGoodsStatus,DealDate
FROMOrdersVWhereOrderId=@OrderId
ALTERPROCEDURE[dbo].[GetOrdersByUserId]
@userIdint
AS
SELECTOrderId,UserId,UserName,Xinmin,Address,OrderDate,SumMoney,PaymentForGoodsStatus,CarryGoodsStatus,DealDate
FROMOrdersVWhereUserId=@userId
ALTERPROCEDURE[dbo].[GetShoppingCartByCartId]
@CartIdnvarchar(50)
AS
SELECTId,CartID,BookName,Price,Quantity
FROMShoppingCart,Book
WHEREBook.BookId=ShoppingCart.BookIDANDCartId=@CartId
ALTERPROCEDURE[dbo].[ManagerLogin]
@ManageUserNamenvarchar(30),
@passwordvarchar(32)
AS
SelectManageUserIdfromManageUserWhereManageUserName=@ManageUserNameAndPassword=@password
ALTERPROCEDURE[dbo].[SearchBook]
@Msgnvarchar(100)
AS
select*frombook
wherebooknamelike'%'+@Msg+'%'orauthorlike'%'+@Msg+'%'orpublisherlike'%'+@Msg+'%';
ALTERProcedure[dbo].[ShoppingCartAddItem]
(
@CartIDnvarchar(50),
@BookIDint,
@Quantityint
)
As
DECLARE@CountItemsint
SELECT
@CountItems=Count(BookID)
FROM
ShoppingCart
WHERE
BookID=@BookID
AND
CartID=@CartID
IF@CountItems>0
UPDATE
ShoppingCart
SET
Quantity=(@Quantity+Quantity)
WHERE
BookID=@BookID
AND
CartID=@CartID
ELSE
INSERTINTOShoppingCart
(
CartID,
Quantity,
BookID
)
VALUES
(
@CartID,
@Quantity,
@BookID
)
UPDATEBookSETSales=Sales+@Quantity,Amount=Amount-@Quantity
ALTERProcedure[dbo].[ShoppingCartEmpty]
(
@CartIDnvarchar(50)
)
AS
DELETEFROMShoppingCart
WHERE
CartID=@CartID
ALTERProcedure[dbo].[ShoppingCartRemoveItem]
(
@IDint
)
AS
DELETEFROMShoppingCart
WHEREID=@ID
ALTERProcedure[dbo].[ShoppingCartTotalMoney]
(
@CartIDnvarchar(50),
@TotalMoneyfloatOUTPUT
)
AS
SELECT
@TotalMoney=SUM(Book.Price*ShoppingCart.Quantity)
FROM
ShoppingCart,Book
WHERE
ShoppingCart.CartID=@CartID
AND
Book.BookID=ShoppingCart.BookID
IF@TotalMoneyISNULL
SELECT@TotalMoney=0
ALTERProcedure[dbo].[ShoppingCartUpdateItem]
(
@IDint,
@Quantityint
)
As
UPDATE
ShoppingCart
SET
Quantity=(@Quantity)
WHEREID=@ID
ALTERPROCEDURE[dbo].[UserLogin]
@usernamenvarchar(50),
@passwordvarchar(32)
AS
SelectuserIdfromUserInfoWhereuserName=@usernameAndPassword=@password
三、系统框架设计
系统解决方案项目构成
用B/S设计模式的三层体系结构实现电子商务系统的设计,用VS2005设计解决方案,用VC#语言在该解决方案中建立了四个项目,如图,这四个项目的有机结合构成系统。
这四个项目的名称和作用分别如下:
Web表示层,主要显示网站的页面,即和用户直接打交道的页面。
BLL业务逻辑层
DAL数据访问层
Model实体层
Model实体、DAL数据访问层、BLL业务逻辑层,合在一起对应着三层结构的业务逻辑层。
或者说业务逻辑层又分为三个子层。
四、实体层设计
实体层设计是设计出一些类,一般每个数据库的表对应一个实体类。
每个类的属性结构与数据库表的结构对应。
具体设计略
五、数据访问层(在业务逻辑层三个子层中,最难)
1、公共数据访问类DbHelper的设计。
略,结合系统代码学习。
2、具体的数据访问类设计
略,结合系统代码学习。
五、业务逻辑层
这一层的设计较简单,一般一个DLL层中的类,对应于BLL中的一个类,是把其方法的进一步封装。
详细情况结合系统代码学习。
六、表示层设计
四、系统详细设计
通过以上的系统需求分析和系统总体设计,就已经有了一个网上系统的大体轮廓了
1、前台主要功能包括
注册/登录、购物车、图书分类浏览、图书展示、特价书、图书详细信息、留言板等等。
2、书店系统前台设计的特色
(1)购物车
点击购买,把所买的书籍可以放入到购物车中。
客户可以轻松的查看购物车中的图书。
本系统充分考虑到了本模块对于客户的重要性,所以界面尽量做的简捷,采用开放式结构,一目了然,方便客户轻松掌控自已的信息。
(2)购书的详细过程
会员注册――>选择图书――>放入购物车――>结账
(3)灵活多样的图书展示区
网站前台图书显视栏目分为以下几种方式:
(1)最新推荐
(2)图书特价区(3)图书分类
3、系统提供完善的系统管理
在主页中点击商品然后购买,如果没有登录要先登录,前提是在注册号之后。
后台分为图书管理、用户管理、图书类管理。
(1)图书管理是对图书信息进行管理,添加或删除图书信息,也可对图书信息进行修改。
动态添加图书信息,信息内容要求完善。
(3)用户管理可以添加、删除用户,可以对用户进行统一的管理。
(5)图书类的管理,可以对类进行添加和删除