本章主要内容是模拟电子商务,以在线购物商城作为实例,演示了电子商城的主要功能以及这些功能是如何实现的。普通的电子商城应包括商品展示、购物车管理、订单管理、商品管理等主要功能,本章案例围绕这些功能展开叙述,并按照管理信息系统的设计步骤和方法逐一介绍。
15.1.1系统功能描述
作为在线购物商城,其主要功能应包括商品管理,用户管理,商品检索、订单管理、购物车管理等。具体描述如下。
(1)商品管理功能
-商品分类的管理,包括商品种类的添加、删除、类别名称更改等功能;
-商品信息的管理,包括商品的添加、删除、商品信息的变更等功能;
(2)用户管理
-用户注册,如果用户注册为会员,就可以使用在线购物的功能。这里我们指定用户需要填写信息比较简单。
-用户信息管理,用户可以更改自己的私有信息,如密码等;
(3)商品检索
-商品速查,根据查询条件,速查用户所需商品;
-商品分类浏览,按照商品的类别列出商品目录;
(4)订单管理
-订单信息浏览
-订单结算
-订单维护
(5)购物车管理
-购物车中商品的增删;
-采购数量的改变
-生成采购订单
15.1.2功能模块划分
根据上节分析的系统功能需求,我们可以得到系统的功能模块,如图15.1所示。
图15.1系统功能模块图
15.1.3文件结构和系统流程分析
注册会员参与购物的流程很清晰:注册\'登陆系统\'选择商品\'放入购物车\' 提交订单。
系统流程图如15.2所示。
图15.2 系统流程图
该系统共包括15个必备文件,描述如下:
Web.config:系统配置信息。包数据库连接信息和管理员信息;
index.aspx:系统主页,提供新品上架展示、用户管理入口、销售排行榜、管理员入口和商品分类浏览入口等功能;
Admin_Login.aspx:管理员登录系统的入口;
Pinfor_Management.aspx:提供商品类别管理功能;
Pkinds_Management.aspx:提供商品信息管理功能
Admin_Login.htm:网页框架,增加系统的紧凑性,子窗体包括Admin_Login.aspx 、Pinfor_Management.aspx 和Pkinds_Management.aspx;
PKinds_MoreList.aspx:提供商品分类浏览功能;
PSearch.aspx:提供商品速查功能;
UserReg.aspx:提供用户注册功能;
top.ascx:Web用户控件,用于页面页眉,提供用户注册会员快速登录入口和商品分类浏览入口;
OrderList.aspx:提供订单管理功能,更加用户身份不同,提供不同的权限;
MyShopcar.aspx:提供购物车管理功能;
foot.ascx:Web用户控件,用于页面页脚,提示用户购物流程和管理员登录入口;
Login.aspx:注册会员登录入口;
由于用户信息管理的基本原理和商品管理相同,为了节约篇幅,我们这里不在特意列出,系统也省去了这一块。
15.2.1 数据库的设计
我们仍采用Access2003数据库系统作为本章案例的数据库。在应用程序根目录下新建一个数据库,命名为dida_shop.mdb。根据析,系统须包含一下5个数据表:
pkinds数据表:用于存放商品类别信息,包括类别ID和名称,表结构和字段信息如图15.3所示。
图15.3 pkinds数据表信息
pinfor数据表:用于存放商品信息,包括商品所属类别、市价、折扣价、信息描述、商品图片等,表结构和字段信息如图15.4所示。
图15.4 pinfor数据表信息
salelist数据表:用户存放订单信息,包括交易日期,订单销售额等,表结构和字段信息如图15.5所示。
图15.5 salelist数据表信息
salerecord数据表:用于存放商品销售记录,表结构和字段信息如图15.6所示。
图15.6 salerecord数据表信息
userinfor数据表:用于存放用户信息,表结构和字段信息如图15.7所示。
图 15.7 userinfor数据表信息
15.2.2 Web.config文件配置信息
web.config配置信息如下:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<!-- 自定义配置信息 -->
<appSettings>
<!-- 增加管理员帐号 -->
<add key="AdminID" value="admin" />
<!-- 增加管理员密码 -->
<add key="PassWord" value="12345" />
<!-- 增加数据库驱动字符串 -->
<add key="constr" value="provider=microsoft.jet.oledb.4.0;data source=" />
<!-- 增加数据库名称 -->
<add key="dbs" value="\dida_shop.mdb" />
</appSettings>
<system.web>
<compilation defaultLanguage="vb" debug="true" />
<customErrors mode="RemoteOnly" />
<authentication mode="Windows" />
<authorization>
<allow users="*" /> <!-- 允许所有用户 -->
</authorization>
<trace enabled="false" requestLimit="10" pageOutput="false" traceMode="SortByTime" localOnly="true" />
<sessionState
mode="InProc"
stateConnectionString="tcpip=127.0.0.1:42424"
sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes"
cookieless="false"
timeout="20"
/>
<globalization requestEncoding="utf-8" responseEncoding="utf-8" />
</system.web>
</configuration>
根据上面的分析,我们仍采用Visual Studio.NET 2003作为本系统的设计工具。打开Visual Studio.NET2003,新建一个Web应用程序,命名为ShoppingOnLine。把上节已经建立好的数据库存放到ShoppingOnLine的根目录下。下面是各个页面的设计代码和后台逻辑代码。
15.4 本章小结
本章旨在通过模拟实际应用中的电子商务,从而学习有关的知识点,以及综合运用ASP.NET技术进行Web应用程序开发,如Web控件的应用、ADO.NET数据库控件的应用、SQL语句的综合应用和订单管理,等等一些有实用并且常用的知识。
本章的数据库环境是在Access 2003下进行的,但实际中至少也是在MS SQLServer2000中进行。建议读者结合第7章的知识,将本章中的数据库导入MS SQLServer2000中,并修改Web.cinfig中的数据库配置信息,就可以实现更高级的电子商务平台了。