生活随笔
收集整理的這篇文章主要介紹了
基于QT技术实现无线点菜系统设计与实现
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
目 錄
第1章 緒論 1
1.1研究背景及意義 1
1.2系統(tǒng)需達(dá)到的要求 1
1.3系統(tǒng)開發(fā)技術(shù)介紹 2
第2章 理論基礎(chǔ)知識 4
2.1軟件工程概述 4
2.1.1 軟件工程的基本原理 4
2.1.2 生命周期各個階段 5
2.2 數(shù)據(jù)庫系統(tǒng)概述 5
2.2.1 數(shù)據(jù)庫系統(tǒng)[4] 5
2.2.2 數(shù)據(jù)庫管理系統(tǒng) 5
第3章 需求分析 6
3.1產(chǎn)品任務(wù) 6
3.1.1目標(biāo) 6
3.1.2定位 6
3.1.3前景 6
3.1.4用戶角色分析 6
3.1.5假定和約束 6
3.1.6開發(fā)環(huán)境及技術(shù) 7
3.2用戶功能需求 7
3.2.1系統(tǒng)組成 7
3.2.2手持客戶端子系統(tǒng) 8
3.2.3服務(wù)器端子系統(tǒng) 9
3.2.4廚房端子系統(tǒng) 11
3.3可行性分析 12
3.3.1技術(shù)可行性 12
3.3.2經(jīng)濟(jì)可行性 12
3.33操作可行性 12
3.4非功能需求 12
3.4.1軟硬件需求環(huán)境 12
3.4.1安全性 13
3.4.2時間響應(yīng)性 13
第4章 概要設(shè)計(jì) 14
4.1系統(tǒng)概括 14
4.2系統(tǒng)基本設(shè)計(jì) 14
4.3客戶端移植的環(huán)境配置[6] 15
4.4通訊接口設(shè)計(jì) 17
4.5數(shù)據(jù)列表 18
4.6E-R圖設(shè)計(jì) 20
4.7異常處理設(shè)計(jì) 21
第5章 詳細(xì)設(shè)計(jì) 22
5.1功能詳述 22
5.1.1無線點(diǎn)菜系統(tǒng)客戶端功能 22
5.1.2無線點(diǎn)菜系統(tǒng)服務(wù)端功能 22
5.1.3無線點(diǎn)菜系統(tǒng)廚房端功能 23
5.2用例建模 24
5.2.1系統(tǒng)用例圖 24
5.3功能詳細(xì)設(shè)計(jì) 27
第6章 系統(tǒng)主要功能的實(shí)現(xiàn) 31
6.1客戶端界面的開發(fā) 31
6.1.1客戶端初始化界面的開發(fā) 31
6.1.2點(diǎn)菜界面的開發(fā) 31
6.1.3退菜界面的開發(fā) 32
6.2 服務(wù)器端界面開發(fā) 33
6.2.1 登錄界面的開發(fā) 33
6.2.2管理員管理界面開發(fā) 33
6.2.3結(jié)賬界面的開發(fā) 37
6.3廚房端界面設(shè)計(jì) 38
第7章 系統(tǒng)測試 39
7.1功能測試 39
7.2性能測試 39
7.3測試結(jié)果分析 39
結(jié) 論 40
參考文獻(xiàn) 41
致 謝 42
附 錄 43
第3章 需求分析
3.1產(chǎn)品任務(wù)
3.1.1目標(biāo)
(1)是為了開發(fā)一種可以方便消費(fèi)者點(diǎn)菜,更人性化,貼心的點(diǎn)菜系統(tǒng)。
(2)系統(tǒng)界面友好,功能完善,既便于顧客查看、點(diǎn)菜,又利于酒店管理。
3.1.2定位
適用于中高檔餐廳、酒店、酒樓等餐飲企業(yè)。
3.1.3前景
信息時代的高速發(fā)展要求勞動密集型產(chǎn)業(yè)向科技密集型產(chǎn)業(yè)轉(zhuǎn)型,特別是與百姓生活密切相關(guān)的餐飲行業(yè)等服務(wù)業(yè)。但是,當(dāng)前餐飲業(yè)依舊延續(xù)了傳統(tǒng)人工管理模式,此管理模式效率低下,嚴(yán)重阻礙了餐飲業(yè)的發(fā)展。鑒于這種狀況,基于電子信息技術(shù)的電子管理模式有極大的發(fā)展空間。該系統(tǒng)就是其中的一種。
3.1.4用戶角色分析
客戶:客戶是該系統(tǒng)的主要使用者,操作簡單,無需進(jìn)行繁瑣的數(shù)據(jù)輸入操作。對客戶的計(jì)算機(jī)系統(tǒng)使用技能無任何要求,識字即會使用。
管理人員:作為酒店管理人員在使用該系統(tǒng)時也無需進(jìn)行繁瑣操作,只要熟悉管理流程,稍加培訓(xùn)即可上崗。
3.1.5假定和約束
臺號:自001開始,上限為255。
優(yōu)先級:分為高、中、低三個優(yōu)先級別,分別用0、1、2來表示。
菜品編號:用四位數(shù)字表示。自0001開始。
菜品狀態(tài):分為兩個狀態(tài):未完成,已完成。
桌號狀態(tài):分為兩個狀態(tài):可使用,不可使用。
菜品備注:分為七個狀態(tài):無,加辣,微辣,無辣味,不加蒜,不加香菜,不加花椒。
3.1.6開發(fā)環(huán)境及技術(shù)
系統(tǒng)的開發(fā)環(huán)境:
數(shù)據(jù)庫:Sqlite3
操作系統(tǒng):服務(wù)器:Windows xp;
客戶終端、廚房終端:Linux 2.6.32
硬件環(huán)境:客戶終端、廚房終端:MINI2440;
服務(wù)器:pc機(jī)
編譯環(huán)境:Qt 4.6.2、arm-linux-gcc 4.3.2。
系統(tǒng)技術(shù):ZigBee實(shí)現(xiàn)無線通訊。
3.2用戶功能需求
3.2.1系統(tǒng)組成
該系統(tǒng)由服務(wù)器端,手持端,廚房端外接ZigBee來實(shí)現(xiàn)無線通訊而構(gòu)成,該網(wǎng)絡(luò)拓?fù)鋱D如圖3.1。
圖3.1 網(wǎng)絡(luò)拓?fù)鋱D[5]
3.2.2手持客戶端子系統(tǒng)
圖3.2為客戶端流程圖,該模塊有以下功能:
初始化菜單:服務(wù)員終端開機(jī)后,通過無線接收模塊從服務(wù)器數(shù)據(jù)庫下載并初始化菜譜。
開臺:在客戶坐定后,服務(wù)員發(fā)送桌號服務(wù)端,進(jìn)行開臺操作。
點(diǎn)菜:開臺后記錄客戶點(diǎn)菜信息并發(fā)送至服務(wù)器。
加菜:選擇需要加菜的臺號,并加入客戶需要點(diǎn)的菜發(fā)送至服務(wù)器。
退菜:選擇需要退菜的臺號,選擇用戶需要退訂的菜,等待服務(wù)器返回信息。
催菜:選擇需要催菜的臺號及需要催的菜,發(fā)送至服務(wù)器。
結(jié)賬:本文轉(zhuǎn)載自http://www.biyezuopin.vip/onews.asp?id=12718向服務(wù)器發(fā)送當(dāng)前需要結(jié)賬的臺號并接收服務(wù)端發(fā)送的賬單顯示。
發(fā)送菜單:把顧客點(diǎn)所菜的編號以及點(diǎn)菜時間串分條發(fā)送至服務(wù)器。
圖3.2 客戶端流程圖
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0"><class>tmp</class><widget class="QDialog" name="tmp"><property name="geometry"><rect><x>0</x><y>0</y><width>728</width><height>503</height></rect></property><property name="windowTitle"><string>Dialog</string></property><property name="windowIcon"><iconset resource="rec.qrc"><normaloff>:/1/tubiao.png</normaloff>:/1/tubiao.png</iconset></property><widget class="QPushButton" name="pushButton_4"><property name="geometry"><rect><x>280</x><y>200</y><width>81</width><height>61</height></rect></property><property name="text"><string>發(fā)送</string></property></widget><widget class="QWidget" name="layoutWidget"><property name="geometry"><rect><x>20</x><y>10</y><width>251</width><height>311</height></rect></property><layout class="QVBoxLayout" name="verticalLayout"><item><widget class="QLabel" name="label"><property name="text"><string>酒店菜單</string></property></widget></item><item><widget class="QTableWidget" name="tableWidget"><row><property name="text"><string>1</string></property></row><row><property name="text"><string>2</string></property></row><row><property name="text"><string>3</string></property></row><row><property name="text"><string>4</string></property></row><row><property name="text"><string>5</string></property></row><row><property name="text"><string>6</string></property></row><row><property name="text"><string>7</string></property></row><row><property name="text"><string>8</string></property></row><row><property name="text"><string>9</string></property></row><row><property name="text"><string>10</string></property></row><row><property name="text"><string>11</string></property></row><row><property name="text"><string>12</string></property></row><column><property name="text"><string>編號</string></property></column><column><property name="text"><string>名稱</string></property></column><column><property name="text"><string>價格</string></property></column><item row="0" column="0"><property name="text"><string>0001</string></property></item><item row="0" column="1"><property name="text"><string>東安雞</string></property></item><item row="0" column="2"><property name="text"><string>20</string></property></item><item row="1" column="0"><property name="text"><string>0002</string></property></item><item row="1" column="1"><property name="text"><string>永州血鴨</string></property></item><item row="1" column="2"><property name="text"><string>24</string></property></item><item row="2" column="0"><property name="text"><string>0003</string></property></item><item row="2" column="1"><property name="text"><string>豬血丸子</string></property></item><item row="2" column="2"><property name="text"><string>18</string></property></item><item row="3" column="0"><property name="text"><string>0004</string></property></item><item row="3" column="1"><property name="text"><string>紅燒肉塊</string></property></item><item row="3" column="2"><property name="text"><string>15</string></property></item><item row="4" column="0"><property name="text"><string>0005</string></property></item><item row="4" column="1"><property name="text"><string>農(nóng)家小炒</string></property></item><item row="4" column="2"><property name="text"><string>18</string></property></item><item row="5" column="0"><property name="text"><string>0006</string></property></item><item row="5" column="1"><property name="text"><string>手撕包菜</string></property></item><item row="5" column="2"><property name="text"><string>12</string></property></item><item row="6" column="0"><property name="text"><string>0007</string></property></item><item row="6" column="1"><property name="text"><string>油淋茄子</string></property></item><item row="6" column="2"><property name="text"><string>12</string></property></item><item row="7" column="0"><property name="text"><string>0008</string></property></item><item row="7" column="1"><property name="text"><string>香干肉絲</string></property></item><item row="7" column="2"><property name="text"><string>18</string></property></item><item row="8" column="0"><property name="text"><string>0009</string></property></item><item row="8" column="1"><property name="text"><string>魚香肉絲</string></property></item><item row="8" column="2"><property name="text"><string>18</string></property></item><item row="9" column="0"><property name="text"><string>0010</string></property></item><item row="9" column="1"><property name="text"><string>麻婆豆腐</string></property></item><item row="9" column="2"><property name="text"><string>15</string></property></item><item row="10" column="0"><property name="text"><string>0011</string></property></item><item row="10" column="1"><property name="text"><string>水煮魚片</string></property></item><item row="10" column="2"><property name="text"><string>18</string></property></item><item row="11" column="0"><property name="text"><string>0012</string></property></item><item row="11" column="1"><property name="text"><string>肉絲跑蛋</string></property></item><item row="11" column="2"><property name="text"><string>16</string></property></item></widget></item></layout></widget><widget class="QPushButton" name="pushButton"><property name="geometry"><rect><x>20</x><y>430</y><width>251</width><height>41</height></rect></property><property name="text"><string>確認(rèn)添加</string></property></widget><widget class="QWidget" name="layoutWidget_2"><property name="geometry"><rect><x>334</x><y>280</y><width>301</width><height>187</height></rect></property><layout class="QGridLayout" name="gridLayout"><item row="0" column="0"><widget class="QPushButton" name="pushButton_6"><property name="minimumSize"><size><width>93</width><height>41</height></size></property><property name="maximumSize"><size><width>93</width><height>41</height></size></property><property name="text"><string>1</string></property></widget></item><item row="0" column="1"><widget class="QPushButton" name="pushButton_7"><property name="minimumSize"><size><width>93</width><height>41</height></size></property><property name="maximumSize"><size><width>93</width><height>41</height></size></property><property name="text"><string>2</string></property></widget></item><item row="0" column="2"><widget class="QPushButton" name="pushButton_8"><property name="minimumSize"><size><width>93</width><height>41</height></size></property><property name="maximumSize"><size><width>93</width><height>41</height></size></property><property name="text"><string>3</string></property></widget></item><item row="1" column="0"><widget class="QPushButton" name="pushButton_9"><property name="minimumSize"><size><width>93</width><height>41</height></size></property><property name="maximumSize"><size><width>93</width><height>41</height></size></property><property name="text"><string>4</string></property></widget></item><item row="1" column="1"><widget class="QPushButton" name="pushButton_10"><property name="minimumSize"><size><width>93</width><height>41</height></size></property><property name="maximumSize"><size><width>93</width><height>41</height></size></property><property name="text"><string>5</string></property></widget></item><item row="1" column="2"><widget class="QPushButton" name="pushButton_11"><property name="minimumSize"><size><width>93</width><height>41</height></size></property><property name="maximumSize"><size><width>93</width><height>41</height></size></property><property name="text"><string>6</string></property></widget></item><item row="2" column="0"><widget class="QPushButton" name="pushButton_12"><property name="minimumSize"><size><width>93</width><height>41</height></size></property><property name="maximumSize"><size><width>93</width><height>41</height></size></property><property name="text"><string>7</string></property></widget></item><item row="2" column="1"><widget class="QPushButton" name="pushButton_13"><property name="minimumSize"><size><width>93</width><height>41</height></size></property><property name="maximumSize"><size><width>93</width><height>41</height></size></property><property name="text"><string>8</string></property></widget></item><item row="2" column="2"><widget class="QPushButton" name="pushButton_14"><property name="minimumSize"><size><width>93</width><height>41</height></size></property><property name="maximumSize"><size><width>93</width><height>41</height></size></property><property name="text"><string>9</string></property></widget></item><item row="3" column="0"><widget class="QPushButton" name="pushButton_15"><property name="minimumSize"><size><width>93</width><height>41</height></size></property><property name="maximumSize"><size><width>93</width><height>41</height></size></property><property name="text"><string>取消</string></property></widget></item><item row="3" column="1"><widget class="QPushButton" name="pushButton_5"><property name="minimumSize"><size><width>93</width><height>41</height></size></property><property name="maximumSize"><size><width>93</width><height>41</height></size></property><property name="text"><string>0</string></property></widget></item><item row="3" column="2"><widget class="QPushButton" name="pushButton_16"><property name="minimumSize"><size><width>93</width><height>41</height></size></property><property name="maximumSize"><size><width>93</width><height>41</height></size></property><property name="text"><string>確認(rèn)</string></property></widget></item></layout></widget><widget class="QPushButton" name="pushButton_18"><property name="geometry"><rect><x>280</x><y>20</y><width>81</width><height>61</height></rect></property><property name="text"><string>查詢</string></property></widget><widget class="QWidget" name="layoutWidget_3"><property name="geometry"><rect><x>20</x><y>335</y><width>257</width><height>85</height></rect></property><layout class="QGridLayout" name="gridLayout_4"><item row="0" column="0"><layout class="QGridLayout" name="gridLayout_2"><item row="0" column="0"><widget class="QLabel" name="label_3"><property name="text"><string>輸入菜品編號:</string></property></widget></item><item row="0" column="1"><widget class="QLineEdit" name="lineEdit"><property name="minimumSize"><size><width>141</width><height>41</height></size></property></widget></item></layout></item><item row="1" column="0"><layout class="QGridLayout" name="gridLayout_3"><item row="0" column="0"><widget class="QLabel" name="label_4"><property name="text"><string>備注:</string></property></widget></item><item row="0" column="1"><widget class="QComboBox" name="comboBox"><property name="minimumSize"><size><width>131</width><height>31</height></size></property><item><property name="text"><string>無</string></property></item><item><property name="text"><string>加辣</string></property></item><item><property name="text"><string>微辣</string></property></item><item><property name="text"><string>無辣味</string></property></item><item><property name="text"><string>不加蒜</string></property></item><item><property name="text"><string>不加香菜</string></property></item><item><property name="text"><string>不加花椒</string></property></item></widget></item></layout></item></layout></widget><widget class="QPushButton" name="pushButton_2"><property name="geometry"><rect><x>280</x><y>80</y><width>81</width><height>61</height></rect></property><property name="text"><string>添加</string></property></widget><widget class="QWidget" name="layoutWidget_4"><property name="geometry"><rect><x>370</x><y>10</y><width>261</width><height>261</height></rect></property><layout class="QVBoxLayout" name="verticalLayout_2"><item><widget class="QLabel" name="label_2"><property name="text"><string>點(diǎn)菜菜單</string></property></widget></item><item><widget class="QTableWidget" name="tableWidget_2"><row><property name="text"><string>1</string></property></row><row><property name="text"><string>2</string></property></row><row><property name="text"><string>3</string></property></row><row><property name="text"><string>4</string></property></row><row><property name="text"><string>臺號</string></property></row><row><property name="text"><string>總計(jì)</string></property></row><column><property name="text"><string>編號</string></property></column><column><property name="text"><string>菜名</string></property></column><column><property name="text"><string>備注</string></property></column><column><property name="text"><string>價格</string></property></column><item row="0" column="0"><property name="text"><string>0003</string></property></item><item row="0" column="1"><property name="text"><string>豬血丸子</string></property></item><item row="0" column="2"><property name="text"><string>無</string></property></item><item row="0" column="3"><property name="text"><string>18</string></property></item><item row="1" column="0"><property name="text"><string>0002</string></property></item><item row="1" column="1"><property name="text"><string>永州血鴨</string></property></item><item row="1" column="2"><property name="text"><string>加辣</string></property></item><item row="1" column="3"><property name="text"><string>24</string></property></item><item row="2" column="0"><property name="text"><string>0001</string></property></item><item row="2" column="1"><property name="text"><string>東安雞</string></property></item><item row="2" column="2"><property name="text"><string>無</string></property></item><item row="2" column="3"><property name="text"><string>20</string></property></item><item row="3" column="0"><property name="text"><string>0006</string></property></item><item row="3" column="1"><property name="text"><string>手撕包菜</string></property></item><item row="3" column="2"><property name="text"><string>無</string></property></item><item row="3" column="3"><property name="text"><string>12</string></property></item><item row="4" column="0"><property name="text"><string>6</string></property></item><item row="5" column="0"><property name="text"><string>74</string></property></item></widget></item></layout></widget><widget class="QPushButton" name="pushButton_3"><property name="geometry"><rect><x>280</x><y>140</y><width>81</width><height>61</height></rect></property><property name="text"><string>刪除</string></property></widget></widget><resources><include location="rec.qrc"/></resources><connections/>
</ui>
總結(jié)
以上是生活随笔為你收集整理的基于QT技术实现无线点菜系统设计与实现的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。