




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、毕业设计(论文)办公用品网上商城的设计与实现摘要办公用品是人们日常生活中必不可少的物品,随着时代的发展,传统的办公用品采购方式存在很多缺点和不足。随着互联网和电子商务的发展,通过互联网销售办公用品的办公用品网上商城有很大的发展前景。本文介绍了办公用品网上商城的设计与实现。在PHP+MySQL+Apache的开发环境下,使用Zend Studio集成开发工具进行开发。在设计过程中,综合运用了PHP、CSS、JavaScript等技术。采用基于MVC模式的ThinkPHP框架。分为前台和后台两部分。会员前台。登录后,会员可以查询、订购和评论商品,还可以管理个人信息。面向后台的管理员。管理员可以管理
2、商品、会员、订单和评论,还可以发布公告。经过运行测试,实现了设计功能,满足了用户需求,达到了预期效果。关键词:办公用品网上商城PHP MVC ThinkPHP第一章导言1.1研究背景和意义随着互联网的不断发展,越来越多的行业正在发生巨大的变化。互联网正以其便捷的信息传递改变着人们的生活方式和消费模式。通过使用简单、快速和低成本的电子通信,买方和卖方可以直接在互联网上进行各种商业活动,而无需见面。IBM在1996年提出了电子商务的概念。1997年,公司提出了电子商务的概念。短短几年,这些概念被广泛接受。电子商务可分为企业对企业(B2B)、企业对消费者(B2C)、个人对消费者(C2C)、企业对政府
3、(B2G)和线上对线下(O2O)模式,其中主要模式包括B2B和B2C模式。随着中国网民数量的不断增加,网上购物和银行卡支付日益普及,市场份额也在快速增长,同时电子商务也层出不穷。本次毕业设计的题目是办公用品网上商城的设计与实现。办公用品是人们日常生活中必不可少的物品。办公用品也是企事业单位运营成本的一项持续性支出,周转频繁,是一笔可观的支出。然而,传统的办公用品采购方式存在诸多弊端。比如采购流程本身效率低,耗费人力多。许多企业的采购部门大约有一半处理这些低价值和频繁的采购订单。这个领域的平均生产率水平极低,是现代商业中劳动最密集的地方之一。而且随着时代的发展,现代意义上的办公用品已经不局限于我
4、们过去使用的纸、笔等产品,而是扩展到包括打印机、打印耗材、办公日用品等所有现代办公相关的商品。在这种形势下,随着互联网和电子商务的发展,通过互联网销售办公用品的办公用品网上商城应运而生。通过这个,人们可以比较各种品牌的办公用品,轻松订购商品。企事业单位可以在这个网上商城大规模采购办公用品,可以简化采购办公用品的手续,提高采购办公用品的效率,节省人力成本。商家也可以通过这个网上商城增加自己的销量,增加营业额,提高销售管理的效率。1.2国外应用现状及发展趋势现在国内的办公用品电子商务已经有了一定的发展。史泰博、欧迪办公等办公用品巨头相继在中国设立子公司,发展办公用品电子商务。以JD.COM商城、亚
5、马逊、1号店为代表的综合B2C经营的办公用品种类繁多。这种流量大,知名度高,网民在个人购物中养成的购物习惯转移到了办公用品的购买上。一些办公用品品牌企业陆续在淘宝商城上开设品牌店。比如一哥高、得力文具淘宝商城店,利用淘宝商城的巨大流量,以品牌直销的理念销售产品。此外,办公行业的品牌企业也开始建立自己的B2C商城,如天威打印耗材的蔡皋快递商城。2021年,中国办公用品市场总销售额超过1000亿元。办公用品电商虽然占比不高,但面临着难得的发展机遇。在美国,2021年十大B2C电商中有三家是办公用品,分别是史泰博、欧迪办公和OfficeMax,可见办公用品在电子商务最成熟的美国占据了非常重要的地位。
6、史泰博、欧迪-亚洲OfficeDepot、KOKUYO-易有百、欧玛特、艾吉乐ASKUL五大全球办公用品品牌建立了网上商城,大力发展电子商务。2004年,史泰博与国内最大的网上办公用品销售企业尚信电子商务成立史泰博企业发展,开始正式进军中国办公用品市场。1.3研究能力和结构本课题旨在设计和实现办公用品网上商城,用于解决传统办公用品销售和采购方式中存在的诸多问题。可以为用户提供便捷的服务,降低企事业单位用户的购买成本。也提高了商家的管理效率,给商家带来了收益。以Windows XP操作系统为服务平台,采用流行的PHP技术,后台数据库为MySQL,服务器为Apache server。本文的结构如下
7、:第一章:绪论。包括主要课题的研究背景和意义,国外应用的概况和发展趋势以及论文的结构。第2章:开发工具和方法。包括开发所使用的工具和方法。第三章:需求分析。包括可行性分析和需求分析。第四章:系统概要设计。第5章:详细设计和实现。第6章:测试和维护第二章开发工具和方法2.1 PHP+MySQL+Apache简介它是PHP的递归缩写:超文本预处理器(PHP Hypertext Preprocessor),是一种在服务器端执行的跨平台HTML嵌入式脚本语言。其独特的语法结合了C语言、Java语言和Perl语言的特点。它是一种广泛使用的开源多用途脚本语言,特别适合Web开发。PHP起源于1995年,由
8、Ramus Lerdorf开发。根据TIOBE 2021年4月发布的编程语言指数排行榜,PHP语言排名第六,并呈上升趋势。PHP具有速度快、面向对象、实用性强、功能强大、成本低、开放性和扩展性好、版本更新快、模块化、应用广泛等特点。MySQL是最流行的开源SQL数据库管理系统,由MySQL AB开发。MySQL是一个关系数据库管理系统。它将数据保存在不同的表中,从而提高了速度和灵活性。MySQL使用的SQL语言是访问数据库最常用的标准化语言。由于MySQL数据库具有体积小、速度快、使用方便、工作模式多、总拥有成本低、开源等特点,一般选择MySQL作为中小型开发的数据库。MySQL数据库配合PH
9、P和Apache可以形成一个很好的开发环境。Apache Server(简称Apache)是Apache软件基金会的开源web服务器,是全球排名第一的Web服务器软件。Apache的特点是简单、速度快、性能稳定,可以作为代理服务器使用。它可以在几乎所有广泛使用的计算机平台上运行。由于其跨平台性和安全性被广泛使用,所以它是最流行的Web服务器端软件之一。2.2 HTML+CSS+JavaScript简介HTML(超文本标记语言)是一种超文本标记语言,用于描述web文档。它是网页的重要组成部分,主要负责格式化网页内容,使其更具逻辑性。HTML是标准通用标记语言下的一个应用,也是一个规则,一个标准,
10、通过标记符号来标记网页所有要显示的部分。HTML简单、可扩展且独立于平台。CSS(层叠样式表)是层叠样式表,是一种用来表达HTML或XML文件样式的计算机语言。CSS的目的是将网页内容与视觉呈现分开。一方面可以让页面维护更容易,另一方面也可以增加页面在不同媒体中的呈现效果。CSS可以在像素级精确控制网页中对象的位置和布局,支持几乎所有的字体样式,具有编辑网页对象和模型样式的能力,可以进行初步的交互设计。它是目前基于文本显示的最具表现力的设计语言。CSS可以根据不同用户的理解能力对文字进行简化或优化,便于各类人群阅读。JavaScript是一种面向对象的、动态的、对象驱动的和事件驱动的客户端脚本
11、语言,具有相对的安全性。同时,它也是一种广泛应用于客户端Web开发的脚本语言。它的源代码在发送给客户端运行之前不需要编译,而是将文本格式的字符代码发送给浏览器,由浏览器进行解释和运行。JavaScript通常用于向HTML页面添加动态功能。在HTML的基础上,可以使用Javascript开发交互式网页。Javascript可以提高网页的浏览速度和交互能力,增加网页的交互性。2.3 Zend studio简介Zend Studio是PHP整个开发周期中唯一面向专业开发者的集成开发环境,包含了PHP所有必要的开发组件。通过一整套编辑、调试、分析、优化和数据库工具,Zend Studio加快了开发周
12、期,简化了复杂的应用方案。Zend Studio拥有强大的专业编辑工具和调试工具,支持PHP语法高亮、语法自动填充、书签、语法自动缩进和代码复制,强大的PHP代码调试工具,本地和远程调试模式以及多种高级调试功能。Zend Studio的设计考虑到了业务应用开发的需求,是开发人员使用PHP创建功能强大的数据库应用软件的完美开发环境。Zend Studio具有易用性、可伸缩性、可靠性和可扩展性,适合专业和企业开发人员开发、配置、调试和管理关键的商业PHP应用程序。它是当今世界上最强大的PHP集成开发环境。2.4 ThinkPHP框架介绍ThinkPHP是一个免费、开源、快速、简单的面向对象的轻量级
13、PHP开发框架,根据Apache2开源协议发布。ThinkPHP是从Struts结构移植过来的,并进行了改进和完善。同时借鉴了国外很多优秀的框架和模式,采用面向对象的开发结构和MVC模式,将Struts思想与TagLib(标签库)、RoR的ORM映射和ActiveRecord模式相融合,封装了CURD和一些常用操作、单入口模式等。,并在模板引擎、缓存机制、认证机制、扩展性等方面有着独特的表现。ThinkPHP具有简单易用的MVC模式、独创的核心编译和项目编译机制、丰富的查询语言支持、自动编码转换等诸多实用特性。,这使得它越来越受到PHP开发者的认可。第三章:系统分析。3.1可行性分析任何发展都
14、会受到时间和资源的限制。因此,有必要在开发项目前进行可行性分析,以降低项目的开发风险。可行性分析主要包括经济可行性、技术可行性和运营可行性。经济可行性经济可行性主要是评价项目的经济效益。这种开发只需要计算机、相关开发软件和资料的支持。系统部署对软硬件要求低,开发简单易用,不需要花费大量人力物力即可开发。这个系统操作简单,用户几乎不需要经过专业培训就可以使用这个系统。投入使用后,将方便商家和用户使用,节省大量的人力物力,因此本书的开发在经济上是可行的。技术可行性技术可行性主要考虑现有的软硬件平台能否满足开发者的需求,现有的技术条件能否顺利完成开发工作。这个开发环境是PHP+MySQL+Apach
15、。PHP是一种流行的安全稳定的web开发技术,MySQL数据库是一种性能优异的数据库,非常适合中小型开发。Apach是一个强大的开源web服务器。PHP、MySQL和Apache的结合可以形成一个很好的开发环境。使用这个Zend Studio工具进行开发。Zend Studio是一个PHP开发的集成开发环境,它包含了PHP所有必需的开发组件。采用这个ThinkPHP框架。ThinkPHP框架性能优异,适合小规模开发。现在硬件的更新速度越来越快,可靠性大大提高,价格越来越低。因此,现有的软硬件平台完全满足开发的需要,本项目的开发在技术上是可行的。操作可行性随着科学技术的发展,互联网技术已经广泛应
16、用于各个领域。办公用品传统销售方式存在的问题越来越明显,而信息化、网络化的办公用品网上商城显示出巨大的优势。这个系统功能强大,操作简单,用户只要熟悉基本的在线操作就可以使用。所以这个开发在操作上是可行的。综上所述,办公用品网上商城在经济上、技术上、操作上都是可行的,商城的发展会带来一定的经济效益和社会效益。3.2需求分析需求分析是指在新系统建立或变更时,以及在描述新系统的目的、范围、定义和功能时,所要做的全部工作。需求分析是软件工程中的关键过程,在系统级需求工程和软件设计之间起着桥梁作用。3.2.1功能需求分析办公用品网上商城的用户主要分为两类:会员和管理员。分为前台和后台两部分。前台会员,后
17、台管理员。注册并成功登录后,会员可以浏览和查询商品,订购商品,管理个人信息。登录后台页面后,管理员可以管理商品、用户、订单和商城信息。办公用品网上商城的前台可以实现以下基本功能:(1)注册功能。点击主页上的注册选项卡或按钮,进入注册页面。在注册页面填写基本信息,成功注册成为会员。(2)登录功能。点击会员主页中的登录页签,进入会员登录页面。输入会员名称、密码和验证码,然后点击登录按钮。如果输入信息正确,会弹出提示信息,你会跳转回首页。主页显示登录会员信息。如果输入信息错误或者会员被冻结,会弹出提示信息,并跳转回首页。在后台管理员登录页面输入正确的管理员名称和密码,进入后台管理页面。(3)查询商品
18、。在会员首页,可以点击查看一些商品信息,也可以分类查看各种办公用品。在会员搜索框中输入商品名称,点击搜索按钮,实现商品查询。(4)订货。搜索到满意的产品后,成员可以单击“添加到购物车”按钮将产品添加到购物车中。如果您需要更改购物车商品的信息,您可以修改购物车中的商品数量或直接删除商品。购买商品后,点击进入收银页面,填写基本信息后即可提交订单。(5)个人信息的修改。会员登录后,点击首页的用户中心页签,进入个人信息界面,可以修改个人信息。办公用品网上商城的后台可以实现以下基本功能:(1)用户管理。在后台管理界面,管理员可以查看所有会员的信息,删除或冻结会员。管理员也可以在后台修改自己的信息。(2)
19、订单管理。管理员查看订单的详细信息,并在后台管理界面中处理订单。(3)商品管理。管理员可以在后台添加或删除商品类别。管理员还可以在后台添加或删除商品,修改商品信息。(4)信息管理。管理员可以在后台添加公告和修改发布的公告。管理员也可以处理成员的评论。3.2.2非功能需求分析该系统的非功能性要求如下:(1)用户界面要求:简洁、易用、易懂、友好、和谐的用户界面。(2)硬件要求:奔腾或以上电脑。(3)可靠性要求:用户正常使用本系统时,用户的操作不会造成数据丢失。(4)安全要求:用户登录需要密码验证。3.2.3用例分析它是一个典型的参与者与计算机之间的交互过程,并没有达到某种目的。用例图是由参与者和用
20、例以及它们之间的关系组成的动态视图,用于描述系统功能。它是需求分析的产物,主要用于描述参与者和用例之间的关系。用例图展示了系统的用户和用户希望提供的功能,有利于用户和软件开发人员的沟通。参与者是存在于系统之外并直接与系统交互的外部实体的抽象。在用例图中,参与者用人形图标表示,参与者的名字写在人的下面。允许参与者感受用例的系统服务或功能单元,用例定义了参与者如何使用系统。用例在用例图中用省略号表示。用例与参与者之间的对应关系称为通信关联,表示系统中的哪些用例被参与者使用。这个设计系统的参与者分为两类,会员和管理员。会员可以注册,登录,查询商品,订购商品,管理个人信息。如果会员在登录时忘记了密码,
21、他可以取回自己的密码。管理员可以管理商品信息、管理用户信息、管理订单信息和管理信息。办公用品网上商城的用例图如图3-1所示。图3-1用例图3.2.4 E-R模型分析实体关系模型是一种用于描述现实世界的概念模型。实体-关系模型的基本元素是实体、关系和属性。客观存在且互不相同的物理对象称为实体。而一类具有相同属性的实体被抽象为一个实体。实体的属性成为属性。然而,在现实世界中,事物之间的关系被抽象为物理部分和物理部分之间的关系。E-R图也称为实体关系图。该方法通过表达实体、属性和关系来描述现实世界的概念模型。在E-R图中,实体类型用矩形表示,实体名称写在矩形框中。椭圆用来表示实体的属性,无向边用来连
22、接实体和对应的实体。实体之间的关系用一个菱形表示,联系人姓名写在菱形框中,用无向边连接有关实体,在无向边旁边标注连接类型(1:1,1:n或m:n)。如果实体之间的链接有属性,用无向边连接属性和链接。这个设计抽象了五个实体:会员、管理员、商品、分类和公告。管理员、公告、商品、分类之间是一对多的加法关系。管理员和成员之间是一对多的管理关系。会员和商品之间有多对多的订购和评论链接。实体和连接如下图所示。表3-2成员实体图表3-3管理员实体图表3-4商品实体图表3-5公告实体图表3-5公告实体图表3-6一般E-R图第四章系统概要设计4.1系统功能设计系统的总体结构办公用品网店分为前台和后台管理两大模块
23、。对于前台会员,主要分为五个模块:注册模块、登录模块、查询模块、订购模块和个人信息管理模块。面向后台管理员,主要分为会员管理模块、商品管理模块、订单管理模块三个模块。办公用品网上商城的整体结构模块图如下:图4-1系统功能模块图主要模块的流程图会员操作流程图如图4-2所示。图4-2会员操作流程图管理员操作流程图如图4-3所示。图4-3管理员操作流程图4.2数据库设计根据E-R图转换为关系模型的原理,设计了七个表。其中,会员、管理员、商品、分类、公告各转换成一个表。管理员和商品之间的一对多添加链接被合并到商品表中。带有管理员公告的一对多添加链接被合并到公告表中。会员与商品多对多的订购关系转化为订单
24、形式。会员和商品之间多对多的评论转换成订单形式。表4-1成员资格表列标题类型长度是空的吗?主关键字外键解释编号(同Internationalorganizations)国际组织四不是不数量,自增长名字可变长字符串25不不不显示当前工作目录可变长字符串50不不不密码(同Internationalorganizations)国际组织11不不不数字董洁可变长字符串四不不不冻结状态电子邮件可变长字符串25是不不身份证号码可变长字符串25是不不地址电话可变长字符串25是不不可动的蒂希可变长字符串50是不不提示性问题惠达卫浴可变长字符串50是不不回答迪志可变长字符串100是不不地址有边可变长字符串25是不
25、不联系人可变长字符串25是不不真实的表4-2管理员表列标题类型长度是空的吗?主关键字外键解释编号(同Internationalorganizations)国际组织四不是不数量,自增长名字可变长字符串25不不不显示当前工作目录可变长字符串25不不不密码电话可变长字符串25不不不手机号码实名日期时间25是不不真实的表4-3商品清单列标题类型长度是空的吗?主关键字外键解释编号(同Internationalorganizations)国际组织四不是不数量,自增长明成可变长字符串25不不不名字简姐文本不不不形容邓吉可变长字符串五不不不等级星昊可变长字符串25是不不模型图皮人的可变长字符串200是不不画梁
26、书(同Internationalorganizations)国际组织四是不不量推剪(同Internationalorganizations)国际组织四是不不推荐吗?运算符(同Internationalorganizations)国际组织四是不是类型中国品牌可变长字符串25是不不商标名称汇源家可变长字符串25是不不VIP价格石昌家可变长字符串25是不不市场价添加时间可变长字符串25不不不加法时间表4-4公告形式列标题类型长度是空的吗?主关键字外键解释编号(同Internationalorganizations)国际组织四不是不数量,自增长标题可变长字符串20不不不标题语境文本不不不允许时间可变长
27、字符串50是不不添加日期表4-5分类表列标题类型长度是空的吗?主关键字外键解释编号(同Internationalorganizations)国际组织四不是不数量,自增长栏目名称可变长字符串50不不不类型名表4-6订购单列标题类型长度是空的吗?主关键字外键解释编号(同Internationalorganizations)国际组织四不是不数量,自增长丁旦号可变长字符串125不不不序号单纸包的(single paper covered的缩写)可变长字符串125不不是商品编号直线性电容量(straight - line capacity)可变长字符串125不不不量收获人可变长字符串25不不不承销人性可
28、变长字符串2不不不性别迪志可变长字符串125不不不地址有边可变长字符串10不不不电话可变长字符串25不不不接触电子邮件可变长字符串25是不不shfs可变长字符串25是不不交付方式zfff可变长字符串25不不不支付方式时间可变长字符串25不不不时间下蛋人可变长字符串25不不是订购人总数(同Internationalorganizations)国际组织11不不不总数征途可变长字符串25不不不情况表4-7评价表列标题类型长度是空的吗?主关键字外键解释编号(同Internationalorganizations)国际组织四不是不数量,自增长使用者辩证码(同Internationalorganizati
29、ons)国际组织四是不是会员编号标识符(同Internationalorganizations)国际组织四是不是商品编号标题可变长字符串200是不是标题内容文本是不是允许时间可变长字符串不不是添加日期4.2.2数据库表之间的关系图4-4数据库表格图第五章是详细设计与实现。5.1前台模块的设计与实现ThinkPHP框架是基于MVC设计模式的。ThinkPHP中的MVC层次结构体现在:模型(M):模型的定义由模型类完成。控制器(C):应用控制器(核心控制器App类)和动作控制器都承担控制器的角色。动作控制器完成业务流程控制,应用控制器负责调度控制。视图(V):由视图类和模板文件组成。模板是100%
30、分离的,可以独立预览和制作。根据上面对网店的分析,前端模块设计了五个动作控制器类:IndexAction类、GonggaoAction类、ProductAction类、UserAction类和PublicAction类。这五个控制器类都继承了ThinkPHP框架的动作控制器基类动作类。IndexAction类是系统的默认控制器类,而PublicAction类用于初始化和其他操作。GonggaoAction类负责公告相关的一些操作,ProductAction类负责商品相关的一些操作,DingdanAction类负责订单相关的一些操作,UserAction类负责成员相关的一些操作。前端控制器的类图
31、如图5-1所示。图5-1前台模块控制器类图在ThinkPHP框架中,Model模型类对应于数据库中的表或视图。通过Model类,您可以直接在数据库中添加、删除、修改和查询表。由于前端模块不需要与管理员交互,所以前端模块中有六个模型类:DingdanModel类、GonggaoModel类、PingjiaModel类、ShangpinModel类、TypeModel类和UserModel类。六个模型类都继承了ThinkPHP框架的模型类模型类。前台模型类图如图5-2所示。图5-2后台模块模型类图5.1.1注册模块的设计与实现ThinkPHP框架是通过模块和操作访问的,所有模块和操作都是通过URL
32、参数访问和执行的。在首页点击会员注册页签,系统解析URL参数,调用UserAction类的reg()方法。因为在UserAction类中没有定义reg()方法,所以系统自动调用模板文件reg.html来显示成员注册界面。在此界面输入相关信息,点击提交按钮完成注册。本设计使用JavaScrip技术来检查表单输入的内容。单击submit按钮后,系统调用UserAction类的savereg()方法。该方法通过UserModel模型类从数据库中获取相关信息,判断成员名称是否已经存在。如果没有,则注册成功。如果会员名称已经注册,请返回会员注册页面。会员注册页面如图所示。图5-3会员注册页面5.1.2登
33、录模块的设计与实现注册会员在首页的登录框中输入会员名称、密码和验证码,登录操作完成。在成员点击提交按钮后,系统将调用UserAction类的chkuser()方法。在该方法中,通过接收表单信息来检查验证码,并通过UserModel模型类从数据库中获取相关信息,使用成员提交的成员名称和密码来检查成员的状态。如果会员名称、密码或验证码输入错误或会员已被冻结,会员登录将被拒绝,并弹出相关信息返回首页。如果会员输入的信息正确且未被冻结,将会打开会话,在会话中存储会员的相关信息,并显示会员登录成功。会员登录页面如图5-4所示。图5-4会员注册页面5.1.3查询模块的设计与实现会员可以在首页浏览相关产品,
34、也可以在网页顶部的搜索框输入相关信息进行模糊搜索或精确搜索。如果单击“立即查找”按钮,系统将调用ProductAction类的findsp方法。该方法使用尚品模型模型类对输入的关键词进行模糊查询。然后系统将查询结果注入到模板文件findsp.html中,并调用模板文件显示查询结果。如果点击精确查找按钮,系统将调用ProductAction类的hightfind方法,该方法将通过ShangpinModel类和TypeModel类从数据库中查询产品名称、型号、类型等信息。系统将这些注入到模板文件hightfind.html中,并调用模板文件来显示精确搜索页面。在这个页面上,会员可以选择详细的商品信
35、息进行精确搜索。系统会调用ProductAction类的dohightfind方法,通过尚品模型类在数据库中精确匹配搜索输入的信息。系统结果被注入到模板文件findsp.html中,模板文件被调用以显示查询结果。查询页面如图5-5所示。图5-5查询结果页面在网页上点击商品的图片和名称后,系统会调用ProductAction类的lookinfo()方法。该方法从super接收参数,并根据参数通过尚品模型类从数据库中查询商品的相关信息。系统会将查询结果注入到模板文件lookinfo.html中,该文件会被调用来显示商品的具体信息。具体产品信息页面如图5-6所示。图5-6产品特定信息页面系统自动判断
36、会员是否登录。如果没有登录,只会显示商品的具体信息。如果有成员登录,评论框会继续显示。登录成员输入评论主题和评论内容后,点击提交按钮完成评论。系统调用ProductAction类的savepj()方法。该方法从表单中接收参数,从会话中获取成员名,然后通过UserModel模型类从数据库中获取成员号,最后通过PingjiaModel类将数据插入到数据库中的pingjia表中。在这个页面上,点击“查看这个产品评论”选项卡,系统调用ProductAction类的savepj()方法。该方法接收传递的参数,通过PingjiaModel类从pingjia表中获取该产品的所有评论,并以页面的形式显示。评论
37、页面如图5-7所示。图5-7显示了评论页面5.1.4订购模块的设计与实现这种设计只允许登录会员订购商品。在显示的商品页面点击“加入购物车”标签后,系统会根据会话判断会员是否登录。如果没有成员登录,弹出窗口将显示一条消息。如果有成员登录。然后系统调用ProductAction类的addgouwuche()方法来接收产品号。该方法通过尚品模型类从尚品表中查询商品的数量并做出判断。如果数量小于0,弹出窗口显示“售完”。如果商品售完,通过会话判断购物车是否有该商品的记录。如果有记录,会弹出窗口提醒会员更改数量。如果没有记录,将商品的编号和数量放在会话中,即放入购物车。然后将调用ProductActio
38、n类的gouwu1()方法。登录的会员点击首页的“查看购物车”按钮,系统也会调用这个方法来显示购物车。该方法从session中获取商品的数量和购买数量,使用尚品模型类从尚品表中查询商品的相关信息,并计算购物车的总金额。然后,系统将数据注入到模板文件gouwu1.html中,并调用模板来显示购物车信息。如果在这个页面上修改了商品的数量,再次调用gouwu1()方法来更新购物车信息。在这个设计中,如果订单总金额不超过30元,将额外收取10元运费。如果有成员点击某条记录对应的remove操作,系统会调用ProductAction类的removegwc()方法,根据传递的参数从购物车中删除该记录。购物
39、车页面如图5-8所示。图5-8购物车页面购买完成后,点击“购买完成”标签,进入填写收割机信息界面。在此页面上填写信息后,提交订单。系统调用ProductAction类的savedd()方法,通过DingdanModel类将订单信息插入到但丁表中。然后调用showdd()方法,通过DingdanModel类从但丁表中获取信息。系统订单信息被注入到模板文件showdd.html中,模板被调用以显示订单信息。显示的订单信息如图5-9所示。图5-9显示了订单页面。5.1.5个人信息模块的设计与实现在会员首页点击会员中心按钮后,系统调用UserAction类的usercenter()方法,该方法通过Us
40、erModel类获取当前登录会员的相关信息。将系统信息注入到模板文件usercenter.html中,并调用模板进行显示。成员可以在此页面上修改他们的信息。成员点击“变更”按钮后,系统调用changeinfo()方法,该方法接收成员的变更信息,并通过UserModel类将数据插入到用户表中。成员页面如图5-10所示。图5-10会员中心页面成员点击“修改密码”页签,系统直接调用模板文件changepassword.html,显示修改密码页面。修改完成后,点击确认修改按钮完成操作。系统调用UserAction类的chkpassword()方法,验证成员输入的信息,通过UserModel类将符合条件
41、的数据插入到用户表中。密码修改页面如图5-11所示。图5-11更改密码页面成员点击“订单查询”页签,系统会调用ProductAction类的finddd()方法。该方法从会话中获取登录成员名称,并通过DingdanModel模型类从但丁表中查询登录成员提交的所有订单记录。将系统数据注入到模板文件finddd.html中,并调用模板进行显示。会员可以在此页面查看订单状态并确认收获操作。会员点击“确认收货”按钮后,系统调用ProductAction类的qrdd()方法,通过DingdanModel模型类改变但丁表中订单的状态。会员也可以在搜索框中输入订单号,系统会根据会员名称和session中输入
42、的订单号调用finddd()方法从但丁表中查询具体的订单信息。查询页面如图5-12所示。图5-12查询订单页面5.2后台模块的设计与实现根据分析,后台模块共有七个动作控制器类:DingdanAction类、GonggaoAction类、indexing类、ProductAction类、PublicAction类、TypeAction类和UserAction类。类型类负责与商品分类相关的一些操作。其他控制器类具有与前台模块相似的功能。后台控制器的类图如图5-13所示。图5-13后台模块控制器类图后台模块需要数据库中的全部七个表,所以后台模块中有七个模型类:DingdanModel类、Gongga
43、oModel类、PingjiaModel类、ShangpinModel类、TypeModel类、UserModel类和AdminModel类。七个模型类都继承了ThinkPHP框架的模型类模型类。背景模型类图如图5-14所示。图5-14后台模块模型类图5.2.1管理商品模块的设计与实现管理员登录后,在后台管理页面点击“添加商品类别”,添加商品类别。本设计中的商品类别分为两个层次。一级分类的父类别名称设置为顶级,父类别编号设置为0。二级类别的父类别名称和编号可以从一级类别中选择。系统调用TypeAction类的addleibie()方法,通过TypeModel模型类从数据库中取出所有一级分类的名
44、称和编号,注入到模板文件addleibie.html中,调用模板文件显示添加类别的页面。输入管理员类别名称,选择类别级别和父名称,然后完成操作。系统调用saveaddleibie()方法,通过TypeModel类从类型表中检索数据,并确定该类是否已经存在。如果该类别已经存在,弹出窗口将显示一条错误消息,拒绝添加操作。如果没有这样的类别,将新类别的信息插入到类型表中。添加类别界面如图5-15所示。图5-15添加类别界面管理员登录点击“商品类别管理”页签,系统调用TypeAction类的showleibie()方法。通过TypeModel模型类从数据库中取出所有类别的名称和编号,注入到模板文件sh
45、owleibie.html中,调用模板文件以页面的形式显示类别信息。显示类别页面如图5-16所示。图5-16显示了类别界面管理员在显示类别页面点击某个类别的“变更”标签后,系统会调用TypeAction类的xiugaileibie()方法,通过TypeModel模型类将该类别的相关信息从数据库注入到模板文件xiugaileibie.html中,调用模板文件显示修改后的类别信息页面。管理员可以修改类别的名称和父类别。管理员确认修改后,系统调用savexiugailb()方法,通过TypeModel类更新type表中该商品类别的信息。在显示类别页面上,管理员可以单击每个商品类别对应的删除复选框来删
46、除该类别。系统调用typeAction类的deletelb()方法,根据接收到的商品类别号,通过TypeModel类从类型表中删除商品类别信息,通过尚品模型类从尚品表中删除所有属于该类的商品信息。管理员可以点击添加商品标签来添加商品。系统调用ProductAction类的addgoods()方法,通过TypeModel模型类从库中取出所有二级分类的名称和编号,注入到模板文件addlgoods.html中,调用模板文件显示添加商品的页面。在该页面中,管理员输入商品的具体信息,选择商品类别,上传商品图片,完成添加商品的操作。系统调用savenewgoods()方法,并通过尚品模型类向尚品表中插入一
47、条新的商品记录。添加商品界面如图5-17所示。图5-17添加类别界面管理员登录点击“修改商品”标签后,系统会调用ProductAction类的editgoods()方法。该方法通过尚品模型模型类从尚品表中取出所有商品的信息,注入到模板文件editgoods.html中,调用模板文件分页显示商品记录。显示产品记录页面如图5-18所示。图5-18显示了商品记录界面管理员在显示的商品记录页面点击某个商品的“修改”页签后,系统会调用ProductAction类的changegoods()方法,通过尚品模型类从尚品表中取出该商品的具体信息。将系统信息注入模板文件changegoods.html,调用模板
48、文件显示修改商品信息页面。管理员可以在此页面修改商品的具体信息。管理员确认修改后,系统调用savechangegoods()方法,根据接收到的商品编号,通过尚品模型类更新类型表中的商品信息。在显示类别页面上,管理员可以点击每个商品对应的删除复选框来删除该商品。系统调用ProductAction类的deletegoods()方法,根据接收到的产品编号,通过尚品模型类从尚品表中删除产品信息。5.2.2管理用户模块的设计与实现管理员点击“成员信息管理”页签后,系统调用UserAction类的edituser()方法,通过UserModel类从用户表中取出所有成员信息。系统的所有信息都注入到模板文件e
49、dituser.html中,调用该模板在页面中显示成员信息。会员信息页面如图5-19所示。图5-19显示了成员信息页面管理员可以点击此页面上的“删除”复选框来删除一些成员信息。系统调用deleteuser(),根据接收到的成员号,通过UserModel类从用户表中删除成员记录。该方法还会通过GonggaoModel类删除成员的所有注释。在该页面中,管理员可以点击成员对应的“查看”页签,查看成员的具体信息,管理成员的状态。系统调用lookuserinfo()方法,该方法根据接收到的成员号,通过UserModel类从用户表中取出成员的详细数据。将系统数据注入到模板文件lookuserinfo.ht
50、ml中,并调用该模板来显示特定的成员信息。具体会员信息页面如图5-20所示。图5-20显示了具体的会员信息页面。管理员在会员信息页面点击“冻结会员”或“解冻会员”页签,系统调用UserAction类的dongjieuser()方法。该方法根据接收到的成员号,通过UserModel类修改用户表中的成员状态,然后返回显示成员信息的页面。管理员单击“管理员信息管理”选项卡后,系统调用UserAction类的changeadmin()方法,该方法通过AdminModel类从admin表中获取管理员信息。将系统信息注入到模板文件changeadmin.html中,并调用该模板来显示管理员信息。管理员在此
51、页面上修改自己的信息。修改后,系统调用saceadmin()方法,通过AdminModel类更改admin表中管理员的记录,并返回显示管理员信息的页面。5.2.3订单管理模块的设计与实现管理员点击“查询订单”页签后,系统调用dingdanAction类的lookdd()方法,通过DingdanModel类从但丁表中取出所有订单信息。管理员还可以在该页面的搜索框中输入订购者和订单号,以搜索特定的订单信息。lookdd()方法接收表单传递的参数,然后通过DingdanModel类从但丁表中获取合格的订单信息。系统将订单信息注入到模板文件lookdd.html中,并调用模板在页面中显示订单信息。订单
52、页面如图5-21所示。图5-21显示了订单页面在该页面中,管理员可以点击订单记录对应的“删除”复选框来删除一些订单信息。系统调用deletedd(),根据收到的订单号,通过DingdanModel类从但丁表中删除订单记录。管理员可以在此页面上点击订单记录对应的“查看”按钮,查看和修改订单详细信息。系统调用dingdanAction类的orderdd()方法,该方法根据收到的订单号,通过DingdanModel类从但丁表中取出订单的详细信息。管理员可以在此页面修改订单状态或收货人的相关信息。管理员提交信息后,系统调用dingdanAction类的saveorder()方法,通过DingdanMo
53、del类更新但丁表中的订单明细。显示订单详细信息的页面如图5-22所示。图5-22显示了订单详情页面。5.2.4管理信息模块的设计和实现管理员可以单击“添加公告”选项卡来添加公告。系统调用GonggaoAction类的addgonggao()方法显示添加公告的页面。管理员在此页面上输入公告的主题和内容,并添加公告。系统调用savenewgonggao()方法,通过GonggaoModel类将新的公告记录插入到高拱表中。添加公告界面如图5-23所示。图5-23添加公告页面管理员登录点击“公告管理”选项卡后,系统调用GonggaoAction类的admingonggao()方法。该方法从Gongg
54、aoModel类中取出所有公告信息,注入到模板文件admingonggao.html中,调用模板文件显示公告记录。管理员在显示公告记录的页面中,点击公告对印对应的“修改”页签后,系统会调用GonggaoAction类的editgonggao()方法,通过GonggaoModel类从gonggaotable中取出公告的具体信息。将系统信息注入模板文件editgonggao.html,调用模板文件显示修改后的公告信息页面。管理员可以修改公告的具体信息。管理员确认修改后,系统调用savexiugaigonggao()方法,根据接收到的公告编号,通过GonggaoModel类更新高拱表中公告的信息。管
55、理员可以单击每个公告对应的删除复选框,以删除显示公告页面上的公告。系统调用GonggaoAction类的deletegonggao()方法,根据收到的公告编号GonggaoModel类从高拱表中删除公告。管理员登录点击“评论管理”选项卡后,系统调用GonggaoAction类的editpinglun()方法,从数据库中取出所有发布的信息。将系统信息注入到模板文件editpinglun.html中,并调用模板文件来显示注释信息。将显示注释信息页面,如图所示。管理员可以在“显示公告”页面上单击每个公告对应的“删除”复选框来删除注释。系统会调用GonggaoAction类的deletepj()方法,
56、根据收到的评论号,通过PingjiaModel类从pingjia表中删除评论。第六章:系统测试与分析6.1系统测试介绍系统测试(st)是将被测试的子系统组装成一个完整的系统进行测试。是检验系统是否能真正提供系统方案说明书中规定的功能的有效方法。在任何软件系统的开发中,尤其是在大型软件系统的开发中,任何程序员都不可避免地会犯错误。为了尽可能地发现和纠正系统设计中的错误,减少错误造成的损失,保证系统开发的质量,有必要进行系统测试。系统测试方法分为手工测试和机器测试。人工测试是指人们审查、讨论或人工运行程序,以找出程序的错误。使用的工具有钢笔、纸、计算器等。,包括程序评审会、手动操作和静态检查。测试
57、是通过计算机运行程序来发现程序错误,主要有白盒法和黑盒法。测试用例来源于对程序的分析,通过程序执行的程度来判断测试是否充分。这种方法被称为“白盒法”。白盒方法主要用于单元测试。基于需求规格和需求描述的测试。测试用例来源于对软件需求描述和需求规格说明的分析,根据需求描述和需求规格说明中规定的功能和性能是否经过充分测试来判断测试是否充分。这种方法被称为“黑盒法”。黑盒方法主要用于系统测试。还有一个测试是把过程和需求结合起来。测试用例来自于对需求和实现的综合考虑,这种方法被称为“灰箱法”。灰箱法主要用于集成测试。黑盒测试就是把测试对象看成一个黑盒。测试人员根本不考虑程序部门的逻辑结构和特点。只有根据
58、程序的需求说明书,检查程序的功能是否符合其功能描述。不需要测试软件产品的结构和处理。该系统采用黑盒测试,通过测试用例进行测试。6.2系统测试计划表6-1会员注册模块的测试用例用例描述会员注册测试测试要求检查会员注册时输入的信息是否合法。判例案件1.单击提交按钮,不输入任何信息。2.输入成员名称# $% &3.成员名称输入aa4.输入注册密码1115.输入注册密码11111并确认密码22222。6.输入注册会员名称。7.电子输入。8.输入1111。9.联系信息输入22210.输入正确的信息。预期产出1.提示:请输入成员名称。2.提示会员名称应为英文或数字,长度为3-30位。3.提示会员名称应为英
59、文或数字,长度为3-30位。4.提示注册密码长度应大于6!5.提示注册密码与确认密码不同。6.提示会员名称已注册。7.提示电子地址格式不正确。8.提示:请输入正确的号码9.提示输入正确的联系信息10.提示注册成功。实际输出1.提示:请输入成员名称。2.提示会员名称应为英文或数字,长度为3-30位。3.提示会员名称应为英文或数字,长度为3-30位。4.提示注册密码长度应大于6!5.提示注册密码与确认密码不同。6.提示会员名称已注册。7.提示电子地址格式不正确。8.提示:请输入正确的号码9.提示输入正确的联系信息10.提示注册成功。结果比较实际产量符合预期产量。表6-2会员登录模块测试用例用例描述会员登录测试测试要求检查会员登录时输入的信息是否合法。判例案件1.无需输入任何信息,只需点击登录按钮。2.成员名称输入3.输入未注册成员的名称。4.输入错误的密码。5.输入错误的验证码6.成员登录已被冻结。7.注册和解冻
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 买卖种子合同范本
- 农业委托种植合同范本
- 体育新城租房合同范本
- 剩余瓷砖售卖合同范本
- 人工包给劳务公司合同范本
- 协助出口退税合同范本
- 农资经营聘用合同范本
- 3人共同合作合同范本
- lng承运合同范本
- 医保专员劳动合同范本
- 中小学领导班子包级包组包班制度
- 汽车挂靠经营合同协议书模板
- 基坑土方开挖专项施工方案(完整版)
- 电网工程设备材料信息参考价(2024年第四季度)
- 2025年江苏农牧科技职业学院高职单招职业技能测试近5年常考版参考题库含答案解析
- 数据中心运维服务投标方案(技术标)
- 瑞幸对赌协议
- 部编人教版四年级下册道德与法治全册教案
- 2024年湖南铁道职业技术学院单招职业技能测试题库及答案解析word版
- 健康保险学PPT完整全套教学课件
- 大学生心理健康教育高职PPT完整全套教学课件
评论
0/150
提交评论