网上书店购物车功能模块设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
河南职业技术学院信息工程系(分院)毕业设计(论文)任务书
毕业设计(论文)指导教师评阅意见表
题目网上书店购物车功能模块设计
系别信息工程系
学生姓名包乾
学号08121501
专业名称计算机应用(软件方向)
指导教师孙睿
2011 年 3 月日
摘要
计算机网络技术的发展,其功能为人们提供了更加周到和人性化的服务。网络的诞生和发展,冲破了存在于传统交流方式中时间和空间的种种壁垒,极大地改变了人们购物的观念。网络经济是利用互联网技术广泛联系传统信息系统的丰富资源的一种动态商务活动。网上书店不受时间和空间的限制,以其信息丰富、价格低廉、个性化服务等特点给广大图书爱好者带来时尚的享受。而其中的购物车则是网上书店的核心功能,它强大的功能和友好的操作,为用户提供了便利,为商家提供了重要决策,以此购物车模块设计的得当与否很是关键。
关键词:网络书店购物车
1.需求分析
用户在浏览网页时,当遇到喜欢的商品但又不急于结账购买而是继续浏览其他图书时,就需要一个购物车来存储他已经选中的商品,以便结账或回头再查看自己所选的图书的详细信息,用户可以在购物车页面中对购物车中的图书进行修改数目、移除图书、清空购物车、结算总价格等功能。当用户再次登录时,购物车应该还记录着他们原先已经选购的图书,并提示用户生成订单。
很多用户在提交订单之前往往会因为某些原因放弃购买,用户虽然没有购买,
但是购物车中的图书数据也在一定程度上反映了用户对一些图书的关注热度,如果对购物车中的图书数据进行记录、统计,如图书的热度、图书的收藏次数等,那么就可以对商家做出决策提供重要依据,因此购物车对供应商和客户都有很重要的功能。
◆2.功能设计
购物车是网上书店的核心模块,它方便了用户对选购图书的管理,对供应商的进购图书种类提供了重要依据。根据购物车的需求分析可得,
2.1用户的功能有:
查看购物车中图书
添加图书
移除图书
获取图书总价格
清空购物车
生成订单到订单列表
2.2供应商的功能主要有:
统计购物车中图书数量
计算某时期内某图书的销售成功率
获取购物车中图书热度排名
删除购物车相应数据
得到购物车的基本流程如下图:
根据其基本流程图,分析出购物车的详细功能有下:
2.3登录检验功能
系统设定,未登录用户无权访问购物车页面以及订单页面。当用户访问“我的购物车”时,系统会检查当前用户的合法标示,以确定是否有权访问。该系统采用个性化配置Profile来实现,erName语句可直接获取其用户名,而系统采用Form身份验证,与之相结合加以判断其登录与否或当前访问者与已登录用户是否相同。若当前用户不合法,则弹出对话框以予提示,并跳转到首页,若当前用户合法,则打开购物车页面,并显示上次登录时选择的图书(若有选择且未生成订单)。
2.4前台用户功能
查看图书信息——
当用户进入购物车页面后,购物车会自动显示已选购图书的详细列表,若用户上次选购的有图书且未生成订单,也会显示出来。购物车将已选的图书以列表的形式罗列出来,其信息包括图书的名字、出版社、数量、作者名以及当前单价等信息。购物车中图书存放的数据结构采用泛型集合类Dictionary
添加图书——
在用户浏览某图书的详细页面时,点击“放入购物车”便可向购物车添加一本新的图书种类;打开“我的购物车”,可以直接修改购物车中图书的数量,系统会自动更新用户的修改。当向购物车中添加一本图书后,集合类会自动随之添加该图书,并更新数据库中的信息。其添加语句如下,
Dictionary
CartInfo newCart = new CartInfo(BookId,BookName,BookPrice,Author,Publish,1); cart.Add(BookId,newCart);.
移除图书——
用户在浏览购物车中的图书列表时,若由于某种原因想丢掉时,可以点击该图书最前面的形状如“×”的按钮,便可移除该图书。在代码中设置Imagebutton的属性CommandName值为“Del”,CommandArgument值为“BookId”
则其删除事件为switch(mandName.ToString())//获取删除按钮值{
case “Del”:Profile.ShoppingCart.Remove(mandArgument.ToString());
break;
default: break;}
Profile.ShoppingCart.SetCartItems(erName);//同时更新数据库中的数据信息 计算总价格——
用户在生成订单前,点击“结算”可以对当前购物车中的图书进行重新分析、统计并得出总价格。若某一图书的数量小于1,系统则会默认移除该图书。在结算时系统会调用GetQuantity(int n)方法返回该图书的库存量,若用户所购买数量大于库存量,则
提示库存不足,要求用户重新输入图书数量。“结算”事件发生后系统会根据当前的最新数据更新数据库中Cart表的信息。
清空购物车、生成订单——
用户也可以清空购物车重新选购图书。点击“清空购物车”便可移除购物车中所有图书,同时数据库中的购物车表也会被清空。
若用户已选好所购图书,则可点击“生成订单”,页面跳转到订单填写页面,按照提示填写收货人等相关信息,选择发送方式、付款方式,提交,便可生成订单。在生成订单后,系统会自动清空购物车中所有数据。若想查看所选图书信息,可以到订单列表中查看。
2.5后台供应商功能
统计购物车图书数量——
购物车中的图书一定程度上反映了消费者对当下某类书籍的关注热度,所以对购物车中的图书做出统计,可以为供应商进货提供依据。每当用户向购物车中添加一本图书,在数据库中便记录下该图书的BookId、BookName、Qty2,数量Qty2的值是累加的,它面向的是所有已注册用户。从而得出用户所关注的图书的数量(次数)。
计算某时期某图书的销售成功率——
在图书生成订单后,该图书的Success(int)会自动加1,表明该图书已成功售出。成功销售次数Success比上图书关注次数Qty2,得出该图书的销售成功率,系统每7天计算一次。每一个月清空一次。
获取购物车中图书热度排名——
根据图书被用户关注的次数Qty2,每隔一周进行降序排序,显示到界面上,便可得到该周图书热度排行榜。得出该数据具有重要意义,它向广大图书爱好者提供了当下的热点图书,并可以作为书店经营者提供该季进货决策的依据。
删除购物车相应数据——
计算图书的关注热度和销售成功率都有实效性,若数据表中的数据长久不清除,得出的数据的准确性就会大大降低,因此需要对数据表中存放时间较久的数据给予清理,比如清除3个月以前的数据,当前数据库中只存储近3个月的数据。这样计算出的数据更能反映当下的真实情况。清除数据是根据该条数据生成的时间CartBookAddTime(datetime)作为依据的。