




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于安卓技术的点餐系统的设计与实现基于安卓技术的点餐系统的设计与实现 摘摘 要要 随着科学技术和社会经济的不断提高,人们对服务的快捷、便利性要求也 越来越高,从而对智能手机上的应用软件提出了更高的要求。一个基于安卓技 术的点餐系统能够为用户提供一个方便日常操作的便捷点餐功能,它能够满足广 大手机用户的订餐需要,为需求双方提供了一个共赢的平台。 本系统正是为了实现手机网上订餐而设计,所包含到的有关技术有: android 平台、mysql 技术、java 语言等技术。能够实现订餐、选择座位、我 的订餐、人工服务、菜单管理、用户管理等作用。用户注册后,登陆客户端即 可完成订餐、浏览菜谱等功能。运行
2、测试表明:该系统功能完善、运行顺畅稳 定,具有一定的商业实用价值。设计开发过程中,分析并解决了若干技术问题, 巩固并深化了本科阶段所学的知识。 关键词关键词: android;mysql;java;测试 the design and implementation of meal ordering system based on android technology abstract with the constant improvement of science and technology and social economy, people also have increasingly h
3、igh requirements for the efficiency and convenience of service, thus proposing a higher requirement for the application software on smartphone. a meal ordering system based on android technology, which can provide a fast and easy ordering function convenient for daily operation, can meet numerous ce
4、llphone users demand for food ordering and provide a win-win platform for both demand sides. this system is exactly designed for achieving online meal ordering on cellphone, and involves the following relevant technologies: android platform, mysql technology, java language. it mainly achieves functi
5、ons of food ordering, seat selection, my order, manual service, menu management, and user management. after registration, the users can fulfill the functions of food ordering and menu browsing by logging in the client. the operational test indicates that: this system is complete in function and smoo
6、th and steady in operation, and has certain value of commercial utility. in the process of design and development, several technological problems are analyzed and solved, which consolidates and deepens the knowledge learned during undergraduate study. key words: android; mysql; java; test 目目 录录 论文总页
7、数:34 页 1 绪论.1 1.1 课题研究背景和意义.1 1.2 课题可行性分析 .1 2 系统分析.2 2.1 概述 .2 2.1.1 系统分析的原则.2 2.1.2 系统分析的方法.2 2.2 系统需求分析 .2 2.3 系统流程分析.4 2.4 系统用例图 .5 2.5 开发环境平台的选择.6 3 总体设计.7 3.1 系统设计原则.7 3.2 系统设计目标.7 3.3 系统总体结构设计.8 4 数据库设计 .8 4.1 服务端数据库设计.8 4.2 数据库 er 图.10 5 系统详细设计与实现.11 5.1 登录模块的实现 .11 5.2 菜谱模块的实现 .15 5.3 在线下单模
8、块的实现 .18 5.4 用户订单模块的实现 .21 5.5 服务端模块的实现 .24 5.5.1 人工服务模块的实现.25 5.5.2 菜谱管理模块的实现.26 5.5.3 用户管理模块的实现.26 5.5.4 订单管理模块的实现.28 5 系统测试.29 5.1 测试方法.29 5.2 测试内容.29 5.3 测试结果 .30 总 结.31 参考文献.32 致 谢.33 声 明.34 1 1 绪论绪论 1.11.1 课题研究背景和意义课题研究背景和意义 由于智能手机和手机软件愈加广泛的发展和运用,目前“手机 app”已经 成为广受社会关注的焦点,手机应用逐渐变成人们进行信息交流的主要工具。
9、 在目前各种品牌手机争相斗艳的时期,谷歌与 2008 年开始开发出一款广受大家 关注的移动操作系统-android。这一移动操作系统借助其极高的开放性与较好 的优化程度,获得了手机生产厂家与适用人群越来越多的重视。 如今科技突飞猛进、人们的生活节奏也逐渐加快,由于移动终端技术的日 趋成熟,社会对于手机设备的功能需求变得愈来愈大,已逐渐从以往的技术需 求转变为功能需求,所以,移动软件系统的需求也提高了很多。本设计是以 android 操作系统为基础的“基于 android 技术的点餐系统”软件的设计与实 现。 为了方便用户可以随时随地查看点餐信息,一种高效的办法就是将点餐做 成应用程序拓展到用户
10、的终端设备上,并且提供一些辅助功能。所以这次毕设 的目标就致力于开发出一款基于 android 手机平台的点餐系统,来满足用户的 需求。 现在社会上的的工作压力很大并有增加的趋势,人们已经离不开有网络的 生活,网络逐渐变成大家人生的重要组成。网上订餐是专门为工作较忙以及经 常不出门的“宅人”设计的,不需要离家、不需要诳街就可以便捷购买到想要 的食物的专业手机程序。此款系统可以不妨碍使用者的生活轨迹,又可以增添 使用者生活乐趣、简化购物程序,同时为许多商家提供了更多契机。 1.21.2 课题可行性分析课题可行性分析 智能手机的出现减少了很多方面的限制,具有很多优势,人们可以随时随 地的传递信息,
11、订购商品,不论时间不论地点,正是这个优点使得智能手机能 够受到越来越多人是喜爱,比如,用户智能手机点餐速度迅速比传统的点餐要 快的多,大大提高了效率。 1.经济可行性 由于世界经济水平的突飞猛进,科技水平得到了前所未有的巨大发展,社 会正步入一个崭新的网路信息时期。因为社会持续发展的生活与工作水平,人 们的非物质需求正在逐渐增加,伴随出现的就是网络技术的持续进步,当代社 会网络应用变得愈加广泛,人们之间的相互沟通日趋广泛、交流也愈加简便, 所有这些,使得人们的生产生活方式发生了巨大转变。是故,由于网络技术的 进步,电商领域逐渐发展,极大程度上改变了人们的购物方式。在如今这个年 代,几乎所有计算
12、机使用者都能够进行网上购物的操作,而且往往乐此不疲。 从长久的角度来想,安卓点餐系统的开发与应用还是存在很大的经济前景。 2.技术可行性 技术可行性一般是因为现在已经存在的的技术因素而控制的,比如,是否 可以进行平稳的功能开发,软、硬件功能会不会达到系统所规定的条件。如今 这个时代,是网络资源化的时代,网络资源爆发式增长,这引起了所有其他相 关技术的进步,所以对于技术条件来说是能够实现的。本系统单个用 java 语言, 使用 ssh 技术与 mysql 数据库进行开发,上述技术在现在已经很广泛且很成熟, 已经无数次被应用于软件与系统研究中,所有,这个系统对科学水平来说是能 够实现的。 2 2
13、系统分析系统分析 重点介绍了基于 android 技术的点餐系统的可行性分析,这属于本系统开 发工作中的关键构成。简单的介绍系统分析的重要性和方法,针对本系统,详 细介绍系统的需求和系统流程。 2.12.1 概述概述 系统分析简单的就是分析系统的需求和功能,确认系统的功能的业务逻辑, 将系统分成不同的模块仔细的研究。包括系统流程,于总体设计的引导下,确 定新系统逻辑功能。本着为用户负责的规定,分析系统的过程。 .1 系统分析的原则系统分析的原则 做好系统分析工作很重要,系统分析能为软件开发除去很多困难,减轻很 多麻烦,当然系统分析不是简单的分析系统的完成功能,系统分析要遵循一定
14、 的原则,这样才能保证分析工作能够顺利进行,系统分析的原则有: 1.设计规范原则 2.面向用户的原则 3.结构化分析的原则 在系统研究之前,分析以 android 技术为基础的点餐结构应该达到的作用 和实现的目标。首先从大的方面来讲,它应该能够完成点餐功能,从小的方面 来说系统应该具有用户退订的功能。除了功能之外,同时系统也要包含一定扩 展能力。 .2 系统分析的方法系统分析的方法 结构化的系统分析方法经典不变,它的精髓也可以用“自顶向下的逐层分 解,逐步细分,逐步求精“几个字来概括。因此,本系统也做到由抽象到具体, 由大到小的措施实现结构化分析。在完成整个系统的开发的始终的过
15、程中,人 们往往将大量的精力放在编码上,以为在规定的时间内完成编码,实现功能就 算是完成软件的开发了,而忽略了编码之前的系统设计。其实系统设计和系统 编码是一个统一的整体,每一部分都不可缺少。在系统设计中制定良好的编码 规范和开发流程,能够确保无二义性,使得开发顺利进行,这也能提高开发这 的开发效率。 2.22.2 系统需求分析系统需求分析 客户端功能需求分析: 登录、注册:使用者想要运行系统必须登录,如果未申请账号能够通过注册 模块申请; 菜谱查询:查询目前餐厅店菜单列表数据; 详情查询:可以查询一个菜的全部数据,有价格、介绍和数量; 在线点餐:支持用户在线下单点餐; 选择座位:支持使用者在
16、 android 手机上选座位; 我的订单:支持使能够查看自己已经下单的数据,能够删掉自己的订单; 人工服务:客户端可以呼叫服务员; 服务端功能分析: 登录模块:管理员登录使用系统; 菜谱管理:管理员能够查看当前界面的数据,能够添加、修改或者删除一个 菜谱数据; 用户管理:管理员能够查看到当前系统已经存在的用户信息,能够删掉一个 用户信息; 原材料管理:管理员可以查看当前系统的原材料信息,可以添加、修改或者 删除一个原材料信息,原材料库存较低时会警报; 订单管理:管理员可以查看到当前的所有订单信息,可以修改订单状态,例 如把一个进行中的订单修改为已经完成; 具体的系统全部作用如图 1: 点餐系
17、统 后台部分前台部分 点 餐 个 人 信 息 我 的 订 单 人 工 服 务 登 录 注 册 人 工 服 务 管 理 菜 谱 管 理 订 单 管 理 用 户 信 息 管 理 原 材 料 管 理 登 录 退 出 图 1 系统功能框架图 2.32.3 系统流程分析系统流程分析 为了使得完成的软件能够平稳运行,完善了系统流程的所有环节。对每个 流程要用到的关键技术也做了充分准备。 首先本系统用户在使用系统前都必须经过用户登录验证,只有验证通过的 用户才能进入系统, 用户流程图和管理员流程图如图 2 和图 3 所示。 图 2 用户流程图 图 3 管理员流程图 2.42.4 系统用例图系统用例图 用户用
18、例图: 用户 登录 注册 浏览菜谱 点餐 我的订单 人工服务 个人信息 图 4 用户用例图 本系统包含两个构成部分即使用者与管理员。图 4 为用户用例图。普通用 户有登录、注册、浏览菜谱、点餐、我的订单、人工服务、个人信息七个一级 用例。 管理员用例图: 图 5 管理员用例图 图 5 为管理员用例图。管理员有后台登录管理、人工服务、菜谱管理、用 户管理、订单管理、原材料管理 6 个一级用例。 2.52.5 开发环境平台的选择开发环境平台的选择 以 eclipse 为开发工具,tomcat 为 web 应用服务器,采用 mysql 数据库存 储数据。 eclipse 是一个企业级工作平台,利用它
19、可以在数据库和 javaee 的开发、 发布以及服务器的整合等方面极大的提高工作效率。 tomcat 是一个小型的轻量级应用服务器,它技术先进、性能稳定、占用资 源小、扩展性好、使用简便而且开源。 mysql 是一个开放源码的小型关联式数据库管理系统,被广泛的应用在中 小型网站中。它具有体积小、速度快、总体成本低、开放源码等特点。 任何事物要运行,都要有它的环境,android 也要有它的环境才能够运行, 下面介绍 android 的开发环境配置。 搭建开发环境需要的软件: 操作系统:window xp 或 linux 软件包:android sdk(software development
20、kit java development kit) 、adt(android develoopment tool) ide 环境:eclipse ide+adt eclipse3.3 以上 jdk:java runtime environment 虚拟机 、(jdk)java development kit 3 3 总体设计总体设计 3.13.1 系统设计原则系统设计原则 系统设计和系统编码是一个统一的整体,每一部分都不可缺少。在系统设 计中制定良好的编码规范和开发流程,能够确保无二义性,使得开发顺利进行, 这也能提高开发这的开发效率。此外,在进行系统设计过程中,还应该遵循的 主要原则如下。
21、1、适用性原则 好的系统开发出来首先要能够完成基本的功能,即满足用户的要求,这是 软件开发的首要目的。如果开发出来的软件不能满足用户的需求,那么此软件 注定是失败的开发。在此基础上还要考虑软件的的操作性,要能保证软件在运 行环境下没有 bug,能让用户操作起来简单,明了,还要功能全面易用化。不 应该只考虑软件的收益,否则必将面临很大的问题。 2、可靠性安全性原则 随着计算机网络的发展,网络除了带人人们便利之外也带开了很多安全隐 患,如,隐私安全、个人财产安全等等,虽然此次开发的系统简单,但是安全 问题是每个系统都必须考虑的问题。网上订餐系统中既要保护用户个人信息的 安全,保证不被泄露,还要保证
22、他们的财产安全。只有具备安全措施的系统才 能够让用户放心。 3、可扩展性原则 现在的科技发展速度之快,不仅是研发的快,更新换代的速度也令人惊讶, 科技技术不断退陈旧新,因此,为了适应时代的发展速度,系统的可扩展能力 也是开发过程中要考虑的事情。 那么如何提高系统的可扩展性呢?这里就充分体现了设计在开发中的重要作 用。在软件设计的过程中,将网上订餐系统划分成不同的功能模块,并降低模 块之间的耦合度来提高系统的扩展性。 3.23.2 系统设计目标系统设计目标 在系统开发之前要对系统进行需求分析,功能概括,难点解析等等的工作, 之后对于系统大概要完成什么目标,系统的界面和设计等问题的思考来满足用 户
23、的要求。系统设计过程中将系统分解为很多不同的小的系统,然后对分成的小 的系统的功能、技术进行分析讨论,制定规定,在之后的开发中,先开发小的 系统之后进行整合,逐步完成开发。 本系统是设计目标是建立一个基于 android 技术的点餐系统,可以满足用 户对手机订餐的需求。 根据需求分析还有自己的生活体会,在线点餐系统一定要有以下基本的要 求。 (1)界面看着新颖活力、大方美观,吸引用户。 (2)具有易调试性和没有 bug 性。 (3)用户能够方便的查看所有的食品信息和单个用户的详细信息内容。 (4)具有操作方便、功能完善的管理功能。 3.33.3 系统总体结构设计系统总体结构设计 系统的总体结构
24、设计是在软件开发之前必须要做好的一件基本工作,作为 一个优秀的程序员不仅要有很强的编码能力,对于系统的总体结构的设计也要 很精通。做好系统的总体结构设计会让系统开发顺利进行,做到事半功倍。 在此次系统的总体结构设计过程中,系统分为客户端和服务端,客户端是 可以在安卓智能手机上使用的,服务端采用 servlet 提供服务,持久化层采用 mysql,因为 mysql 的安装和配置都适合小型的系统。在进行系统的总体设计之 后紧接着就是数据库的需求设计。 系统整体框架采用 c/s 模式,即客户端/服务器模式,其中客户端一方面与 用户交互,提供良好的用户界面,另一方面与服务器端进行数据交换。服务器 端向
25、客户端提供数据。管理员可以对数据进行增,删,改,查等操作。 图 6 系统 c/s 图 4 4 数据库设计数据库设计 4.14.1 服务端数据库设计服务端数据库设计 e-r 图属于一类概念模型,其本质是由真实社会过渡至虚拟世界的过度点。 概念模型表示虚拟世界的部分,它表示真实社会过渡至虚拟世界的第一层抽象, 极大的促进了数据库设计者参与数据库设计的进程,存在完善的语义表述功能, 可以便捷完善的描述用众的所有语义概念,此外,其还应当合理、清晰和方便 使用者理解。 在开发系统的时候,要考虑数据库的设计,第一要考虑的就是数据持久层 要用的工具,由于本系统要包好的数据库表并不多,一个小型的数据库工具就
26、足以符合本系统的需求,所以本系统的数据库采用了 mysql。本设计一共使用 了 5 个数据库表,每个表的详细设计结构: 管理员表(admins) 管理员表中包含这管理员的相关数据,其表结构详见表 1: 表 1 管理员表 序号列名数据类型长度标识主键允许空说明 1idint11是是否auto_increment 2loginidvarchar255是 3passwordsvarchar255是 菜谱表(dishes) 菜谱表中存储着菜谱相关信息,其表结构详见表 2: 表 2 菜谱表 序号列名数据类型长度标识主键允许空说明 1idint11是是否auto_increment 2titletext是
27、标题 3shopidint11是类型 id 4typenametext是类型名称 5introtext是详细介绍 6img_urlvarchar255是图片 7pricedouble11是价格 8amountdouble11是数量 9burdennamesvarchar原材料 10burdensvarchar原材料 id 订单表(orders) 订单表中存储着订单的所有数据,其表结构详见表 3: 表 3 订单表 序号列名数据类型标识主键允许空说明 1idint是是否auto_increment 2useridint是 3usernametext是下单人 5statusint是 6dishesi
28、dint是 7pricedouble是 8amountdouble是 9createtimevarchar是下单时间 食物分类表(shops) 食物分类表中存储着食物分类的相关信息,其表结构如表 4 所示: 表 4 食物分类表 序号列名数据类型长度标识主键允许空说明 1idint11是是否auto_increment 2nametext是类型名称 用户表(users) 用户表中存储着用户的相关数据,其表结构详见表 5: 表 5 用户表 序号列名数据类型长度标识主键允许空说明 1idint11是是否auto_increment 2loginidvarchar255是登录账号 3nametext是
29、姓名 4passwordsvarchar255是密码 4.24.2 数据库数据库 erer 图图 e-r 图是 doa(data orienteer approach)的一种主要的设计方法,它的作 用是处理对象的业务领域和系统的理想化样式,从概念数据模型到 e-r approach,根据实际的报表做出 e-r 图。e-r 图有实体及其间的对应关系组成。 e-r 图亦称为实体-联系图(entity relationship diagram),提供了表示 实体型、属性和联系的方法,能够表示现实世界的概念模型。 安卓点餐系统的 e-r 图详见 7: 图 7 系统 e-r 图 安卓点餐系统的物理数据详
30、见图 8: 图 8 物理数据模型图 5 5 系统详细设计与实现系统详细设计与实现 5.15.1 登录模块的实现登录模块的实现 本系统使用前用户需要登录验证,在登录界面中,通过继承一个 activity 来实现,界面上的控件用到了 edittext、button 和 checkbox 等等组件, edittext 主要用来实现用户帐号和密码的输入。 登录过程中用户需要输入账号与密码,并且经由登录按钮来表达登录意图, 意图表达完成,系统会经由 http 的过程将帐号与密码发送到服务器端验证,并 返回服务端的验证结果,如果验证正确那么提示使用者登录完成,然后自行转 入主界面;如果错误,那么提示使用者
31、登录失败。 该界面具有保存密码成功,假如使用者在登录时勾选了“保存密码”复选 框,则下次再进入到本界面用户将不需要再次输入密码,而只需要点击登录按 钮即可实现登录操作,记住密码的过程是通过 android 平台提供的 sharedpreferences 来实现的。 当然如果用户还没有登录账号,则能够通过“注册”选项链接到用户注册界 面,从而注册一个新号码; 使用者登录过程图详见图 9,展示了使用者登录功能的操作过程和系统处 理过程。 图 9 登录界面流程图 具体的实现效果如图 9 所示: 图 9 登录界面 实现的核心代码如下: loginactivity 的 doinbackground 的方
32、法发起 url 请求,发送用户名,密码 protected string doinbackground(string. params) string urlstring = appconstant.geturl(getapplicationcontext() + servletservice?action=login; urlstring += string json = httphelper.httprequest(urlstring); return json; loginactivity 的 onpostexecute 的方法 获取服务器返回 json,验证密码是 否正确 loginac
33、tivity 的 deallogin 是当密码验证成功后 跳转到 disheslistactivity onlineuser model = new onlineuser(); /设置登陆成功的用户属性 model.setid(jsonobject.getint(id); model.setloginid(etloginid.gettext().tostring(); model.setname(jsonobject.getstring(name); application.setloginuser(model); /弹出提示框 toastutil.show(model.getname() +
34、 ,登录成功); /跳转到登陆成功页面 intent = new intent(loginactivity.this, disheslistactivity.class); startactivity(intent); 5.25.2 菜谱模块的实现菜谱模块的实现 用户成功登陆进入系统之后可以查看到当前系统所有菜谱信息,包括菜谱 的图片、名称、单价和详细介绍信息,系统用了一个 listview 组件来显示系统 的菜谱信息,同时用户也可以通过界面左上角的搜索按钮来搜索菜谱信息,用户 点击一条信息之后可以查看一个菜谱的详细介绍。 菜谱模块作用流程图详见图 10,展示了订餐模块的用户操作过程和系统处
35、理过程。 图 10 菜谱功能流程图 具体的实现效果如图 11 和 12 所示: 图 11 菜谱大全界面 图 12 菜谱分类界面 实现的核心代码如下: /请求获取列表数据的代码 override protected string doinbackground(string. params) string json = null; serverurl = appconstant.geturl(getapplicationcontext() + servletservice?action=getdisheslist baseutil.logii(serverurl); json = httphelp
36、er.httprequest(serverurl); return json; /解析列表数据,并设置适配器的代码 list = new arraylist(); if (!textutils.isempty(result.trim() list = gson.fromjson(result, new typetokenlist() .gettype(); else toastutil.show(没有数据); adapter = new dishesadapter(disheslistactivity.this, list); listview1.setadapter(adapter); 点击
37、 listview 中的一项,会跳转到详情页面,这其中会根据 id 去调用 webservice 查询数据库获取到详情数据 /界面点击跳转的代码 listview1.setonitemclicklistener(new onitemclicklistener() override public void onitemclick(adapterview parent, view view, int position, long id) intent = new intent(disheslistactivity.this, gooddetailactivity.class); intent.pu
38、textra(id, list.get(position).getid(); startactivity(intent); ); menu 的实现,设置 menu 按键的弹出事件 public boolean oncreateoptionsmenu(menu menu) super.oncreateoptionsmenu(menu); menu.add(0, 99, 0, 人工服务). seticon(r.drawable.icon_application); menu.add(0, 100, 0, 注销登录). seticon(r.drawable.icon_application); me
39、nu.add(0, 101, 0, 个人信息). seticon(r.drawable.icon_application); menu.add(0, 106, 0, 我的订单). seticon(r.drawable.icon_application); menu.add(0, 102, 0, 退出). seticon(r.drawable.icon_application); return true; menu 选中触发的事件参考 onoptionsitemselected 方法 选中 人工服务 按钮后,会执行 humanservices 方法 private void humanservi
40、ces() final string arg = new string6; for (int i = 0; i 0) try jsonarray = new jsonarray(result); jsonobject = jsonarray.getjsonobject(0); (textview) findviewbyid(r.id.tvtoptitlecenter).settext(jsonobject.getstring(ti tle); (textview) findviewbyid(r.id.tvtoptitlecenter).settextsize(16); if (!textuti
41、ls.isempty(jsonobject.getstring(img_url) asyncimageloader.loadbitmap(serverurl + uploadfile/ + jsonobject.getstring(img_url), imageview1); string intro = 单价:¥ + jsonobject.getstring(price) + n; intro += 数量: + jsonobject.getstring(amount) + n; intro += 简介: + jsonobject.getstring(intro) + n 配料: + json
42、object.getstring(burdennames); tvintro.settext(intro); catch (jsonexception e) e.printstacktrace(); 下单操作 使用 post 请求,提交数据,实现代码如下 /提交订单的代码 protected string doinbackground(string. params) string urlstring = appconstant.geturl(getapplicationcontext() + servletservice; map map = new hashmap(); map.put(ac
43、tion, createorder); map.put(dishesid, id); map.put(userid, user.getid(); map.put(username, user.getname(); map.put(amount, etamount.gettext(); string result = httphelper.httppost(urlstring, map); return result; /判断订单提交后,webservice 的返回值,提示订单是否提交成功 protected void onpostexecute(string result) super.onp
44、ostexecute(result); dialog.dismiss(); if (result != null else if (result.trim().equals(-1) toastutil.show(原料不足,下单失败); else toastutil.show(下单失败); 5.45.4 用户订单模块的实现用户订单模块的实现 用户的下单信息将会被记录到服务端中,用户可以随时通过智能手机菜单键 来打开查看自己已经下过的订单信息,包括菜式信息、下单数量、选择的座位、 下单时间和当前的订单状态,同时用户也可以长按一条订单信息来弹出删除菜 单,用户可以删除一条订单信息。 我的订单模块作用
45、流程图详见图 15,展示了我的订单模块用户的操作过程 和系统处理过程。 图 15 我的订单流程图 具体的实现效果如图 16 所示: 图 16 我的订单界面 实现的核心代码如下: /通过 url 请求获取我的订单数据 protected string doinbackground(string. params) string json = null; serverurl = appconstant.geturl(getapplicationcontext() + servletservice?action=getmyorderslist json = httphelper.httprequest
46、(serverurl); return json; /解析返回的 json 字符串,把数据展示到界面上 jsonarray = new jsonarray(result); for (int i = 0; i 0) toastutil.show(取消成功); new loadasynctask().execute(); else toastutil.show(取消失败); 5.55.5 服务端模块的实现服务端模块的实现 服务端模块具有两方面作用,其一是给客户端提供数据服务接口,客户端调 用服务端的接口来得到数据库里面的菜谱、订单等所有数据,然后显示在客户 端界面上。 服务端存在另外一个作用:保
47、证信息的动态维护,比如菜谱信息维护、用户 信息维护、订单信息维护以及菜谱类型信息维护。比如管理员能够于服务端依 据真实状况增加一个菜式数据、删除一个菜式数据等操作。 图 17 服务端模块 .1 人工服务模块的实现人工服务模块的实现 使用者在前台呼叫人工服务的操作不可以马上执行,需要管理员于后台进 行信息管理审核以确认它的操作性,管理员单击后台界面中的“人工服务”进 入用户人工服务处理页面,该页面会显示近期所以的用户呼叫的人工服务。人 工服务处理页面显示的是呼叫人,呼叫时间等信息。人工服务主要通过从 humanservices 表中查询对应的用户信息并显示在页面中,管理员审核后再
48、对 服务状态进行修改,系统会根据提交的操作更新数据表。 流程图如图 18 所示。 图 18 人工服务模块流程图 人工服务信息页面如图 19 所示。 图 19 人工服务信息图 .2 菜谱管理模块的实现菜谱管理模块的实现 菜谱管理模块用来完成对菜谱信息的添加,修改,删除等功能,菜谱管理 模块流程如图 20 所示,展示了管理员对菜谱的操作过程和系统处理过程。 图 20 菜谱管理流程图 运行情况如图 21 所示: 图 21 菜谱管理信息图 .3 用户管理模块的实现用户管理模块的实现 用户管理模块用来完成对用户信息的修改,删除等功能,用户管理模块流 程如图 22 所示,展
49、示了管理员对用户信息的操作过程和系统处理过程。 图 22 用户管理流程图 运行情况如图 23 所示: 图 23 用户管理信息图 .4 订单管理模块的实现订单管理模块的实现 订单管理模块主要完成对订单状态的修改和删除,订单管理模块作用流程 详见图 24。 图 24 订单管理流程图 运行情况如图 25 所示: 图 25 订单管理信息图 5 5 系统测试系统测试 5.15.1 测试方法测试方法 测试是采用测试用例来检测出程序可能存在错误,缺陷,失效和事故等影 响程序正常工作的问题的一项软件活动,测试包括静态与动态两种,其中的静 态测试包括静态分析器分析,代码评审等方式,动态测试包括黑
50、盒与白盒两种, 灰盒测试与白盒、黑盒两种类型均有一定区别与联系,它不仅注重输入输出的 合理性,而且注重内部表现,可以发现黑盒与白盒测试所未重视的现象,尤其 如端对端的数据流问题、分布式硬软件组合问题和兼容性问题。 5.25.2 测试内容测试内容 “登录测试”用例与结果如表 6: 表 6 “登录测试”测试 系统安卓点餐系统版本 功能模块名登录模块对应开发人员刘子杰 用例编号test1用例设计者刘子杰 测试人员刘子杰测试日期2015.5.13 功能特性验证登录密码 测试目的验证登陆用户的密码的是否正确 前置条件运行程序 测试步骤1、输入正确密码 2、输入错误密码 3、不输入密码 期望结果1、登陆成功。 2、登录失败 3、登陆失败 实际结果与期望结果一致 结论登录模块功能正确
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 社区服务合同书范本协议样本
- 销售总代理权合同模板
- 医疗器械销售合同
- 合同违约律师法律意见
- 连锁加盟店合同的签订注意事项
- 美术馆装修合同
- 会展服务合同终止
- 医院药品采购合同的履行检查制度
- 饲料订购合同示例
- 上海南洋模范2025届高二生物第一学期期末检测模拟试题含解析
- 2024-2025学年五年级科学上册第二单元《地球表面的变化》测试卷(教科版)
- 2025年高考作文专练(25道真题+审题立意+范文)- 2025年高考语文作文备考总复习
- 2024年事业单位招聘考试公共基础知识试题及答案(共200题)
- 2024-2030年中国电动轮椅行业市场深度调研及发展趋势与投资战略研究报告
- 《草原上的小木屋》读书大教室
- 4.2 让家更美好 课件- 2024-2025学年统编版道德与法治七年级上册-1
- 二十届三中全会精神应知应会知识测试30题(附答案)
- 2024年浙江杭州江干区投资项目审批代办服务中心招考3人高频考题难、易错点模拟试题(共500题)附带答案详解
- 江苏省无锡市滨湖区2023-2024学年八年级上学期期中数学试卷
- 虚拟电厂项目可行性研究报告-国内陆续出台政策推动行业发展
- -第4课《揭开人际吸引的奥秘》 心理健康八年级上册
评论
0/150
提交评论