1、10毕 业 设 计中文题目 基于 Android 的茶叶销售平台设计与实现英文题目 Design and Implementation of ATea Sales Platform Based on Android院 系: 计算机与信息工程学院年级专业: 软件工程(金融服务工程)姓 名:学 号:指导教师:职 称: 年 月摘要I摘 要本文主要介绍了运用当前主流的 Android 开发平台来设计和开发一个茶叶销售平台。该茶叶销售平台满足了茶叶销售群体的销售需求,以此拓宽销售渠道并提高茶叶销售管理效率。结合软件需求,系统运用 C/S 模式,使客户机和服务器得到充分利用,对系统任务进行合理分配,提高系
2、统运行效率。基于 Android 的茶叶销售平台主要由六个功能模块构成,分别为销售模块、报表查询模块、库存管理模块、销售评比模块、分店管理模块以及库存预警模块。对于系统后台数据的存储,采用的是 MySQL 数据库。销售模块是指用户根据消费者购买的茶叶信息进行录入以生成销售记录,同时,可以进行销售记录查询以及退货操作。报表查询模块是用户根据自己的需求选择时间段查看报表。库存管理模块是用户可以对库存信息进行添加、删除、修改、查询,从而实现库存管理。销售评比模块是根据销售额进行评比,分为全国排行和店内排行,即分别是各门店的排行和店内销售人员的排行。分店管理模块是指管理员可以对分店信息进行查询、添加、
3、修改、删除等操作。库存预警模块是根据用户自主设定的预警值向用户发送预警提示,以对库存进行更高效的管理。本文是对系统开发过程进行详细阐述,首先是对开发背景和国内外研究现状的介绍以及开发目的、要求的阐述。然后从四个方面来具体介绍本系统开发内容,分别是系统分析、系统设计、系统实现以及系统测试。系统分析是系统实现的第一步,而后对系统进行相应的架构设计与数据库设计。只有完成系统分析与系统设计后,才能对系统进行实现,也就是说系统的实现是基于系统分析与设计工作完成后。最后,对整个系统开发过程进行总结,并说明系统后期完善内容。关键词:Android;MVC 设计模式;茶叶销售;MySQL 数据库ABSTRAC
4、TIIABSTRACTThis paper mainly introduces a tea sales platform which uses Android to develop. This system can meet the needs of tea sales groups sales, so that it can expand sales channels and increase tea sales management efficiency. Combined with software requirements, the system uses C/S mode, it m
5、akes full use of the client and the server. Besides, it allocates system tasks rationally so the systems efficiency improved. The Tea Sales Platform based on Android is mainly composed of six functional modules, respectively, sales module, report query module, inventory management module, sales comp
6、etitions module, stores management module and inventory warning module. As for the backend data storage, the system uses the MySQL database.In the sales module, the users can input tea information to generate sales record according to what consumers buy, meanwhile, users can query sales record and r
7、eturn goods. In the report query module, users can select the time period to view the report according to their needs. As for the inventory management module, users can add, delete, modify, query inventory information in order to achieve inventory management. Sales competitions module is divided int
8、o the national rankings and in-store rankings according to sales amount, namely that it is ranked each store and in-store sales staff. Stores management module means that administrators can query, add, modify, or delete store information. Inventory warning module can sent warning prompts that based
9、on the warning value to the user, and the warning value is set by the user, so the module makes inventory management more effectively.This article is a detailed description of system development process. First of all, it introduces the background of the development, the research status at home and a
10、broad, development purposes and the requirements. Then it describes system development details specificly from four aspects, which includes system analysis, system design, system display and system test. Systems analysis is the first step to realize the system, the following step is to design the sy
11、stem architecture and the database correspondingly. Only after system analysis and system design, the system can be realized. That is to say, the realization of the system is based on the system analysis and system design completed. In the end, it makes a conclusion of the entire system development
12、process and states the content of the system perfection at the later stage.Keywords: Android; MVC Design Patterns; Tea Sales; Mysql database目录III目 录第 1 章 引言 11.1 开发背景 .11.2 国内外研究现状 .11.3 目的与要求 .21.4 论文组织结构 .2第 2 章 系统分析 42.1 可行性分析 .42.2 相关技术 .52.2.1 Android Studio 简介 52.2.2 MySQL 数据库 .52.3 需求分析 .62.3
13、.1 功能需求分析 .62.3.2 流程图分析 .9第 3 章 系统设计 .103.1 系统结构设计 103.2 模块结构设计 113.3 数据库设计 123.3.1 E-R 图设计 123.3.2 数据字典设计 12第 4 章 系统实现 .154.1 系统的运行环境 154.2 关键问题的实现 154.2.1 网络通讯 154.2.2 销售模块 154.3 功能实现 164.3.1 登录与密码修改模块 164.3.2 销售模块 174.3.3 报表查询模块 194.3.4 库存管理模块 194.3.5 销售评比模块 204.3.6 分店管理模块 214.3.7 库存预警模块 21第 5 章
14、系统测试 .235.1 销售功能测试 235.2 库存管理测试 245.3 库存预警测试 255.3 测试结论 26第 6 章 结论与展望 .276.1 总结 276.2 进一步工作的方向 27参考文献 29致谢 30第 1 章 引言1第 1 章 引言1.1 开发背景传统的销售模式已不适应当代的销售需求,改变传统销售模式是提高销售额的必经之道。由于销售涉及到大量的销售记录等,应采用高效的管理代替传统的纸质管理,通过手机软件实现销售更简便更具有时效性。早期的各种局限性阻碍了电子商务的发展,但进入 21 世纪以来,中国在计算机技术领域发展迅速,为实现手机销售软件奠定夯实基础。电子商务的出现不仅提高
15、销售效率,同时向人们展示一种新颖的购物理念,使人们的购物理念发生质的飞跃。此外,鉴于 Android 系统的开放性与大众化的特点,实现安卓手机终端的销售软件符合企业销售发展的需求,有利于提高企业整体收益。此外,世界各国有着各种各样的茶文化,尤其在中国源远流长,有着很深的文化根基,中国人对于茶有着一种特殊情结,泡茶已成为中国人日常生活的一部分。因此,茶叶在中国有着很大的市场需求,改变传统销售方式,提高茶叶连锁店的经营效益,将带动整个茶叶行业的发展。综上所述,开发一个基于 Android 的茶叶销售平台具备一定的现实意义和基础条件。1.2 国内外研究现状就目前茶叶销售市场而言,随着时代的进步,由于
16、人们对生活品质的注重,泡茶成为中国人的养生之道,下午茶更逐渐受到喜爱,茶叶成为伴手礼选择之一,因此茶叶在世界各国有着广阔的市场。企业应改变传统销售模式,扩大销售,提高企业的整体效益。在国内,由于手机的普及,无论是在安卓系统还是 IOS 系统下,都有许多茶叶销售手机 APP,为企业销售带来极大的便利性。如微茶店,其立足于解决传统茶叶行业生意冷清、销售模式单一、迫切需要线上营销推广渠道的需求,为茶商留住更多中青年消费群体和提供更好的销售和管理服务。又如爱淘茶,只卖品牌茶的移动网络购物平台,它可解决在实体店买茶叶的烦恼,一触即可送到家。还有许许多多的手机茶叶销售 APP,可见线上推广顺应发展潮流。国
17、外也是如此,有着许多茶叶销售网站,如 http:/ 等,为人们提供网上购买茶叶渠道,人们可通过网站提供的各类茶叶的相关信息,根据个人喜好与需求,在网站直接下单购买,方便快捷。同时,随着移动互联网的快速发展,智能手机已经普遍成为大众商品,尤其是安第 1 章 引言2卓系统的智能手机,根据统计,目前安卓平台市场份额已达 53%。基于上述的销售软件以及 Android 的发展前景,开发基于 Android 系统的销售软件是非常适应市场潮流的。1.3 目的与要求该系统开发的目的主要是为了拓宽茶叶销售渠道,提高茶叶销售效率,从而实现一款操作简单,时效性较强的茶叶销售软件。管理员可以对旗下分店进行管理,用户
18、可以根据消费者所购买的茶叶信息进行录入生成销售记录,设置库存预警更有效地对库存进行管理,随时随地查看销售报表,进行销售评比以提高销售人员的积极性。茶叶销售系统的要求是实现一款操作简捷,高效的可在安卓手机终端进行茶叶销售的软件。要求实现的功能模块有:销售模块;报表查询模块;库存管理模块;销售评比模块;分店管理模块;库存预警模块。在实现这些功能模块的基础上,注重用户体验。具体表现为(1)系统界面需简洁明了,不可杂乱无章。(2)系统界面设计需遵循人性化设计原则,带给用户更好的体验。(3)系统需具有易操作性,操作应根据现在用户的习惯设定。(4)系统需解决闪退、卡顿等问题,提高系统使用流畅度。系统满足以
19、上要求,可使用户更好地使用该系统。1.4 论文组织结构本论文针对基于 Android 的应用开发,根据该类产品的用户需求,结合安卓平台的开发框架以及安卓的客户端和服务端的开发技术,研究和实现了基于 Android 的茶叶销售平台,该应用开发的组织结构内容具体如下:第 1 章,引言的部分,本章节主要针对于系统的相关开发背景、国内外研究现状,相关研究目的及其要求等作简要的介绍。第 2 章,系统的分析部分,本章节主要是依据现有的茶叶销售系统,探讨分析该系统该持有的功能特点,结合数据分析以及应用的模块规划,发展前景等,对系统分析进行阐述,其主要包含三大点,第一大点是对其可行性的分析,第二大点是介绍关键
20、技术,第三大点是对需求进行分析。第三章,系统的设计部分,本章节针对于本系统进行相关的设计,同时也阐述了各个功能模块的详细设计具体内容。第四章,系统的实现部分,本章节主要是阐述系统各个模块的实现方法以及系统界面的实现方式,同时也阐述了本系统实现上的关键问题。第五章,系统的测试部分,本章节主要对系统的主要功能模块进行测试,并说明第 1 章 引言3了相关的测试用例,展示了测试结果。第六章,总结与展望,本章节主要总结该系统的研究内容,分析该系统的发展前景以及进一步的发展状况。第 2 章 系统分析4第 2 章 系统分析2.1 可行性分析可行性是从几个方面对系统进行分析,确定该系统是否可以进行开发,具有一
21、定的现实意义。其具体包含三部分内容,即分析技术上的可行性、经济上的可行性、建设上的可行性。以下是对这三部分可行性的分析阐述,以证明本系统具有可行性。1、技术上的可行性分析。技术可行性分析是指根据开发本系统的系统需求与目标以及现今可支持的技术条件,分析现今技术是否足以开发本系统。本节将对技术可行性分析进行阐述,包含系统目标、系统可用性以及系统安全性,其分析内容如下:一,系统目标的确定是技术可行性分析的一个核心分析点,也是软件开发的起始点。只有确定系统目标后才能进行下一步开发工作。若系统开发的实现目标应用当前技术根本无法完成,则开发该系统是不可行的。二,系统可用性需站在用户的角度看待问题,系统设计
22、需用户体验为主旨,用户体验不仅要求软件实现基本功能,而且更重要的是要深入挖掘用户所需,实现人性化友好设计。三,在技术可行性分析中,系统安全性分析必不可少。根据系统的功能分析,确定本系统的研究对象是茶叶销售企业,这就意味着用户范围相对比较窄,此外,系统的交易主要是在实体店完成。以上可以看出,系统对于安全性要求不高。虽然如此,系统的安全性问题还是必须重视,要采取相关措施如加密算法等以提高系统安全性。创建完整的、高效的、安全的网络传送数据通道也是至关重要的。综上所述,开发这样一个基于 Android 的茶叶销售平台在技术方面是可行的。该平台的开发始终遵循人性化设计原则,这样既能有较好的可操作性,同时
23、界面具有较高的友好性。在提高销售人员的工作效率同时,也提高了茶叶销售企业的整体效益。2、经济可行性分析。经济可行性分析是指通过对系统开发实施成本和系统可能带来的经济效益的分析,以确定系统是否具有经济可行性。对于企业而言,开发该系统不必投入很多资金,使用本系统后不需要请太多的销售人员,减少开支的同时提高销售效率与管理效率,其后期所带来的经济效益远远超过开发该系统的成本 1。由此可以看出,开发实现这样一个茶叶销售平台有利于企业拓宽销售渠道,使茶叶销售企业更高效地运作。因此,该系统一定会受到中小茶叶销售企业的青睐。综上所述,实现该茶叶销售平台在经济方面是可行的。3、建设可行性分析。第 2 章 系统分
24、析5用户在使用该系统时,不必具有软件专业知识,用户只需像使用已有的 APP 一样,熟悉后便可熟练操作,因为该系统的销售与管理流程类似一些服装连锁店的销售系统。即用户只要把消费者选购的茶叶信息进行录入则生成销售记录存储在后台 2。而对于管理员来说,只需根据分店的现状进行管理,删除分店信息或为分店分配账号等,从这点来看,任何人都可以做好该系统的前台管理工作。在如今信息发达的时代,以前的销售模式不顺应时代的要求,已被淘汰。随着移动互联网的快速发展,智能手机已经普遍成为大众商品,尤其是安卓系统的智能手机,根据统计,目前安卓平台市场份额已达 53%。因此,结合广大智能手机用户的需求,开发一款智能手机的茶
25、叶销售软件是急切需要的。由此得出,该系统具备建设可行性。2.2 相关技术2.2.1 Android Studio 简介Android Studio 是 Android 开发环境,其开发商是 Google,其开发语言基于 IntelliJ IDEA,虽然不是 Eclipse ADT,但有些类似,它主要 提供了集成的 Android 开发工具用于开发和调试。由于现在安卓手机占据市场的大份额,安卓开发软件也越来越火热,其强大的功能为开发者带来极大的便利性和高效性。Android Studio 的架构组成: 在 IDEA 的基础上,Android Studio 提供基于 Gradle的构建支持;And
26、roid 专属的重构和快速修复; 提示工具以捕获性能、可用性、版本兼容性等问题;支持 ProGuard 和应用签名;基于模板的向导来生成常用的 Android 应用设计和组件;功能强大的布局编辑器,可以让你拖拉 UI 控件并进行效果预览。Android Studio 的特点:智能的代码编辑器;代码模板和 GitHub 集成;开发适用于多屏幕的应用;支持所有形状和尺寸的模拟器;基于 Gradle 的灵活构建系统;即时运行功能;速度更快的 ADB 等 3。2.2.2 MySQL 数据库MySQL 数据库由瑞典 MySQL AB 公司开发,因为其运行速度快,成本相对较低,本身又拥有较小的体积,因此被
27、一些中小型企业广泛地应用 4。其最大的优点是它具有免费的开放源码。其可以使用命令行工具管理 MySQL 数据库(命令 mysql 和 mysqladmin),也可以从 MySQL 的网站下载图形管理工具 MySQL Administrator,MySQL Query Browser 和 MySQL Workbench。phpMyAdmin 是由 php 写成 的 MySQL 资料库系统管理程序,第 2 章 系统分析6让管理者可用 Web 界面管理 MySQL 资料库。phpMyBackupPro 也是由 PHP 写成的,可以透过 Web 界面创建和管理数据库。它可以创建伪 cronjobs,可
28、以用来自动在某个时间或周期备份 MySQL 数据库。另外,还有其他的 GUI 管理工具,例如 mysql-front 以及 ems mysql manager,navicat 等等。本系统采用 navicat 对 MySQL 数据库进行管理。MySQL 数据库具备以下优点:1、它的编写语言是 C 和 C+,能够提供可移植性的源代码,同时也支持多种操作系统。2、MySQL 是支持多线程的,充沛运用 CPU 资源。3、MySQL 提供 TCP/IP、 JDBC 等各类数据库的连接模式,提供一种工具,即对数据库进行检查,管理,优化等。4、MySQL 使用标准的 SQL 数据语言形式,支持 PHP,运
29、用 GPL 协议。2.3 需求分析2.3.1 功能需求分析茶叶销售系统主要服务于广大中小茶叶销售企业,为他们提供便捷的销售渠道,实现“电子商务”的理念 5。茶叶销售系统将更有效地提高销售工作效率,发挥其职能更好地服务于茶叶销售企业,成为其茶叶销售与管理的好帮手。对系统进行需求分析是整个系统实现的核心部分,根据系统的技术可行性分析,以及现有茶叶销售系统的优点与不足,通过查看大量相关资料后进行合理规划,总结系统需求分析,对系统功能模块进行如下划分:登录与密码修改模块;销售模块;报表查询模块;库存管理模块;销售评比模块;分店管理模块;库存预警模块。1、登录与密码修改模块。该模块是用户提供正确的用户名
30、与密码,登录后进入系统,只有成功登录才能使用系统的其他功能,在登录时可以选择记住密码,同时也可进行密码修改。这里的用户包括普通用户与管理员。该模块的用例图如下图 2.1 所示: 第 2 章 系统分析7图 2.1 登录与密码模块用例图2、销售模块。该模块是指用户根据消费者购买的茶叶信息进行录入,选择茶叶种类与数量,填写折扣进而生成销售记录,同时,可以进行销售记录查询,包括快捷查询(如全部记录,今日,本周,本月,本年度)和自主选择时间段进行查询。此外还可进行退货操作,一旦点击退货,将删除该条销售记录并将商品返回到库存中。这里的用户包括普通用户与管理员。销售模块的用例图如下图 2.2 所示: 图 2
31、.2 销售模块用例图3、报表查询模块。该模块是用户既可以快捷查询(如今日,本周,本月,本年度)和自主选择时间段进行查询,通过实现折线图表现不同日期对应的销售额,使销售情况更一目了然,并且支持全屏查看,以免折线图过小不清晰用户查看不方便。这里的用户包括普通用户与管理员。报表查询模块用例图如下图 2.3 所示: 图 2.3 报表查询模块用例图4、库存管理模块。该模块是用户可对库存商品进行管理,该模块罗列出所有的库存商品信息,可对其进行修改与删除,同时,可录入新的库存商品(包括种类名称,单价,数量)。通过该模块更有效直观进行库存管理。这里的用户包括普通用户与管理员。库存管理模第 2 章 系统分析8块
32、用例图如下图 2.4 所示:图 2.4 库存管理模块用例图5、销售评比模块。该模块是指以销售额为指标进行排行,用户通过该模块可看到不同时间段(包括本周,本月,本年度)的排行,分为国内各分店排行和店内销售人员排行。企业管理人员通过该模块可进行销售评比,对销售冠军进行奖励进而提高销售人员的积极性。这里的用户包括普通用户与管理员。销售评比模块用例图如下图 2.5 所示: 图 2.5 销售评比模块用例图6、分店管理模块。该模块是指管理员可通过添加分店信息(包括账号,密码,地区)为新分店分配账号,若已存在的分店不再营业可进行删除分店信息。通过该模块用户可以看到所有分店的账号,地区以及创建时间。该模块是管
33、理员所特有的功能模块,普通用户没有权限访问该功能模块。分店管理模块用例图如下图 2.6 所示: 图 2.6 分店管理模块用例图7、库存预警模块。该模块是指用户通过自主设置库存预警值即最少库存数,当茶叶一旦卖出(即生第 2 章 系统分析9成销售记录后,库存数量减少),茶叶数量少于预警值时,系统将立刻向用户发送预警提示,提醒用户当前某种茶叶库存不足,需及时补货,以防茶叶售空。通过该模块用户不用时时刻刻关注各种茶叶的库存量,节省大量时间与精力。这里的用户包括普通用户与管理员。库存预警模块用例图如下图 2.7 所示: 图 2.7 库存预警模块用例图2.3.2 流程图分析本系统的实现是为用户提供一个茶叶
34、销售系统,通过这个系统,用户可以更有效地进行销售与管理。另外,系统可进行销售评比,用户根据排行情况进行奖励有利于提高销售人员的积极性 6;用户通过自主设置库存预警值接收预警提示,可避免在库存管理浪费太多精力。同时,系统除了普通用户角色,还设置了管理员的角色,管理员可以对各分店信息进行管理。普通用户和管理员登录后即可进行相应的操作,主要流程如下图 2.8 所示: 图 2.8 流程图第 3 章 系统设计10第 3 章 系统设计3.1 系统结构设计根据 Android Native App 框架及 MVC 设计模式对茶叶销售平台的整体架构进行设计,采用业务逻辑、数据、界面显示分离的分层设计思路,系统
35、的整体层次架构图如下图 3.1 所示:图 3.1 系统层次架构图如上图所示,系统架构可以分为客户端和服务端,客户端包括界面展现、业务逻辑会议及数据模型,这与 MVC 框架的设计模式相互照应。以下是对这三层架构的简要描述。1、界面展现:即视图,视图是用户所看到并与之交互的界面。视图只是一个虚拟表而不是真实存在的基本表,其所对应的数据存储在视图所引用的基本表中,在数据库中不存在视图存储结构。对茶叶销售平台来说,视图表现为手机终端的界面展现。2、业务逻辑:即控制器,是视图与模型的桥梁,其作用是处理用户交互,其工作流程是从视图中读取数据,控制用户输入,并向模型发送数据。3、数据模型:即模型,其作用是处
36、理应用程序数据逻辑。通过模型对象在数据库中存取数据。第 3 章 系统设计113.2 模块结构设计基于 Android 的茶叶销售平台主要由七个功能模块构成,分别为登录与密码修改模块、销售模块、报表查询模块、库存管理模块、销售评比模块、分店管理模块以及库存预警模块,其功能模块图如下图 3.2 所示:图 3.2 系统功能模块图用户通过输入正确的用户名和密码进行登录系统,登录成功后可进入销售模块进行新增销售记录与销售记录查询,一旦销售记录新增成功后便可在销售记录中查询到;报表查询模块可自主选择时间段或快捷查询销售情况,通过折线图的形式展现出来,更加一目了然,同时也可切换全屏查看。库存管理模块是对库存
37、信息进行添加,删除,查看,修改。只有当茶叶库存信息存在才可在销售模块进行选择,同时其库存量也将影响销售。销售评比模块是用户可查看全国各分店的销售排行情况,此外,也可查看用户店内的销售人员销售排行,可进行相应奖励,提高销售人员的积极性。分店管理模块是管理员对分店信息进行管理,可添加或删除分店信息,普通用户没有权限访问该模块。库存预警模块是用户通过自主设置库存预警值,当库存量小于预警值时,系统将发出提示库存不足提示。第 3 章 系统设计123.3 数据库设计3.3.1 E-R 图设计在概要设计阶段,对系统的数据库表进行了 E-R 图设计,主要是对实体与实体之间的联系进行设计。本系统的 E-R 图设
38、计如下图 3.3 所示:用 户产 品 销 售 记 录管 理 新 增账 户 所 属 地 区密 码用 户 名管 理 员 标 识销 售 额用 户 标 识 符 创 建 时 间产 品 价 格产 品 数 量 产 品 所 属 地 区 修 改 时 间 添 加 时 间产 品 名 称产 品 标 识 符销 售 日 期 折 扣 销 售 人 员销 售 分 店销 售 额产 品 价 格产 品 名 称产 品 标 识 符销 售 记 录 标 识 符图 3.3 系统 E-R 图系统实体分别为用户、产品以及销售记录,用户的属性分别有用户标识符、用户名、密码、管理员标识、账户所属地区、销售额以及创建时间;产品的属性分别有产品标识符、产
39、品名称、产品价格、产品数量、产品所属地区、修改时间以及添加时间;销售记录的属性分别有销售记录标识符、产品标识符、产品名称、产品价格、销售额、销售分店、销售人员、折扣以及销售日期。用户与产品之间的联系为用户可对产品信息进行管理,可对其进行查看、添加、修改、删除等操作。用户与销售记录之间的联系为用户可新增销售记录,同时也可进行查询销售记录。3.3.2 数据字典设计1、用户表(user 表),该表用来管理用户信息。设计该表是为了满足用户登录系统的需求,用户登录时需要填写个人信息,包括用户名、密码、账户所属地区等;由于在某些功能模块管理员拥有的权限比普通用户高,因此在该表中还设置一个属性为第 3 章
40、系统设计13是否为管理员(isadmin);当用户完成一次销售后,销售额会相应增加,因此, 还设置了销售额属性。此外,当管理员创建新的账号时,系统会自动为用户生成一个创建时间。用户表的具体内容如下表 3.1 所示:表 3.1 用户表数据列PK Name Type Not Null Unsigned Len Init NotesTrue id int True True 12 用户标识符False username varchar True 30 用户名False password varchar True 40 密码False isadmin tinyint True 1 0 管理员标识Fal
41、se location varchar True 100 账户所属地区False salenum int True 11 0 销售额False dtime datetime True 创建时间2、产品表(product 表),该表用来管理产品信息,产品在本系统指的就是茶叶。由于系统涉及到茶叶库存信息,考虑到用户使用该系统进行库存管理时以及销售时的库存量是否足够,通过该表可以在销售时选择茶叶种类便得知其价格与库存量。另外,在进行库存管理时可得知库存信息的修改、添加时间。产品表的具体内容如下表 3.2 所示:表 3.2 产品表数据列PK Name Type Not Null Unsigned Le
42、n Init NotesTrue id int True True 11 产品标识符False name varchar True 32 产品名称False price int True True 11 产品价格False num int True True 11 数量False username varchar True 32 产品所属地区False mtime datetime True 修改时间False dtime datetime True 添加时间3、销售记录表(record 表), 销售记录表(record 表),该表是用来存储销售记录。设计该表是用来存储销售记录,将销售完成后生
43、成的销售记录存储到系统数据库后台。销售记录必须明确是由哪家店面,哪个销售人员销售的,因此,该表包含销售门店与销售人员属性。另外,由于销售会存在打折,所以该表包含折扣属性。每条销售记录生成后存储在后跳会自动匹配销售时间,在进行销售记录查询时作为查询条件。销售记录表与产品表有关联,产品 id 是销售记录表的外键。销售记录表的具体内容如下表 3.3 所示:表 3.3 销售记录表数据列PK Name Type Not Null Unsigned Len Init Notes第 3 章 系统设计14True id int True True 10 销售记录标识符False pid int False T
44、rue 10 产品 IDFalse name varchar True 32 产品名称False num int True True 10 销售数量False sprice int True True 10 产品价格False username varchar True 20 销售分店False saleman varchar True 10 销售人员False discount tinyint True True 3 折扣False rtime datetime True 销售日期第 4 章 系统实现15第 4 章 系统实现4.1 系统的运行环境本系统采用 Android Native Ap
45、p 框架进行架构设计,采用 Android 的不同布局、相关接口设计以及 MySQL 数据库等实现,采用 PHP 实现本地服务器,系统运行环境要求 Android 手机系统须为 4.0 以上版本,在网络条件下即可下载运行。4.2 关键问题的实现4.2.1 网络通讯实现网络通讯才能使系统在连接网络条件下运行。采用的自己封装的两个工具类:NetworkUtils(用于 GET 方法)和 VolleyPost(用于 Post 方法)。NetworkUtils 基于HttpUrlConnection 的数据流操作, VolleyPost 封装自 Google 推出的 Volley 框架。以下内容为网络
46、通讯的部分代码:1、NetworkUtils 类:if (connection.getResponseCode() != HttpURLConnection.HTTP_OK) throw new IOException(connection.getResponseMessage() +“: with “ +urlSpec);2、VolleyPost 类:RequestQueue queue = Volley.newRequestQueue(mContext);StringRequest request = new StringRequest(Request.Method.POST, url,
47、new Response.Listener();4.2.2 销售模块本系统的主要功能是销售模块,采用 RecycleView+Adapter+ArrayList(简称三剑客)实现 7。Android 客户端通过 Volley 网络请求框架,Post 请求携带参数,接收服务器返回的 json 数据。将 json 数据解析成 java 对象并放入 ArrayList 作为数据源,然后调用 Adapter.notifyDataSetChanged() 刷新 RecycleView,将退货商品返回库存。可以选择时间段查询、快捷查询、执行新增销售记录以及退货等操作,新增销售记录或退货第 4 章 系统实现
48、16等操作都将影响到库存数量,若执行操作后库存数量少于预警值将发出通知。以下内容为销售模块的部分代码:private void returnCommodity(String id, final int pos)Map params = new HashMap();params.put(“id“, id);new VolleyPost(mContext, Constants.API_RETURN_COMMODITY, params)Overridepublic void handleResponse(String response) if(response.contains(“1“)saleRe
49、cords.remove(pos);notifyDataSetChanged();Toast.makeText(mContext, “退货成功“ , Toast.LENGTH_SHORT).show();Overridepublic void handleError(VolleyError error) .start();4.3 功能实现4.3.1 登录与密码修改模块用户通过填写账号和密码进行登录,只有提供正确的账号密码才能进入主界面,可以选择记住密码省去每次输入密码的繁琐,密码保存在本机的 Sharepreferences 文件里。另外在登录界面点击修改密码跳转到修改密码界面。登录、密码修改界面如下图4.1、4.2 所示:第 4 章 系统实现17图 4.1 登录界面 图 4.2 密码修改界面4.3.2 销售模块该模块是指用户根据消费者购买的茶叶信息进行录入,选择茶叶种类与数量,填写折扣后进而生成销售记录,同时,可以进行销售记录查询 8,销售记录包括快捷查询(如全部记录,今日,本周,本月,本年度)和用户自主选择时间段进行查询。此外还可进行退货操作,一旦点击退货,系统将删除该条销售记录并将已售商品返回到库存中。该模块可进一步划分成两个子模块,以下