简单商城(上)

上传人:n****a 文档编号:52516638 上传时间:2018-08-22 格式:PPT 页数:81 大小:2.69MB
返回 下载 相关 举报
简单商城(上)_第1页
第1页 / 共81页
简单商城(上)_第2页
第2页 / 共81页
简单商城(上)_第3页
第3页 / 共81页
简单商城(上)_第4页
第4页 / 共81页
简单商城(上)_第5页
第5页 / 共81页
点击查看更多>>
资源描述

《简单商城(上)》由会员分享,可在线阅读,更多相关《简单商城(上)(81页珍藏版)》请在金锄头文库上搜索。

1、一、商城的系统分析,业务流程图,登陆,用户,发布 商品,商品 汇总 信息,选购,购物 信息,修改 购物车,订单 信息,编辑 商品,结算,系统边 界,数据流程图,选购信息,购物信息,在线 商城,商品汇总信息,用户信息,订单信息,商品信息,登陆 1,编辑 商品 3,修改 选购 5,发布 商品 2,顾客信息,商家信息,结算 6,选购 商品 4,顾客信息,商家信息,顾客信息,交易 统计 7,用户信息,E-R图,商品,发布,商家,选购,顾客,交易,商品表,选购表,订单表,商家和顾客合并为用户表,店铺,开设,包含,店铺表,一些说明,商城是不需要开设店铺,所以业务流程图和数据流程图都没有体现“开店” E-R

2、图里有“开设”店铺,是为了方便大家的学习,干脆将开店也加进来了。 让大家更加理解一件事情是如何从现实世界变换到数据世界中去的。,数据字典,具体应该包含: 店铺表的具体字段 商品表的具体字段 选购表的具体字段 订单表的具体字段 用户表的具体字段 所有数据流的数据结构 所有加工的处理逻辑,1、店铺表,店铺编号-ShopID,标识(自动编号) 店铺名称-ShopName 所属用户-ShopOwnerID 店铺种类-ShopKind 店铺等级-ShopLevel 店铺成交数量ShopTrdNum 店铺创建时间- ShopCreatTime还可以根据实际情况确定其他字段,2、商品表,商品编号-ItemI

3、D,标识(自动编号) 商品名称-ItemName 商品图片-ItemPics(放图片URL) 所属用户-ItemOwnerID 所属店铺-ItemShopID 商品种类-ItemKind 商品单价-ItemPrice 商品折扣-ItemDiscount(折扣率) 商品数量ItemNum 商品描述ItemScrip(文本类型) 商品提交时间-ItemCreatTime还可以根据实际情况确定其他字段其他几个表格大家自己参照着确定字段吧,每条数据流的数据结构,体现在页面输入上,体现在页面输出显示上。 比如: 就体现在商品提交(发布)页面上,要安排用户输入下面信息。商品信息=名称+图片+单价+数量+描

4、述 再比如: 就体现在选购结束,下订单后的结果显示页面上,包含:订单信息=商家+商品名称+单价+数量+总价其中 表示中间的数据会重复出现若干次。,3、数据流,其它数据流的定义,大家自己根据实际情况确定。,加工逻辑是每个数据处理的具体算法,是系统功能的具体体现,为后面的程序设计打下坚实基础。 比如: 加工,它的功能要求就是用户通过浏览商品,挑中合意的,放入购物车中去。 算法描述如下:1. 用户通过分类或搜索,列表浏览商品概况;2. 选中感兴趣商品,进入商品详情页面进一步浏览;3. IF(用户满意)选中该商品进入选购表;else回到1,继续进行浏览;4. 结束浏览,查看购物车情况;,4、加工逻辑,

5、选购 商品 4,其它加工逻辑的说明,也请大家自己根据实际情况确定。,二、商城后台数据库设计,启动SQL Server配置管理器,打开SQL Server服务器,打开SQL Server管理中心,管理中心必须先连接上SQL Server服务器,SQL Server Management Studio中创建数据库,新建数据库取名Shop,依据数据字典来建表,1、店铺表Store,主键是标识,自动增量,这是外键,对应用户表的主键,注意字符类型一律用varchar(50),可变长度,灵活性强,记得加上创建时间字段,2、商品表GoodItem,主键是标识,自动增量,外键,分别对应用户表和店铺表,记得为每

6、张表都加上时间字段!,ItemScrip商品描述字段在这张截图上忘了加进去,大家自己加一下吧。,3、用户表ShopUser,主键是标识,自动增量,上面的三张表设计只是示例,供参考。 要根据实际情况需要来设计表,以完成要求的功能为准则。,记得加上注册时间字段,4、选购表BuyList,主键是标识,自动增量,注意:在选购表里,每件商品的选购都对应一条选购记录,有一个唯一的选购ID(就是主键)!,指向用户、店铺、商品表的外键,记得加上购买时间字段,5、订单表与选购表整合为一张,订单表与选购表很多地方是重复的,为了减轻数据库负担,完全可以合并。 在选购表中增加一个订单编号字段,再增加一个订单状态字段表

7、示该订单是否已经结算。 同一个用户在同一家店铺的,连续几次间隔不超过指定时间段的,尚未确定结算的选购记录,订单编号相同。 可以简单的规定订单号就是:卖家ID+买家ID+日期,可以保证同一用户,同一天,在同一家选购的商品记录是属于同一个订单。 初始选购记录中的状态都是“未结算”;购物车中也只显示订单状态为“未结算”的选购记录。 当在购物车中选择了结算后,该订单号对应的所有选购记录中的订单状态字段都改为“已结算”。 增加上面两个字段就能使订单和购物车在同一张表中存储了;有必要的话可再加上结算时间字段;结算总额字段可加也可不加,因为可以通过程序计算出来。,TradeID不是主键也不是外键,不需用自动

8、增量,就用字符串做订单编号! TradeState表示订单状态,也直接用“未结算”和“已结算”字符串作为字段值。 TradeTime表示结算时间,和购买时间BuyTime不一样。,最终的数据库Shop,总结,依据系统分析得到的数据流程图、E-R图、数据字典,我们在SQL Server中创建了数据库。 但是请注意:我们初期考虑得很简单,只分析了最核心的一些功能。如果出现新的功能要求,我们就必须增加新的表,或者对旧表进行改造。 比如:新加一个商品评价功能。就需要在业务流程图、数据流程图、E-R图中都补上。 如下,是E-R图中需要加上的内容,数据库中也需相应增加一张评价表。,商品,评价,顾客,业务流

9、程图和数据流程图里要加上评价的功能, 评价的具体加工逻辑算法也要在数据字典里说明。,三、商城前台网站建立,我们暂时不考虑那么多,将现在分析出的这几个功能做出来再说。注册是之前漏了的,这里补上。,登陆 1,编辑 商品 3,修改 选购 5,发布 商品 2,结算 6,选购 商品 4,交易 统计 7,如果将来有别的要求,比如前面举的“评价”功能,我们再来添加或者修改就是了。,注册 0,打开VS2008,新建一个干净的网站。,在硬盘上建一个新文件夹来存储该网站,菜单里选 视图服务器资源管理器,在左边会出现服务器资源管理器 右键单击 数据连接添加连接,出现的选择数据源窗口里,选择SQL Server:,注

10、意:不要选SQL Server 数据库文件!,出现窗口里写上服务器名字,选择数据库:,名字和前面连接的名字是一样的 选中我们刚建好的Shop数据库,连接成功,以后在服务器资源管理器里就能直接管理我们建好的数据库Shop了,菜单里选 视图解决方案资源管理器,在右边就会看到解决方案资源管理器,实际就是网站文件夹管理。 最开始会自动创建一个Default.aspx网页。,解决方案资源管理器中右键点击网站文件夹,选择“添加新项”,0、注册页面的实现,弹出对话框里,选择“Web窗体”,并取名,网站文件夹下面就会创建RegUser.aspx页,并默认建立一个同名.cs文件,静态页面与同名.cs代码文件的关

11、联,RegUser.aspx页的第一句就声明:相应程序代码都放在RegUser.aspx.cs文件中,并且将这些代码合为一个类,类名默认就是页面名称,可以视为一个页面类。 每一张网页,都有自己独一无二的一个页面类,负责处理该页面上所有的交互。,RegUser.aspx.cs的初始代码,类名要与静态页面里面声明的一致。 该页对应的页面类 就是所有交互代码的集合。,要使用系统自带的一些类 类似C语言的,Page_load函数,是页面初始化函数。 每次当页面加载(刷新)的时候执行该函数。,设计RegUser.aspx页,建议大家先手写HTML代码建好空白表格,再往里拖控件,记得点左下角的拆分按钮,上

12、面是HTML代码, 下面就是可视化的效果,“系别”和“专业”是下拉列表控件,拖进来后选编辑项,一定要在HTML代码里记住各个控件的ID,选择“添加”按钮,在右边就可以添加下拉选项,注意Value值,我们选取哪个选项,值就是这个 Text是外观名称,Value才是真正我们要用的值,第0项是默认提示项,值Value手工设置为字串“null” 。 当用户不做选择时,下拉列表的值就是第0项的值“null” 。,选择“添加”按钮,在右边就可以添加下拉选项,注意Value值,我们选取此项,下拉列表的值就是这个 Text是外观名称,Value才是我们真正要用的值,其它选项是真正的选项,值Value默认与Te

13、xt值一致。 用户选择哪项,下拉列表的值就是该项对应的Value值。,最终RegUser.aspx页的设计效果,对应的完整静态页面代码如下,后台代码与前台控件是通过“事件”联系起来的,当发生Onclick鼠标单击按钮事件,就调用.cs文件中的 Shop_RegUser函数来处理,在控件的HTML代码标签里 声明事件对应的处理函数,注意:函数要用到的静态页面内的控件都必须放在一对内,函数通过控件的ID来访问控件。,所以我们紧挨着 标签就写,将所有的内 容都置于这一对之下 一张静态页面有且只能有一对 标志。,在RegUser.aspx.cs里写Shop_RegUser函数,我们前面声明的点击按钮处

14、理函数,需要自己写,名字一定要一致。,参数是系统自带的,包括消息发送者,消息的详细数据。一般情况下,这两个参数很少用到。,Shop_RegUser函数编写1,先用七个string类型变量,获取静态页面中用户填写的内容。 关键是七个控件在静态页面RegUser.aspx中的ID,不要弄错了。 这七个控件都是放在静态页RegUser.aspx的里面的。DropList1.SelectValue:表示下拉列表1用户选择的值 TextBox1.Text:表示文本框1中用户填入的文本值,Shop_RegUser函数编写2,接下来,我们要连接数据库Shop,将这七个变量插入ShopUser表中。 前面表设

15、计中掉了密码字段,这里要在表中加上UserPSW字段。 后面的等级、买卖数量都改为允许NULL。,在Shop_RegUser函数里要先保证能连上数据库Shop,代码写法见下图。,进行Sql数据库操作必须使用系统自带的SQL操作类,可以理解为C语言里的printf()函数,SqlConnection是系统自带的数据库连接类,我们只要定义好一个具体的SqlConnection对象,就可以用这个对象来连接上数据库了。 Server=CAIKUI 中的CAIKUI是服务器名字,机房里面每台都不一样,你自己电脑上也是不一样的,记得要修改下哦。 定义好一个具体的连接对象后,就可以连上数据库了。用完后一定记得关闭这个连接对象,以免占用服务器资源。,点击VS上面的小绿色三角或者ctrl+F5键进行测试,浏览器中出现的静态页面中,直接点确定进行测试,页面上出现这个,证明我们的连接时成功的。 没有出现,会有错误提示,我们要修改代码, 直到调试出现这个为止。,Shop_RegUser函数编写3,连接测试成功后,就要将七个string变量插入数据库中了,这条语句是将四个输入信息用+操作符合并为一个UserReal字串,中间用字符“,”隔开,这两条C#语句合起来,在数据库中完成插入操作。 语句在数据库连接open和close之间执行。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 其它文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号