【基于Android的食品店购物系统设计10000字(论文)】_第1页
【基于Android的食品店购物系统设计10000字(论文)】_第2页
【基于Android的食品店购物系统设计10000字(论文)】_第3页
【基于Android的食品店购物系统设计10000字(论文)】_第4页
【基于Android的食品店购物系统设计10000字(论文)】_第5页
已阅读5页,还剩31页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

-IV-基于Android的食品店购物系统设计摘要时代在改变,人们也跟随着时代在改变,现在的人们可以说是无时无刻不能离开智能手机,手机支付,手机网上购物已经成为现代人不可或缺的一部分,对于手机来说,手机中的“手机app”是尤为重要的,可以说“手机app”就是手机的心脏,没有“手机app”的手机就是没有作用的。现在的市场有很多的食品购物app,但由于商家想要多卖出食品,会在推荐的时候推荐高热量食品,同时在“手机app”内也会通过推荐类似于汉堡炸鸡的食品,这类食品都是当代人爱吃的,也导致了现在的人们出现过度肥胖,易引发心血管疾病。这次设计采用了AndroidStudio开发工具,这是一个Google公司为Android系统量身定做的开发工具。这次的系统主要为用户和管理员,用户可以进行查看,评论,预约购买食品等。管理员可以管理食品的信息,用户的数据,预约等。同时本系统还拥有计算BMI(人体质量指标)功能,在用户的使用过程中通过输入用户的身高体重,来计算BMI,推荐健康的饮食,对现在的人饮食做出引导,进行健康饮食。同时也会推荐一些本店推荐的食品,对于难以选择的人来说,可以有更好的选择。关键词:食品店购物App;Android;AndroidStudio;健康饮食目录184021绪论 绪论随着当代时代的发展,智能设备已经逐渐深入人心了,可以说每个人都拥有一部智能手机,在每个人每一部的智能手机中都会有各种各样的“手机app”,这些“手机app”有着各式各样的内容,都连接着现在的社会,可以说在现在社会中,无时无刻不离开着这些“手机app”,这些“手机app”也体现出发展的多元化。1.1背景及意义通过对现在手机市场的调查,现在的手机系统大体可以分为两类,其中一类为Android系统,这类系统占现在手机系统的绝大部分,另一类则为IOS系统,这类系统是专为iPhone手机设计的,不过这类系统的使用人群较Android系统的使用人群来说还是较为少的。当前市场份额之中有超过85%以上的智能手机为Android系统,且此系统在未来的发展趋势良好。同时智能手机发展表现出多样化与多元化的特征,手机中的软件也表现出了多样化的特点。这些软件的应用范围逐渐扩大,包括了人们生活的方方面面,在现在几乎所有的领域都有其独特的应用。随着时代的进步,人们的生活水平也在逐渐提高,在21世纪之前,人们很少有电子设备的概念,很难想象,只经过了短短的几十年,就完成了过去上百年甚至上千年都难以完成的壮举,同时这种发展还在以难以想象的速度增长中。过去的人们衣食住行都是简简单单就好,现在,对于穿衣来说,以前都是通过缝纫机或是手工缝纫,需要很长的时间才能做好一件衣服,而在现在,有着各种流水线的机器,在短短一天的时间内就能造出上千甚至上万件衣服,着对于以前来说是难以想象的。对于饮食,人们可以在手机上选择各式各样的餐厅,可以在手机上就浏览各种美食店铺,查看其中的菜品,甚至还有外卖,可以让你足不出户就可以在家中享受美食。在这时代的变迁中,对于现在的饮食行业也有着很大的机遇,要跟随时代的步伐,对于营业方式需要不断的改进,踏入新的领域。在现代,饮食可以说是非常重要的,健康的饮食可以保证身体的健康,但是现在的饮食行业却大部分都在推荐人们购买高热量的食品,因为这些食品往往比健康食品美味,过量的食用这些食品会导致身体的不健康,导致肥胖症状。本系统便想在用户挑选食品时进行推荐,提供热量标识,让用户在查看过程中会看到这些热量后对于选择会有所斟酌,考虑选择一些低热量的食品。通过这些需求,便制作了本系统,在用户的使用过程中,用户可以查询食品的详细信息,通过这些信息的对比后再来选择食品,通过仔细的挑选后,再来选择购买食品。同时可以通过输入身高体重计算BMI(身体质量指数)进行食品的推荐,来完成购买食品。本系统的设计是Android系统为基础的"食品店购物App"应用软件的设计和实现。为了用户可以方便的查看食品的详细内容,比如价格,评价,热量等等,同时可以通过预约的方式进行购买食品,在预约的过程进行备注,让店员知道该如何保存或者制作,同时用户可以对食品进行点评,评价食品的口感等。1.2课题研究现状现在的点餐购物系统,是用户较为常用的种点餐方式。这种方式最早的起源在于国外,在20世纪的70年代,是最早出现的时间点,在当时的德国,出现了一加无人餐馆,全程没有员工对顾客的点菜进行记录,顾客可以通过使用当时店内的智能设备来进行点菜,点菜完后可以直接进行结算,在结算完后等待服务员端菜。这种方式在当时可以说是非常新颖的,因为当时大部分的餐厅都是通过服务员进对顾客的点菜进行记录后,到后厨传达菜品后才能开始做菜。不过这也只是现代点餐系统的雏形,在后来有一家餐厅在这一方式上进行改良,通过当时新兴的网络技术,将网络技术和点餐设备进行连接,顾客便可以使用点餐设备进行无线预约点餐,这种方法不但节省了服务员的开支,同时也让顾客可以随意的点餐,传达信息的速度也更快,这种方法大大节约了顾客和餐厅工作人员的时间,可以说是双赢。由此可以看出和互联网结合的这种技术非常适合点餐。国内现状在现代,国内的餐饮行业迅猛发展,发展速度很快,逐年提升,这一大提升也让这一行业相比其他行业有了非常强的竞争力。自从新中国改革开放,人们可以从旧时代的氛围种解脱出来,迎接新的科技时代,自此国内的科技飞速发展,到现在,已经可以说是成为世界第二大强国,伴随着科技的不断进步,人们的生活也随着科技的进步而进步,对于饮食来说,从以前的的粗茶淡饭,到现在出现了各种各样的美食,可以说也是离不开时代的发展。随着人们生活的进步,餐饮行业也在不断的进步,不断的发展,这也是可以体现人民生活水平提高的一个见证,至此,餐饮行业逐渐的成为了人们心中的一个支柱产业。在去年国家所公布的权威数据资料,发现2020年全国餐饮行业的总收入达到了6万亿,在市场中的占比也在不断增加。为什么餐饮行业可以达到如此蓬勃的增长,这还得是当代互联网的发展促进的,现在用户可以足不出户享受美食,也可以直接在手机上查看附近的商家,来挑选心仪的店铺进行享用食品。经过社会调查部分餐饮店,得出了绝大部分的商家觉得互联网对自身的营业有了很大的帮助,通过网络可以很好的拓宽营业范围。可以说外卖系统对于国内的餐饮行业有了非常大的帮助。现在的中国,也在积极的进行“互联网+”的发展,现在的餐饮也在积极的与“互联网+”进行融合,打造新型餐饮行业[12]。到目前为止,出现了很多的外卖软件,例如美团和饿了么还有百度外卖,这种在家足不出户的方式点餐非常深得民心[12]。但是在使用这些平台时,点开外卖这一栏,映入眼帘的大部分都是炸鸡,汉堡,烧烤这些高热量,高油脂的食品,虽然说这些大部分人都是非常爱吃的,但是为了健康饮食,应该少吃这些食品,所以我便想在我的系统中设置根据BMI推荐美食的功能,来为用户提供一种健康的饮食习惯。国外现状从国外来看,当时的现代化餐饮行业相较于国内的发展是比较早的,而且进程也很快。大部分的餐饮店都是通过线下连锁的方式进行经营,达到了非常大程度的规模,可以说连锁营业方式的发展速度非常快。

在国外的现代化餐饮发展的历史中,餐饮行业也有很多不一样的变化,近代,世界的科技水平飞速上涨,可以说近百年完成了过去进千年甚至近万年的发展,各行各业都飞速发展,可以说是百花齐放,餐饮行业的经营管理模式也各式各样,这些管理模式有些更加科学,可以提高效率,来降低成本,有些则因为不适于时代的发展而没落。但是归根结底,在国内还是国外餐饮行业的发展都大径相同。

2相关技术和开发环境2.1系统架构设计通过对系统的各项功能进行分析和研究,以及综合性能的研究,最终还是选择了使用B/S架构完成设计。当用户注册后成为该系统的用户以后,便可轻松的与后台的数据进行连接,实时接收数据。用户进入系统之后,便可使用本系统;该系统通过http与后台的服务器进行数据链接,当服务器接收到用户手机发出的数据后在后台进行处理,后台通过对数据库进行交互,将处理后的数据传给用户,来达到数据的链接。由此可得,本系统的总体架构为Android客户端、MySQL数据库和后台的服务器。系统架构如图2.1:图2.1系统架构图通过对系统架构图的分析,知道了系统的架构由客户端,服务端和数据端口组成。对于用户的接触来说,用户接触到的只能是客户端,即用户使用的系统,在该端口可以看到活动的窗口并进行之后的操作,通过操作后将数据传入服务端进行进一步操作。客户端建立在软件程序即app之上,通过服务器返回的数据进行操作。服务端则是建立在java平台上的的web程序,其中包括了控制层和业务逻辑层。控制层对业务逻辑进行控制,业务逻辑通过和第三方接口链接读取新的数据,同时传输数据给本地服务器进行链接。存储数据是最为重要的,数据端通常由两个数据库组成,分别为本地数据库和第三方数据库,本地数据库则用来访问现有的系统数据库,第三方数据库则用来在未来进行拓展。所以说本系统的扩展性还是很高的。2.2关键技术介绍Andorid平台开发包含了以下三大块,分别为功能的设计,数据的存储,和网络交互。开发图如图2.2:图2.2Android平台开发图(1)功能开发标准的安卓程序主要由以下部分组成:活动、广播意图接收器、服务和内容提供商。(2)数据存储本次选择的数据存储方式为SQLite数据库存储,系统访问网络的方式是通过提供的接口实现数据处理

2.3开发环境及平台本次系统的开发平台为AndroidStudio,该平台是由美国的Google公司为Android的开发量身打造的开发系统,有较好的兼容性,同时在设计过程中非常智能方便。该平台采用IntelliJIDEA,这让开发人员无论在何种分辨率的屏幕都能进行适配并显示。2.3.1Android平台Android平台的基本结构由以下四层所构成。依次为应用程序层、使用流程框架、操作系统库及其Android操作库,由Linux及核心层构成,其基本结构图包括图2.3所述:图2.3Android系统架构图(1)应用程序层该层的主要职能就是与用户进行交流,并利用界面对用户产生交互作用。(2)应用程序框架本层主要提供了一个框架,为开发人员提供可用的任务管理器,控件,服务以及即时通讯功能。使用了API中的个性化服务来完成对程序的打开,从其中也侧面的体现出了安卓操作系统具有相当独特的开放特性。(3)系统库和Android运行库本层次为操作系统的中心层次,主要采用的是C语言的数据库系统,并可以采用一些在相应库中提出的接口。而对于操作系统设备的数据库中,大部分采用的是C语言的函数库,但对于Linux等操作系统设备在实际使用过程中也会采用;媒体库也能够管理视频,音频文件,并且是管理其他音频文件所必须的基本方法;而SQLite数据库系统则是一个轻量级的事情,但其相对应功能要十分完善,所以许多应用中都会用到此数据库;通过对界面的管理功能也可以对用户使用界面做出修改与完善。核心库和虚拟机也成了安卓操作系统的基本运行库。在java和安卓等操作系统中都有它们各自对应的核心库,它们的功能有很多相似。所以在安卓平台的软件开发流程中,也应该通过相同的方式重新调用内核库中的数据,来减少在书写流程中应用复杂的问题,或者直接就应该选择通用的界面。(4)Linux内核层而内核层则主要是包括对硬件的驱动,并且使用这种驱动方式来确保软件与硬件之间的相结合并进行正常工作,这也就是操作系统的内核,通过对其内核进行服务,所以它是能够确保硬件与软件之间相互交流的抽象层面。

3系统分析与设计3.1需求分析系统的总体目标是让该软件可以提供顾客对食品的信息进行查询,顾客可以根据对食品的信息来选择需要选购的食品,对于要减肥的人群可以通过对食物热量进行排序,选择相对于低卡路里的食品来满足对减肥时所需食品的需求。而对于想要到店里面品尝美食的人来说,可以选择对食品的评分,评价等进行排序选择在店内比较符合大众口味的食品。

为了实现系统设计的总目标,Android的食品店购物系统应具备以下功能目标,主要包括:注册:该模块负责初次使用的用户。要想操作该系统需先注册,注册后再进行登录才可以使用本系统,如果是管理员则在注册后可以通过其他管理员来对新注册的账号赋予管理员权限。(2)登录:该模块负责注册过后的用户进行登录,在输入账号密码后,系统会自动判断是用户还是管理员,两者分别会进入对应页面。(3)主界面:该模块负责在用户登录以后。可以在该界面看到由计算出的(BMI)值来推荐今日的食品,在该界面下可以选择进入食品界面或者个人界面。(4)食品界面:该模块负责在用户在主界面选择后查看食品信息。可以根据食品热量,销量,价格进行排序,来看到自己所需的内容。(5)个人界面:该模块负责在用户登陆。在主界面选择后查看自己的用户名和自己的评论,如果用户想要修改自己的用户名,昵称,电话,头像或是密码可以在此处修改。(6)评论食品界面:该模块负责查看用户对于食品的评价。用户在进入食品的详细界面时,可以在下方看到其他用户对其的评价,同时用户可以对食品进行评论。(7)管理员界面:该模块负责可以增添,修改,删除店内的食品以及食品的信息;可以修改注册用户的信息,用于删除或者修改一些不良用户名;可以将普通用户设置为管理员;将食品的不良评论进行删除;第一位使用系统的管理员可以设置一位密码,在之后的使用过程中,当想要删除其他管理员时,只有输入该密码才能删除。

3.2概要设计本管理系统是的基于Android的食品店及购物App管理系统,系统主要区分为一般使用者和管理者,功能结构图如图3.1所显示。图3.1系统功能结构图对于管理员模块,主要的功能有查看用户个人资料,如账号,手机号,头像等,并且包含有删除用户的信息。对食品的管理,可以增加食品信息、删减食品信息、调整食品的信息,可以对今日的食品进行推荐。对预约的食品进行管理,可以查看预约过的食品信息和删除预约。对评论的管理,可以删除用户对食品的评论。用户模块的功能主要有当没有账号时候注册个人账号,注册成功后登录自己的账号,查看今天推荐食品,通过对对食品的推荐进行更好的选择。可以查看食品,查看到所有食品的详细内容。可以对食品进行评论,也可以查看该食品的评论。可以修改个人头像账号,昵称,电话以及密码等。

3.3数据库设计数据库的设计是为了存储数据,同时也为了前端用户使用过程中可以调用数据,同时后端可以对数据进行修改更新。3.3.1数据库E-R图设计它运用建模,创建信息模型,数据库在进行设计的过程中,需要先分析系统所需的各种数据,得出数据之间的对应关系,进行数据与数据之间的连接。通过对该系统的分析,得出了对应关系图,设计出了对应的E-R图,设计结果如图3.2所示图3.2食品店购物系统E-R图

3.3.2数据库关系模型评论信息表:(id,用户id,评论食品的时间,对食品的评价,食品id)食品信息表:(id,食品名,食品内容,价格,热量)用户信息表:(id,头像,注册时间,账号,密码,电话,有无管理员权限)预约信息表:(id,用户id,食品id,时间,预约内容)3.3.3数据库表设计数据库的设计是在用户使用过程可以进行高效的存储,同时在进行数据交互时可以安全的保护数据。数据库表的设计很大程度的决定了系统的运行效果,未来的扩展,设计出一份良好的数据库表,可以降低数据的存储,降低系统延迟,改善程序运行的效果,体现出系统的完整性和一致性。创建的数据库有以下四个表:用户评论comments表,食品信息Food表,用户user表和预约order表。(1)评论表:包括评论用户编号,用户姓名,评论时间,评论内容,评论的食品id,如表3.1所示表3.1用户评论comments表名称说明字段备注ididvarchar(100)主键、非空uid用户idvarchar(100)外键time时间datatime非空content评价varchar(100)非空pid食品idvarchar(100)外键uname用户名varchar(100)非空

(2)食品表:包括食品的编号,产品名,图片,描述内容,热量以及价格,是否为推荐,添加的时间,如表3.2所示表3.2食品信息Food表名称说明字段备注idvarchar(100)主键、非空foodname食品名varchar(100)非空pics图片varchar(100)非空spxx描述varchar(100)非空heat热量varchar(100)非空price价格varchar(100)非空tj推荐varchar(100)非空time时间datatime非空(3)用户表:包括用户的编号,用户账号,用户的密码,姓名,和电话,以及是否有管理员权限和注册时间,如表3.3所示表3.3用户user表名称说明字段备注ididvarchar(100)主键、非空usid账号varchar(100)非空usmm密码varchar(100)非空xmin姓名varchar(100)非空tel电话varchar(100)非空type权限varchar(100)非空time时间datatime非空

(4)预约表:包括预约食品的id,食品名称,用户的练习电话,用户id,预约时间和备注,如表3.4所示表3.4预约order表名称说明字段备注ididvarchar(100)主键、非空pidvarchar(100)外键pnamevarchar(100)非空telvarchar(100)非空uidvarchar(100)外键yysjdatetime非空bz备注varchar(100)非空3.3.4连接数据库实现本系统通过将所需数据导入数据库,得到所有数据信息,在系统使用过程中后台通过前台的操作来不断更新数据库。本次数据库采用JDBC连接数据库的方式,JDBC是Java与数据的连接。例如对登录时进行的数据库连接如下:OkGo.<BaseData>post("16:8088/user/connect")//连接后台

.params("usid",usid.getText().toString())读取用户名

.params("usmm",usmm.getText().toString())读取密码

.execute(newJsonCallBacak<BaseData>(BaseData.class){……publicvoidonSuccess(Response<BaseData>response){//数据读取完毕后进入

super.onSuccess(response);

if(response.body().getCode().equals("2")){//在后台进行数据读取后,成功会返回数值2

if(ConfigApplication.getU().getzjf().equals("用户"))

openActivity(Main.class);//进入用户界面

else{

openActivity(Admin_Main.class);

}

}else{

showTip("登录失败");

}

}……}在后台中:publicvoidconnect(){

Stringusid=getPara("usid");//读取输入的用户账号

Stringmm=getPara("mm");//读取用户的密码

Alluserm=Alluser.cs.findFirst("select*fromalluserwhereusid=?",usid);//在数据库中进行查找

if(m!=null){

if(m.getStr("usmm").equals(usmm)){//当查找到数据相符则返回2,进行后续操作

renderJson(newmon.spxxData("2","成功",JSON.toJSONString(m)));

}else{

renderJson(newmon.spxxData("5","失败",JSON.toJSONString(m)));

}

}else{

renderJson(newmon.spxxData("5","账号不存在",JSON.toJSONString(m)));

}

}

4系统各个功能模块实现4.1系统业务流程4.1.1登录界面设计实现使用本系统如图4.1所示登录界面图4.1用户登录界面

4.1.2注册界面设计实现注册的主界面为输入账号、密码、昵称、电话和头像。输入完后点击注册后,数据库中的账号和输入的账号没有相同的话,成功注册。如图4.2所示注册界面图4.2所示注册界面

4.1.3用户模块设计实现该模块主要为了完成用户所需的操作,例如食品展示,预约等。(1)首页模块在该模块,可以查看包括了所有食品的列表,还可以进行搜索食品,查看食品的详细信息,比如介绍,首页可以输入输入身高体重,经过计算得出身体质量指数,通过得出的数据进行推荐,同时还有预约、评论等操作。如图4.3所示。图4.3首页模块实现界面

(3)预约记录模块在该模块,可以查看预约信息,修改自己的预约信息和删除自己的预约信息等操作。如图4.4所示。图4.4预约记录模块实现界面(4)个人信息在该模块,可以查看头像,账号,名称,电话和本人身份,也可以修改头像,名称,电话。如图4.5所示。图4.5个人信息模块实现界面4.1.4管理员模块设计实现管理员主要实现用户管理、食品管理、预约管理、评论管理等功能模块。(1)食品管理主要实现管理员对食品信息进行增删改查、设置推荐等操作。如图4.6所示。图4.6食品管理实现界面

(2用户管理管理除了管理员之外的用户信息,可以对头像进行设置,名称修改,也可以删除所有的信息。如图4.7所示。图4.7用户管理实现界面(3)评论管理在该模块,可以查看各个食品的评论,以及评论的发表信息,可以对评论进行删除。如图4.8所示。图4.8评论管理实现界面

4.2系统功能实现4.2.1用户登录实现用户登录时候通过前端通过发起http请求,请求后端的接口,后端接收请求后进行数据库校验,后返回参数给前端。以下代码为用户登录实现:前端:

if(ConfigApplication.getU().getzjf().equals("用户"))

openActivity(Main.class);//进入用户界面

else{

openActivity(Admin_Main.class);

}后端:publicvoidconnect(){

Stringusid=getPara("usid");

Stringusmm=getPara("usmm");

Alluserm=Alluser.cs.findFirst("select*fromalluserwhereusid=?",usid);

if(n!=null){

if(n.getStr("usmm").equals(usmm)){

renderJson(newmon.spxxData("2","成功",JSON.toJSONString(m)));

}else{

renderJson(newmon.spxxData("5","失败",JSON.toJSONString(m)));

}

}else{

renderJson(newmon.spxxData("5","账号不存在",JSON.toJSONString(m)));

}

}

4.2.2用户模块设计实现(1)首页推荐模块登录后自动显示推荐食品,以下为代码实现:OkGo.<BaseData>get(Ugettj())

publicvoidconvert(ViewHolderspq,productitem){

spq.setText(R.id.foodname,item.getFoodname());

spq.setText(R.id.zjf,item.getzjf());

spq.setText(R.id.price,"价格:"+item.getPrice());

SimpleDraweeViewpic=spq.getView(R.id.pic);

if(item.getPics()==null||item.getPics().equals(""))

pic.setImageURI(Uri.parse(Url.baseUrl()+"upload/zwtp.jpg"));

elseif(item.getPics().contains("[")){

pic.setImageURI(Uri.parse(Url.baseUrl()+"upload/"+JSON.parseArray(item.getPics(),String.class).get(0)));

}else

pic.setImageURI(Uri.parse(Url.baseUrl()+"upload/"+item.getPics()));

}

});……}

(2)食品查看模块可以在该界面查看所有食品,也可以点击食品进行查看详细信息和评论。以下为代码实现:publicvoidcv(ViewHolderspq,productitem){

Stringtjsj="";

if(item.getTj().equals("1"))

tjsj="推荐";

spq.setText(R.id.foodname,item.getName());

spq.setText(R.id.tj,tjsj);

spq.setText(R.id.heat,"热量:"+item.getheat());

spq.setText(R.id.money1,"价格:"+item.getPrice());

spq.setText(R.id.jzf,item.getzjf());

SimpleDraweeViewpic=spq.getView(R.id.pic);

if(item.getPics()==null)

pic.setImageURI(Uri.parse(Url.baseUrl()+"upload/zwtp.jpg"));

else{

if(item.getPics().contains("[")){

pic.setImageURI(Uri.parse(Url.baseUrl()+"upload/"+JSON.parseArray(item.getPics(),String.class).get(0)));

}else

pic.setImageURI(Uri.parse(Url.baseUrl()+"upload/"+item.getPics()));

}

}

});(3)评论模块用户可以在商品下方进行评论,以下为代码实现publicvoidconvert(ViewHolderspq,plitem){

spq.setText(R.id.foodname,item.getUname());

spq.setText(R.id.spxx,item.getContent());

spq.setText(R.id.time,item.getTime());

SimpleDraweeViewhead=spq.getView(R.id.head);

head.setImageURI(Uri.parse(Url.baseUrl()+"upload/"+item.getPic()));

}

});(4)个人信息修改模块可以修改个人信息,以下为代码实现:OkGo.<BaseData>post(Url.userupdate())//将数据导入后台后进入数据库

.params("xmin",xmin.getText().toString())

.params("head",pic_url)

.params("zjf",zjf.getText().toString())

.params("id",idxz).params("usid",usid.getText().toString())

.params("tel",tel.getText().toString())

4.2.3管理员模块设计实现(1)食品管理主要实现管理员对食品信息进行增删改查、设置推荐等操作。以下为代码实现:增删改:OkGo.<BaseData>post(Uductupdate())

.params("foodname",foodname.getText().toString()).params("zjf",zjf.getText().toString()).params("id",pro.getId()).params("spxx",spxx.getText().toString())

.params("heat",heat.getText().toString())

.params("pics",pics)

.params("price",price.getText().toString())

.execute(newJsonCallBacak<BaseData>(BaseData.class){……}推荐:OkGo.<BaseData>post(Url.tjproduct())//写入数据

.params("tj",tjs)

.params("id",list.get(i).getId())

.execute(newJsonCallBacak<BaseData>(BaseData.class){(2)评论管理可以对不良评论进行删除,以下为实现代码:OkGo.<BaseData>post(Url.pldel())

.params("id",list.get(i).getId()).execute(newJsonCallBacak<BaseData>(BaseData.class){……}(3)预约管理可以对预约进行查看和删除,以下为实现代码:查看:publicvoidconvert(ViewHolderspq,yyitem){

spq.setText(R.id.pname,"预约食品:"+item.getPname());

spq.setText(R.id.bz,"备注:"+item.getBz());spq.setText(R.id.tel,"预约人电话:"+item.getTel());

spq.setText(R.id.yysj,"预约时间:"+item.getYysj());

}删除:OkGo.<BaseData>post(Url.baseUrl()+"yy/del")

.params("id",list.get(i).getId()).execute(newJsonCallBacak<BaseData>(BaseData.class){……}5.购物系统测试5.1系统测试该测试是程序设计的最关键,也是最后。用来检验软件系统的品质、性能、安全可靠等方面能否满足的要求。通过一次严格、标准、全面的检测过程将极大地提高软件系统的品质、准确度和稳定性,从而减少了软件系统的错误率,并减少了用户的风险因素。5.1.1白盒测试白盒测试有称之为结构测试,是为了发现在编写的过程中出现的代码问题,这类测试很难保证完全合格,这对软件开发者来说也是一项考验,就算是有多年经验的编写者也很难保证写出的代码完全没问题,所以主要的是黑盒测试。5.1.2黑盒测试黑盒测试有称为功能测试,是为了测试程序的功能是否能正常执行,在测试的过程中要把测试者想象成从未使用过该软件的人员,对软件面向用户的内容进行测试,来验证软件的功能是否能够正常执行,不产生bug,这也是本次系统测试的最重要内容,通过测试后才可以知道软件的运行是否有问题。5.2测试总结通过对软件的整体进行测试后,虽然有出现一些问题,导致程序无法正常执行,出现闪退,报错,但是经过得出问题所在后,通过重新编写,大部分问题都处理完成。以下列出在本次系统中进行的测试情况。(1)登录模块测试结果如表5-1

表5.1用户user登录模块测试举例用户举例登录密码测试预期结果是否达到预期用户名123456无任何输入弹出框显示:账号密码不能为空是无任何输入123456弹出框显示:账号密码不能为空是用户名123456123456出现登录成功并进入管理员界面是无任何输入无任何输入弹出框显示:账号密码不能为空是用户名a123456弹出框显示:登录失败是当没有进行任何输入时,以及缺少一项输入时,系统提示如图5.1。图5.1登录错误提示对于用户进行评论的模块测试如表5.2。表5.2评论模块测试测试举例说明测试预期结果是否达到预期未在评论区输入评论弹出框显示:请勿输入空白评论是在评论区输入评论弹出框显示:出现留言成功是当输入空白评论,系统提示如图5.2所示图5.2评论错误提示

(3)注册模块测试如表5.3。表5.3注册模块测试测试举例说明测试预期结果是否达到预期未输入账号,昵称,密码,电话弹出框显示:请输入全部信息是账号,昵称,密码,电话仅一项输入弹出框显示:请输入全部信息是账号,昵称,密码,电话输入两项弹出框显示:请输入全部信息是账号,昵称,密码,电话输入三项弹出框显示:请输入全部信息是账号,昵称,密码,电话全部输入弹出框显示:注册成功是输入数据库中已有账号弹出框显示:账号已被使用是当输入有空白时,系统提示如图5.3图5.3注册错误提示5.2测试结果分析通过上述全面的黑盒测试,可以得出各个模块的运行正常,满足本系统对于用户基本需求。所有模块都符合模块所需要达到的要求,在运行的过程中并未bug,具有良好的运行状态。

结论本篇内容重点介绍了怎样使用AndroidStudio+AndroidSDK开发的一种性能优良、可扩展性强和安全的食品店购物App系统。系统主要由用户为普通用户和管理者。个人用户主要完成登陆、注册、商品陈列、预订记录、个人信息等职能模块。而管理者则主要完成用户信息管理、商品管理、预订管理、评价管理等职能模块。接着针对这部分功能进行了分析设计,对所使用到的XML、JSON等技术进行了简单的说明。然后再进行对需求分解的说明。然后是对概要设计,最后再进行更详细的设计。然后说明了这个系统的部分功能的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论