课程设计说明书NO.1沈阳大学网上购物系统1.课程设计的目的近年来,随着Internet的迅速崛起,互联网已日益成为收集提供信息的最佳渠道并逐步进入传统的流通领域。于是电子商务开始流行起来,越来越多的商家在网上建起在线商店,向消费者展示出一种新颖的购物理念。同时电子商务网站发展也面对新的机遇与挑战,在政府的大力倡导和扶持下,电子商务网站作为一种新的商业运作模式,推动着社会流通方式的创新,正深入企业活动和百姓生活,成为促使经济发展的重要动力源。从大型的电子商务、政务系统,到普通的在线购物和复杂的电子商务,电子商务网站在当今时代占据着重要地位,制作电子商务网站成为一个热点。网上购物对于消费者来说身处任何地方只要有网络就可以进行消费,不受时间的限制。可以买到当地没有的商品,可以不用辛苦的货比三家确定自己要买的东西,很方便的获得大量的商品信息。同时对于商家来说,网上交易可以省去大量的人员和房租等成本,少量的人员即可进行经营,减少了库存、经营规模和场地的限制。提升了商家在电子商务行业里的核心竞争力,适应时代的潮流。本文研究了运用了ASP.NET与SQLServer2000等关键技术建设网上购物系统。着重论述了系统功能与实现、数据流程及存储,包括商品目录、用户注册、网上订货与购物、后台数据库管理等。最终实现用户通过注册,浏览商品。2.设计方案论证2.1需求分析传统的购物两方面分别是买家和卖家。首先卖家开设店铺,展示自己的商品,买家需要到卖家开设店铺的具体地点,到达店铺后买家需要浏览自己喜欢和需求的商品,而对卖家来说需要雇佣人力来为买家介绍商品,最终双方会为商品当面交易付款。这是一个简单的传统购物流程。对于网上购物来说我门可以把买家和卖家看作是客户和管理员。首先管理员在一个购物网站申请一个店铺(一般都是免费的),然后在自己的网页上添加、更新自己的商品信息,包括图片、资料介绍等。此时等待客户浏览商品,当客户找到自己满意的商品时,可联系管理员也就是卖家,双方交易付款。这样一个完整的网上交易过程就结束了。系统具体实现的主要有:从整体操作来说:后台主要是使用SQLServer2000来连接数据库,通过管理数据库实现对用户(客户和管理员)信息的管理,权限的设置,对商品信息的更新和保证数据信息的安全性。前台主要是建设用户注册页面、商品信息展示页面,客户反馈页面,购物车页面等等。从运用对象来说:后台主要是指管理员操作系统。能够添加商品,更换商品信息,对客户的注册信息进行管理,对客户的反馈意见给予答复等等。前台主要是指客户能够注册用户和修改个人信息,能够浏览商品,能够管理购物车,能够留言反馈信息等。2.2系统管理模块网上购物系统分为前台模块和后台模块,前台模块主要功能包括会员登录与注册,商品展示、最新商品、订购、销售排行、商品分类、个人信息管理和购物车管理等。后台模块主要功能包括用户信息管理、全局配置管理、商品信息管理、商品分类管理、退课程设计说明书NO.2沈阳大学出后台。网上购物系统平台功能层次结构图如图1所示。图1功能层次结构图2.3数据库逻辑结构设计数据库逻辑结构设计依靠E-R图的关系来确定数据之间的依赖联系。用户购买商品产生相应的订单信息,管理员审核用户信息确认无误只后,对订单进行处理。E-R图如图2所示。图2E-R图课程设计说明书NO.3沈阳大学用户信息表:保存了所有个人用户的用户名、密码等基本用户信息,具体的描述如下表1所示。表1用户信息表名称类型说明Emailvarchar注册会员邮箱MDMailvarchar邮箱验证码Passwordvarchar密码CustomerNamevarchar用户名Addressnvarchar联系地址Phonevarchar联系方式Zipvarchar邮政编码Regtimedatetime创建时间IsActivebit是否激活RoleIDbit权限IDIsSpeakbit是否可用商品明细表:商品明细表(products)用来保存商品的详细信息,具体的描述如下表2所示。表2商品明细表名称类型说明ProductIDint商品ID号ProductNamenvarchar商品名称Authornvarchar所属名称IsRecommendbit是否推荐InPricedecimal进货价格StartPricedecimal起始价格SalePricedecimal销售价格Imgnvarchar图片Descriptionntext商品描述RemainCoutint库存总数StoreIDint分类商城IDTypeIDint商品类型Hitsint点击量Storedecimal评论得分AddTimedatatime上架时间商城分类信息表:商城分类信息表(store)用来保存商城的分类信息。具体的描述如下表3所示。课程设计说明书NO.4沈阳大学表3商城分类信息表名称类型说明BIDint信息ID号Namenvarchar信息名称Contentntext信息描述2.4模块详细设计2.4.1登录模块设计登录模块由两个功能构成,分别是用户登录和游客注册功能。对于已经是会员的用户来说,直接点击用户登录按钮输入用户名和密码,经过数据库检测正确后直接跳转到网站首页。而非会员则点击现在注册按钮,系统跳转到注册界面,并填写个人信息之后系统提示用户转到首页。用户登录后可以看到自己的登录状态栏,显示自己的一些常用信息。登录模块的程序流程图如图3所示。图3登录模块流程图2.4.2个人信息管理模块个人信息管理模块包括用户注册填充,订单管理和修改用户密码。用户可以修改自己的个人信息,方便用户灵活的使用网站进行消费。用户可以查看、删除自己的订单,课程设计说明书NO.5沈阳大学避免不必要的开支,提高网站的友好性。用户可以修改自己的登录密码,确保用户自己信息透漏给他人时,保持自己账户的安全。修改密码时,用户提交旧的登录密码,之后输入新密码并且再次输入新密码确认,确保两次密码输入一致以免发生手误导致账户不能正常使用,点击确认后系统自动更新,提示用户修改结果。修改密码模块的流程图如图4所示。图4修改密码的流程图3.设计结果与分析网站商品展示模块是用户进入网站最先看到的界面,设计简洁,实用性强让用户可以最快的获取网站信息,大体分为两部分:根据商品添加时间显示最新的商品信息和该商品是否是热门商品显示商品信息。最新商品展示,按照商品添加时间的先后降序排列显示在table标签中的Repeater控件,利用嵌套表格的形式,将数据绑定到其中。3.1商品分类用户每次登录都可以看到网站更新的最新商品信息,保持网站的新鲜,追赶用户对新产品的需求。同时按照商品经用户购买使用过后,是否是热门商品,来展示比较受用户喜欢的商品,给消费者积极的消费提示。如图5所示。课程设计说明书NO.6沈阳大学图5商品分类主要代码:publicpartialclassNewProducts:System.Web.UI.UserControl{protectedvoidPage_Load(objectsender,System.EventArgse){NewList.DataSource=BLL.Product.GetNewProductsList();NewList.DataBind();}#regionWeb窗体设计器生成的代码overrideprotectedvoidOnInit(EventArgse){////CODEGEN:该调用是ASP.NETWeb窗体设计器所必需的。//InitializeComponent();base.OnInit(e);}///summary课程设计说明书NO.7沈阳大学///设计器支持所需的方法-不要使用代码编辑器///修改此方法的内容。////summaryprivatevoidInitializeComponent(){}#endregion}3.2用户登录对于已经是会员的用户来说,直接点击用户登录按钮输入用户名和密码,只有输入正确才可以直接跳转到网站首页。登录界面如图6所示。图6登陆界面主要代码:protectedvoidSubmit_Click(objectsender,System.EventArgse){BLL.Useruser=neweshop.BLL.User();intuserId=user.SignIn(LoginName.Text,Password.Text);//得到临时的购物车编号BLL.ShoppingCartcart=newBLL.ShoppingCart();stringtempCartID=cart.GetShoppingCartId();if(userId==0){Message.Text=用户名或密码错误!;}else{//将未通过验证时该用户的匿名购物信息迁移至该用户的个人记录中cart.MigrateCart(tempCartID,userId.ToString());课程设计说明书NO.8沈阳大学System.Web.Security.FormsAuthentication.RedirectFromLoginPage(userId.ToString(),CheckCookie.Checked);Response.Redirect(MyAcount.aspx);}}3.3用户注册而非会员则点击现在注册按钮,系统跳转到注册界面,并填写个人信息之后系统提示用户转到首页。如图7所示。图7用户注册主要代码:protectedvoidSubmit_Click(objectsender,System.EventArgse){//获得注册信息stringuserName=LoginName.Text.Trim();stringpassword=Password.Text.Trim();stringquestion=Question.Text.Trim();stringanswer=Answer.Text.Trim();//得到原来的CartIdBLL.ShoppingCartcart=neweshop.BLL.ShoppingCart();stringtempCartId=cart.GetShoppingCartId();//试图添加新用户BLL.Useruser=neweshop.BLL.User();intuserId=user.AddNewUser(userName,password,question,answer);//如果返回值为-1,则表示用户名存在if(userId==-1){Message.Text=用户名已存在!;}else课程设计说明书NO.9沈阳大学{//设置用户为通过验证System.Web.Security.FormsAuthentication.SetAuthCookie(userId.ToString(),false);//迁移购物车记录cart.MigrateCart(tempCartId,userId.ToString());//将用户重定向回用户帐户页面Response.Redirect(MyAcount.aspx);}}3.4主界面成功登录系统后,进入主界面,包含修改密码、修改个人资料、购物车和我的购物记录。可以根据需求进行相应的操作。主界面如图8所示。图8主界面主要代码:namespaceeshop{///summary///MyAcount的摘要说明。////summarypublicpartialclassMyAcount:System.Web.UI.Page{protectedvoidPage_Load(objectsender,System.EventArgse){//在此处放置用户代码以初始化页面}#regionWeb窗体设计器生成的代码overrideprotectedvoidOnInit(EventArgse){//课程设计说明书NO.10沈阳大学//CODEGEN:该调用是ASP.NETWeb窗体设计器所必需的。//InitializeComponent();