第15章MyPetShop综合实例
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
将用户控件添加到母版页中。其中使用了“用 户状态”用户控件和“网站导航”用户控件。 添加Web部件。 实现商品搜索功能。
15.4.1 母版页的设计(续)
33
15.4.2 首页
34
使用Microsoft Ajax技术。 添加自定义用户控件。主要使用了四个用户控 件:“热销商品自动定时刷新”用户控件、 “最新商品列表”用户控件、“商品分类列表” 用户控件和“天气预报”用户控件。 添加Web部件控件。
25
26
15.3.2 “商品分类列表”用户控 件
15.3.3 “最新商品列表”用户控件
27
15.3.4 “商品分类及商品导航”用 户控件
28
15.3.5 “网站导航”用户控件
29
15.3.6 “用户状态”用户控件
30
15.3.7 “天气预报”用户控件
31
15.4.1 母版页的设计
32
注册新用户 用户登录 修改用户密码 找回用户密码 退出系统
15.5 用户注册和登录模块
15.5.1 15.5.2 15.5.3 15.5.4 15.5.5
目录
6
15.6 购物车模块
15.6.1 购物车组件的设计与实现 15.6.2 购物车页面设计 15.6.3 购物车功能的设计与实现 15.7.1 创建订单 15.7.2 查看订单
“热销商品自动定时刷新”用户控件 “商品分类列表”用户控件 “最新商品列表”用户控件 “商品分类及商品导航”用户控件 “网站导航”用户控件 “用户状态”用户控件 “天气预报”用户控件
目录
5
15.4 前台显示页面设计
15.4.1 15.4.2 15.4.3 15.4.4
母版页的设计 首页 商品详细信息页面 商品搜索页面
UnitCost SuppId
商品成本 供应商编号
允许为空 外键
商品信息表(续)
20
Name
商品名称
varchar(80)
允许为空
Descn
商品介绍
varchar(255)
允许为空
Image
商品图片
varchar(80)
存储图片路径
Qty
商品库存量
int
不允许为空
供应商信息表
21
SuppId
Name Addr1 Addr2 City State Zip Phone
15.1.1 系统功能模块设计
8
前台商品浏览模块
9
用户
访问首页
按 商 品 分 类 浏 览 商 品
按 名 称 查 找 浏 览 商 品
查 看 最 新 商 品 信 息
查 看 热 销 商 品 信 息
查 看 各 地 天 气 预 报
用户注册和登录模块
10
用户ຫໍສະໝຸດ Baidu
否
是否注册?
是
用户注册
注册成功
登录系统
修改密码
找回密码
修改购物车中商品的数量
52
当用户将一件商品添加到了购物车后,如果还 想多买几件相同的商品,则可通过修改购物车 中商品的数量来实现。
清空购物车中商品
53
在用户把商品添加到购物车后,若不想购买添 加的所有商品,用户可以单击“清空购物车” 按钮删除购物车中的全部商品记录。
结算购物车中所有商品
54
审核订单
67
15.9 小结
68
MyPetShop综合实例的开发过程主要包括系统总 体设计、数据库设计、用户控件设计、前台页 面设计、购物车模块设计、订单处理模块设计 和后台管理模块设计等。 综合ASP.NET 4.5 Web应用程序开发全过程,给 出了一个很好的学习模板。
15.7.1 创建订单
56
15.7.2 查看订单
57
15.8 后台管理模块
58
包括商品分类管理、供应商信息管理、商品管 理和订单管理四大部分,实现页面都保存在 MyPetShop应用程序的Admin文件夹下。 启用了Forms身份验证机制和URL授权机制,只 有属于Admin角色中的用户才能访问。 注意:MyPetShop应用程序未考虑管理员用户注 册功能。因此,要注册管理员用户可通过 MyPetShop应用程序的网站配置工具实现。
State
Zip Phone Status
用户所在省份
用户电话 订单状态
varchar(80)
varchar(40) varchar(10)
允许为空
允许为空 允许为空 允许为空
用户所在城市邮编 varchar(6)
订单详细信息表
23
ItemId
订单详细 int 信息编号 订单编号 int 商品名称 varchar(80)
15.6.2 购物车页面设计
48
15.6.3 购物车功能的设计与实现
49
包括添加购物车商品、删除购物车商品、修改 购物车中商品的数量、清空购物车和重定向到 结算页等功能。
添加购物车商品
50
删除购物车商品
51
当用户不想购买某个商品时,可以先选中相应 商品前面的复选框,然后单击“删除商品”按 钮,即可删除购物车中不想购买的商品。
用户选定需要购买的商品后,可单击“结算” 按钮进行商品结算。如果用户已登录,页面将 被重定向到订单结算页面SubmitCart.aspx,如 果用户未登录或还没有注册,页面将被重定向 到用户登录页面Login.aspx。
15.7 订单处理
55
实现订单管理功能,包括创建订单和查看订单 功能。 订单处理页面只允许登录用户访问,且每个登 录用户只能查看自己的订单详细信息。
15.1.3 系统数据库总体设计
15
使用SQL Server 2012 Express进行开发。 MyPetShop.mdf数据库由开发人员建立,共包含 五个表:Category、Product、Supplier、 Order和OrderItem。 ASPNETDB.mdf数据库由系统自动生成,主要为 了存储实现Profile用户个性化配置功能、Web 部件功能、成员资格管理和角色管理等功能相 关的数据。
允许为空
Descn
商品分类描述
varchar(255) 允许为空
商品信息表
19
字 段 ProductId
说 明 商品编号 int
类 型
备 注 主键,自动递 增 外键,不允许 为空 允许为空
CategoryId 所属商品分类编号 int ListPrice 商品单价
decimal(10, 2) decimal(10, 2) int
15.4.2 首页(续)
35
15.4.3 商品详细信息页面
36
15.4.4 商品搜索页面
37
15.4.4 商品搜索页面(续)
38
15.5 用户注册和登录模块
39
提供如下功能:注册新用户、登录系统、修改 用户密码、找回用户密码和退出系统等。 启用了Forms身份验证机制。
15.5.1 注册新用户
40
15.5.2 用户登录
41
15.5.3 修改用户密码
42
15.5.4 找回用户密码
43
15.5.4 找回用户密码(续)
44
15.5.5 退出系统
45
由“用户状态”用户控件内的LoginStatus控件 实现。 当用户登录系统后,LoginStatus控件显示“退 出登录”链接。单击“退出登录”链接后将从 系统中注销用户。
系统功能模块设计 15.1.2 用户控件 15.1.3 系统数据库总体设计 15.1.4 Web.config配置文件
15.1.1
15.2 MyPetShop.mdf数据库设计
数据表设计 15.2.2 数据表联系设计
15.2.1
目录
4
15.3 用户控件设计
15.3.1 15.3.2 15.3.3 15.3.4 15.3.5 15.3.6 15.3.7
15.8.1 15.8.2 15.8.3 15.8.4 商品分类管理 供应商信息管理 商品信息管理 订单管理
15.7 订单处理
15.8 后台管理模块
15.9 小结
15.1 系统总体设计
7
总体设计包括系统功能模块设计、用户控件设 计、系统数据库总体设计和Web.config配置文 件的设计。
主键,自动递增
OrderId ProName ListPrice Qty
外键,不允许为空 允许为空
商品单价 decimal(10, 2) 允许为空 购买数量 int 不允许为空
TotalPrice 总价
decimal(10, 2) 允许为空
15.2.2 数据表联系设计
24
15.3.1 “热销商品自动定时刷新” 用户控件
退出系统
购物车模块
11
订单结算模块
12
用户 否
是否登录? 是 订单结算
用户登录
填写相关信息
订单结算成功
后台管理功能模块
13
管理员
登录后台管理页面
商 品 分 类 管 理
商 品 信 息 管 理
供 应 商 信 息 管 理
订 单 管 理
15.1.2 用户控件
14
AutoShow用户控件——实现热销商品自动定时刷新功能。 Category用户控件——实现商品分类显示功能。 NewProduct用户控件——实现最新商品显示功能。 PetTree用户控件——实现商品分类及包含商品的导航 功能。 SiteMap用户控件——根据网站地图实现网站导航功能。 UserStatus用户控件——根据用户的不同角色,显示不 同的登录状态信息。 Weather用户控件——实现全国所有省、直辖市的主要 城市天气预报功能。
15.1.4 Web.config配置文件
16
源程序:Web.config
15.2 MyPetShop.mdf数据库设计
17
存储了商品分类、商品、供应商、订单等信息。
商品分类信息表
18
字 段
说 明
类 型
备 注
CategoryId 商品分类编号
int
主键,自动递增
Name
商品分类名称
varchar(80)
订单信息表
22
OrderId
订单编号
int varchar(80)
datetime varchar(80) varchar(80) varchar(80)
UserName 用户名
OrderDate 订单日期 Addr1 Addr2 City 用户地址1 用户地址2 用户所在城市
主键,自动递 增 不允许为空 不允许为空 允许为空 允许为空 允许为空
15.6 购物车模块
46
实现设计、查看和管理购物车的功能,包括购 物车的组件设计、添加商品到购物车、查看购 物车中的商品、修改购物车中的商品四大部分。
15.6.1 购物车组件的设计与实现
47
访问、存储和显示购物车数据的机制。 实现匿名用户购物车内容向注册用户转移的机 制。 注意:Profile_MigrateAnonymous()方法代码 包含于Global.asax文件中。
清华大学出版社
第15章 MyPetShop综合实例
作者:沈士根、汪承焱、许小东
本章要点:
2
了解MyPetShop系统的总体设计。 熟悉系统数据库设计。 掌握用户控件设计。 掌握前台功能模块设计。 掌握购物车模块。 掌握订单处理模块。 掌握后台功能管理模块。
目录
3
15.1 系统总体设计
供应商编号
供应商名称 供应商地址1 供应商地址2 供应商所在城市 供应商所在省份
int
varchar(80) varchar(80) varchar(80) varchar(80) varchar(80)
主键,自动递 增 允许为空 允许为空 允许为空 允许为空 允许为空 允许为空 允许为空
供应商所在城市 varchar(6) 邮编 varchar(40) 供应商电话
15.8.1 商品分类管理
59
15.8.2 供应商信息管理
60
15.8.3 商品信息管理
61
添加商品信息
62
修改商品信息
63
删除商品信息
64
在商品信息管理页面,选中相应商品前面的复 选框,单击“删除商品”按钮即可实现删除商 品信息功能。
15.8.4 订单管理
65
查看订单详细信息
66