智能点餐系统开发纪实2—–系统整体结构和业务流程「建议收藏」

1请看这里http://blog.csdn.net/jason0539/article/details/20854329 写完之前这个就没写,趁着新鲜感几天就把这个弄完了,也没再写别的东西,前几天已经完成了,今天需要写一个文档,写完文档就把里面我写的部分贴到这里来了,有点罗嗦,凑字数。其实就是讲了一个整体流程,整个系统主要分四部分:小车,手机,收银台,厨房。服务器写了两个,收银

大家好,又见面了,我是全栈君。

1请看这里http://blog.csdn.net/jason0539/article/details/20854329

 

写完之前这个就没写,趁着新鲜感几天就把这个弄完了,也没再写别的东西,前几天已经完成了,今天需要写一个文档,写完文档就把里面我写的部分贴到这里来了,有点罗嗦,凑字数。

其实就是讲了一个整体流程,整个系统主要分四部分:

小车,手机,收银台,厨房。

服务器写了两个,收银台一个,用来处理手机的连接,包括菜单更新和订单处理,

                                厨房一个,用来处理送餐小车的连接,主要用来给小车发送桌号,让小车送餐到指定桌号。

手机就用的android,不多说,

小车用的arduino,都是一个个的模块,连上写点程序,处理下各个串口的数据就行。

 

客户端:采用android平台开发的应用,主要功能是客人在餐厅打开应用后,连接到餐厅的wifi信号,通过开启一个socket去后台服务器查询菜单,如果是第一次打开,自动下载所有菜单,否则的话会检查菜单是否有更新,如果菜单更新则自动下载最新菜单,并自动存储在应用的数据库中,方便离线查看.客人在应用中选择要点的菜品,填上自己所在桌号,然后提交订单,即可将订单发送到服务器.

 

收银台:在收银台可进行菜单的增删改查.客人打开客户端应用之后,会自动连接到收银台的服务器这边来,服务器开启一个线程去处理该客户端的请求,服务器根据客户端的请求指令做出相应,给客户端发送菜单或者接受客户端的点餐订单,客户端的订单请求被服务器存储到后台的MySql数据库中, 收银台的可视化界面通过jdbc与数据库交互存取数据,然后显示到收银台的可视化界面.当客人过来买单,则通过收银台查询数据库中对应桌号的信息,即可获取订单信息,包括所点菜单,总价等,点击结账按钮之后,从数据库中删除此条订单信息.

 

厨房后台:厨房与收银台连接同一个数据库,与收银台不同的是厨房只查询订单信息,然后厨师根据订单信息做菜.小车上面安装了wifi模块,自动连接到厨房的服务器上面,当订单完成后,厨房工作人员通过送餐按钮发送送餐指令给小车,小车收到指令来到厨房,把菜品送到客人所在的餐桌.同时指令发送成功之后,数据库中的相应订单会被删除掉,并自动刷新订单列表,厨师继续做下一张订单的菜品.

 

小车:平时在指定地点充电,收到厨房的送餐指令之后(就是一个桌号)。这个在餐厅里的地面上是有黑色的轨迹和RFID标签的,黑色轨迹用来让小车循迹,不要到处跑,RFID卡片里写着桌子的号码。小车首先到厨房把要送的菜装好,然后按照地板上的循迹线路走,如果读到到写好了指定桌号的RFID卡片,则转弯到餐桌旁边,然后返回充电地点。之后重复以上过程。

 

写这篇的时候突然发现,我为什么要写智能两个字,根本没有体现出智能来,但是现在不管什么行业,都要跟智能两个字贴个边,智能家具,智能热水器,智能这个,智能那个,不明白到底智能在哪里,大部分也就是能做到自动而已,跟智能还差得远。

 

如果没有意外的话这个后面就不再写别的了,之前一直做这个项目做那个项目,大部分做的是重复劳动,很少涉及数据结构和算法之类的原理性的知识,感觉有点虚,之后少写代码,能保持手感就行,多看书,初步打算看完《think in java》《android内核剖析》《深入理解java虚拟机》《数据结构与算法分析(java语言描述)》,然后再作别的打算。

找工作,压力颇大。

 

作者:jason0539

微博:http://weibo.com/2553717707

博客:http://blog.csdn.net/jason0539(转载请说明出处)

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/121345.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • QT 实现 RTSP 视频流服务器[通俗易懂]

    QT 实现 RTSP 视频流服务器[通俗易懂]uos操作系统中使用QT开发RTSP视频流服务器,以下的实现方式使用的是单播方式。可以通过自己开发的rtsp服务器将摄像头的数据推送到服务器中,其他用户可以通过访问视频流地址,直接访问摄像头的内容,也就是通常说的摄像头直播。本篇文章使用开源框架live555开发一个属于自己的视频流服务器。

    2022年10月20日
  • svn——’svn’不是内部或外部命令,也不是可运行的程序或批处理文件

    在安装svn工具后,我们一般会用客服端进行操作,但是也不会避免使用svn命令对项目进行操作。那么就有可能回遇到这个问题。’svn’ 不是内部或外部命令,也不是可运行的程序或批处理文件。下面是这个问题的解决方案:1、首先先看自己本地环境变量是否配置了,如下图是我的svn配置的路径:(不知道配置环境变量请自行百度)2、如果本地环境变量配置了,还是报这个错误,那么就是安装时候有个

  • js十大算法[通俗易懂]

    js十大算法[通俗易懂]JS的十大经典算法冒泡排序(BubbleSort)冒泡排序须知:作为最简单的排序算法之一,冒泡排序给我的感觉就像Abandon在单词书里出现的感觉一样,每次都在第一页第一位,所以最熟悉。。。冒泡排序还有一种优化算法,就是立一个flag,当在一趟序列遍历中元素没有发生交换,则证明该序列已经有序。但这种改进对于提升性能来说并没有什么太大作用。。。什么时候最快(BestCases):当输入的数据已经是正序时(都已经是正序了,我还要你冒泡排序有何用啊。。。。)什么时候最慢…

  • pix2pix论文(pix是什么意思)

    图像翻译,指从一副图像到另一副图像的转换。可以类比机器翻译,一种语言转换为另一种语言。下图就是一些典型的图像翻译任务:比如语义分割图转换为真实街景图,灰色图转换为彩色图,白天转换为黑夜……本文主要介绍图像翻译的三个比较经典的模型pix2pix,pix2pixHD,vid2vid。pix2pix提出了一个统一的框架解决了各类图像翻译问题, pix2pixHD则在pix2pix的基础上,较好的解决了高分辨率图像转换(翻译)的问题, vid2vid则在pix2pixHD的基础上,较好的

  • vue如何引用外部js_引入外部js文件

    vue如何引用外部js_引入外部js文件背景在Vue中,通常我们引入一个js插件都是使用npm方式下载然后import使用的。但是我现在本地有了js文件或者是一个远程js文件链接,我不想使用npminstallxxx的方…

  • 计算机插了网线缺连不了网络,网线连不上网怎么回事_为什么网线插电脑上不了网-win7之家…

    计算机插了网线缺连不了网络,网线连不上网怎么回事_为什么网线插电脑上不了网-win7之家…当我们在使用有线网络的时候,都需要在电脑中插入网线才可以,但是有不少用户却遇到网线连不上网的情况,为什么网线插电脑上不了网呢?导致这样问题的原因有很多,为了帮助到大家,现在给大家讲解一下网线连不上网的几种解决方法,一起来看看吧。具体步骤如下:1、电脑插上网线却连不上网首先可能是网线接触不良导致的,可以将网线的两端拔下来重新连接再试试看能不能连上网,或者查看一下网线有无破损,将网线放在其他电脑上连接…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号