欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于移動(dòng)終端的餐廳推薦及點(diǎn)餐方法

文檔序號(hào):6402690閱讀:183來源:國(guó)知局
專利名稱:一種基于移動(dòng)終端的餐廳推薦及點(diǎn)餐方法
技術(shù)領(lǐng)域
本發(fā)明屬于移動(dòng)互聯(lián)網(wǎng)領(lǐng)域,涉及一種基于移動(dòng)終端的餐廳推薦及點(diǎn)餐方法。
背景技術(shù)
在如今生活節(jié)奏加快的年代,人們的生活方式發(fā)生了很大的變化,這些變化體現(xiàn)在衣食住行等方方面面。其中吃飯一直是人們較為關(guān)心的話題,現(xiàn)在人們選擇就餐的方式有很多種,有訂餐上門服務(wù),電話或者短信提前預(yù)定餐廳的,這些方法都有其自身的優(yōu)點(diǎn)和缺點(diǎn)?,F(xiàn)有的移動(dòng)點(diǎn)菜軟件存在如下兩個(gè)問題:現(xiàn)有的移動(dòng)點(diǎn)菜軟件大多數(shù)只是針對(duì)特定餐廳的,即每個(gè)餐廳開發(fā)屬于本餐廳的軟件,該軟件只能在一個(gè)餐廳內(nèi)進(jìn)行查看,預(yù)訂等操作,這樣就給用戶帶來了選擇的復(fù)雜性,即用戶需要為每個(gè)餐廳安裝不同的軟件,這無疑增加了用戶的負(fù)擔(dān)。除此之外,大部分的軟件能夠調(diào)用地圖并將餐廳顯示出來,但是用戶還需要在地圖上找到自己的位置,并且尋找最近的餐廳,這樣在無形之中也增加了用戶的時(shí)間消耗。

發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種基于移動(dòng)終端的餐廳推薦及點(diǎn)餐方法。為達(dá)到上述目的,本發(fā)明采用了以下技術(shù)方案:移動(dòng)終端根據(jù)自帶GPS獲取用戶的實(shí)時(shí)位置信息,同時(shí)移動(dòng)終端向服務(wù)器端發(fā)送用戶的實(shí)時(shí)位置信息;服務(wù)器端接收移動(dòng)終端發(fā)送的用戶的實(shí)時(shí)位置信息,然后將所述實(shí)時(shí)位置信息與服務(wù)器端的數(shù)據(jù)庫(kù)中存儲(chǔ)的餐廳位置信息進(jìn)行比對(duì),然后根據(jù)用戶的實(shí)時(shí)位置與餐廳位置的距離選擇出備選餐廳,并按照用戶的選擇將備選餐廳的餐廳信息返回給移動(dòng)終端供用戶查看,餐廳信息包括在服務(wù)器端維護(hù)的餐廳的實(shí)時(shí)菜譜信息、餐桌座位使用信息和用戶訂單有效性信息;備選餐廳以地圖標(biāo)注形式或者以列表的形式顯示在移動(dòng)終端上,用戶通過移動(dòng)終端選擇、查看備選餐廳的餐廳信息,同時(shí),移動(dòng)終端根據(jù)用戶的選擇生成相應(yīng)的訂單,然后將訂單發(fā)送給服務(wù)器端,訂單包括點(diǎn)菜和預(yù)訂餐桌及座位的請(qǐng)求;各餐廳管理人員通過餐廳端的JSP頁(yè)面對(duì)餐廳信息進(jìn)行維護(hù)并反饋給服務(wù)器端,維護(hù)包括修改餐廳基本信息,添加、刪除和修改菜譜信息,以及根據(jù)訂單狀態(tài)更新餐桌和座位使用狀態(tài)信息。服務(wù)器端接收移動(dòng)終端發(fā)來的用戶的實(shí)時(shí)位置信息,然后將所述實(shí)時(shí)位置信息解析為經(jīng)緯度坐標(biāo)值,將所述經(jīng)緯度坐標(biāo)值與數(shù)據(jù)庫(kù)中存在的餐廳經(jīng)緯度坐標(biāo)值進(jìn)行比對(duì),然后選擇出距離用戶較近的一系列餐廳作為備選餐廳。移動(dòng)終端向服務(wù)器端發(fā)送注冊(cè)和登錄請(qǐng)求,然后根據(jù)服務(wù)器端返回的結(jié)果得到注冊(cè)或者登錄是否成功的信息,用戶登錄成功后,移動(dòng)終端向服務(wù)器端發(fā)送用戶的實(shí)時(shí)位置信息。
移動(dòng)終端根據(jù)用戶的實(shí)時(shí)位置信息和服務(wù)器端返回的餐廳位置信息得到用戶和餐廳的經(jīng)緯度坐標(biāo)信息,然后將用戶和餐廳的位置信息標(biāo)注在地圖上,當(dāng)服務(wù)器端接收到移動(dòng)終端發(fā)來的用戶查看相應(yīng)餐廳信息的請(qǐng)求,服務(wù)器端根據(jù)用戶的請(qǐng)求參數(shù)利用相應(yīng)的HQL語(yǔ)言檢索數(shù)據(jù)庫(kù),然后將從數(shù)據(jù)庫(kù)中檢索出的數(shù)據(jù)封裝成JSON格式的數(shù)據(jù),然后將JSON格式的數(shù)據(jù)以響應(yīng)用戶請(qǐng)求的方式發(fā)送給移動(dòng)終端,移動(dòng)終端通過解析JSON格式的數(shù)據(jù)得到用戶需要查看的餐廳信息,并將餐廳信息以列表的形式展現(xiàn)出來。用戶通過移動(dòng)終端查看備選餐廳信息,以及各備選餐廳的菜譜和空余餐桌座位信息,然后選擇其中一個(gè)備選餐廳進(jìn)行就餐,移動(dòng)終端生成訂單并發(fā)送給服務(wù)器端,訂單包括用戶編號(hào),餐廳編號(hào)和訂單生成時(shí)間,服務(wù)器端接收到訂單后將相應(yīng)的數(shù)據(jù)存入數(shù)據(jù)庫(kù)中,同時(shí)服務(wù)器端開啟另外一個(gè)用于計(jì)時(shí)的線程,自訂單生成超過設(shè)定時(shí)間且用戶沒有前往餐廳則服務(wù)器端自動(dòng)將該訂單設(shè)置為無效狀態(tài)。用戶首先通過移動(dòng)終端向服務(wù)器端發(fā)送訂單,然后在通過移動(dòng)終端瀏覽菜譜的同時(shí),點(diǎn)擊菜譜列表選擇是否將菜加入到訂單中,然后向服務(wù)器端發(fā)送數(shù)據(jù),服務(wù)器端將數(shù)據(jù)存入用戶訂單詳細(xì)列表中;用戶在瀏覽餐廳空余餐桌和座位的同時(shí)選擇是否預(yù)訂餐桌和座位,并向服務(wù)器端發(fā)送數(shù)據(jù),服務(wù)器端將用戶的預(yù)訂餐桌和座位的信息存入訂單詳細(xì)列表中。移動(dòng)終端使用Http協(xié)議實(shí)現(xiàn)移動(dòng)終端到服務(wù)器端的通信,由移動(dòng)終端解析用戶的操作、翻譯成Http請(qǐng)求,服務(wù)器端通過Struts2進(jìn)行請(qǐng)求攔截,并執(zhí)行相應(yīng)的業(yè)務(wù)。服務(wù)器端在取得餐廳授權(quán)后通過數(shù)據(jù)庫(kù)保存餐廳信息,每個(gè)餐廳通過JSP頁(yè)面管理和維護(hù)各自的信息。與現(xiàn)有技術(shù)相比,本發(fā)明具有以下有益的技術(shù)效果:本發(fā)明所述基于移動(dòng)終端的餐廳推薦及點(diǎn)餐方法是一種基于移動(dòng)終端的餐廳推薦及點(diǎn)餐系統(tǒng),其通過移 動(dòng)終端、餐廳端與服務(wù)器端的配合完成向用戶推送周圍最近餐廳信息,用戶選擇餐廳進(jìn)行點(diǎn)菜、預(yù)訂餐桌座位以及餐廳維護(hù)餐廳數(shù)據(jù)的功能。本發(fā)明通過移動(dòng)終端應(yīng)用和服務(wù)器端應(yīng)用配合實(shí)現(xiàn)應(yīng)用整體功能,采取終端請(qǐng)求服務(wù)器端響應(yīng)的模式;移動(dòng)終端作為連接用戶與服務(wù)器中數(shù)據(jù)的橋梁,主要負(fù)責(zé)與用戶的交互工作,并將服務(wù)器返回的數(shù)據(jù)顯示出來;服務(wù)器端應(yīng)用主要負(fù)責(zé)處理數(shù)據(jù),響應(yīng)移動(dòng)終端的請(qǐng)求對(duì)數(shù)據(jù)庫(kù)進(jìn)行檢索和讀寫操作,并反饋移動(dòng)終端所需要的數(shù)據(jù)。本發(fā)明提供基于移動(dòng)終端的餐廳推薦及點(diǎn)餐方法,移動(dòng)終端通過向服務(wù)器發(fā)送請(qǐng)求能獲取并顯示餐廳的信息,同時(shí)能完成用戶的點(diǎn)菜和餐桌座位預(yù)訂功能。移動(dòng)終端調(diào)用GPS得到用戶的實(shí)時(shí)位置,為服務(wù)器的推送周圍餐廳信息提供經(jīng)緯度位置數(shù)據(jù)。得到了服務(wù)器推送的最近餐廳信息后,終端將餐廳信息以及用戶位置同時(shí)在地圖上面直觀的標(biāo)注出來,能夠幫助用戶最快地做出選擇。移動(dòng)終端能夠進(jìn)行用戶注冊(cè)、登陸和修改用戶信息等用戶業(yè)務(wù),并與服務(wù)器端交互這些信息。本發(fā)明提供基于移動(dòng)終端的餐廳推薦及點(diǎn)餐方法,餐廳端通過JSP頁(yè)面向服務(wù)器發(fā)送請(qǐng)求修改餐廳基本信息,和更新餐廳的動(dòng)態(tài)信息。本發(fā)明提供的基于移動(dòng)終端的餐廳推薦及點(diǎn)餐方法,服務(wù)器端聚合了大部分的餐廳信息,包括餐廳基本信息,菜譜信息和空余餐桌座位信息等,根據(jù)移動(dòng)終端發(fā)送的用戶實(shí)時(shí)位置信息,系統(tǒng)自動(dòng)向用戶推送最近的餐廳供用戶選擇。同時(shí)服務(wù)器端開啟后臺(tái)服務(wù)進(jìn)程對(duì)用戶生成的訂單有效性進(jìn)行監(jiān)視,若訂單超出有效時(shí)限則將訂單標(biāo)示為失效。服務(wù)器端維護(hù)管理著用戶的基本信息,響應(yīng)移動(dòng)終端的請(qǐng)求完成用戶的登錄注冊(cè)和修改等功能。本發(fā)明用戶通過GPS技術(shù)獲取當(dāng)前位置信息并通過互聯(lián)網(wǎng)向服務(wù)器發(fā)送請(qǐng)求查詢周邊較近餐廳信息,最后基于移動(dòng)終端與服務(wù)器的交互來完成點(diǎn)菜以及餐桌座位預(yù)訂功倉(cāng)泛。本發(fā)明克服了現(xiàn)有技術(shù)存在的問題,通過將很多餐廳的信息進(jìn)行聚合,包含了各個(gè)餐廳的基本信息、菜譜信息以及空余餐桌和座位信息。用戶只需移動(dòng)終端就可以完成對(duì)于大部分餐廳的預(yù)訂功能;系統(tǒng)調(diào)用GPS功能獲取用戶的實(shí)時(shí)位置,并根據(jù)此向用戶推送距離其最近的餐廳,同時(shí)在地圖上顯示出來,顯著的提高了就餐、訂餐的效率。


圖1是本發(fā)明的工作流程圖。圖2是本發(fā)明的結(jié)構(gòu)總體示意圖。圖3是移動(dòng)終端應(yīng)用不意圖。圖4是服務(wù)器端應(yīng)用功能結(jié)構(gòu)和請(qǐng)求響應(yīng)流程圖。
具體實(shí)施例方式下面結(jié)合附圖對(duì)本發(fā)明做進(jìn)一步說明,所述是對(duì)本發(fā)明的解釋而不是限定。一種基于移動(dòng)終端的餐廳推薦及點(diǎn)餐方法,包括以下步驟:基于GPS技術(shù)并通過無線網(wǎng)絡(luò)向移動(dòng)終端提供點(diǎn)餐服務(wù),移動(dòng)終端根據(jù)自帶GPS獲取用戶的實(shí)時(shí)位置信息,同時(shí)移動(dòng)終端向服務(wù)器端發(fā)送用戶的實(shí)時(shí)位置信息;服務(wù)器端接收移動(dòng)終端發(fā)送的用戶的實(shí)時(shí)位置信息,然后將所述實(shí)時(shí)位置信息與服務(wù)器端的數(shù)據(jù)庫(kù)中存儲(chǔ)的餐廳位置信息進(jìn)行比對(duì),然后根據(jù)用戶的實(shí)時(shí)位置與餐廳位置的距離選擇出備選餐廳,并按照用戶的選擇將備選餐廳的餐廳信息返回給移動(dòng)終端供用戶查看,餐廳信息包括在服務(wù)器端維護(hù)的餐廳的實(shí)時(shí)菜譜信息、餐桌座位使用信息和用戶訂單有效性信息;移動(dòng)終端調(diào)用Android的地圖功能將備選餐廳以可視化的地圖標(biāo)注形式或者以列表的形式顯示在移動(dòng)終端上,給用戶以直觀的感受,用戶通過移動(dòng)終端選擇、查看備選餐廳的餐廳信息,同時(shí),移動(dòng)終端根據(jù)用戶的選擇生成相應(yīng)的訂單,然后將訂單發(fā)送給服務(wù)器端,來完成預(yù)訂功能,訂單包括點(diǎn)菜和預(yù)訂餐桌及座位的請(qǐng)求;各餐廳管理人員通過餐廳端的JSP頁(yè)面對(duì)餐廳信息進(jìn)行維護(hù)并反饋給服務(wù)器端,維護(hù)包括修改餐廳基本信息,添加、刪除和修改菜譜信息,以及根據(jù)訂單狀態(tài)更新餐桌和座位使用狀態(tài)信息。服務(wù)器端接收移動(dòng)終端發(fā)來的用戶的實(shí)時(shí)位置信息,然后將所述實(shí)時(shí)位置信息解析為經(jīng)緯度坐標(biāo)值,將所述經(jīng)緯度坐標(biāo)值與數(shù)據(jù)庫(kù)中存在的餐廳經(jīng)緯度坐標(biāo)值進(jìn)行比對(duì),然后選擇出距離用戶較近的(比如以用戶為中心周圍I千米范圍內(nèi))一系列餐廳作為備選餐廳。移動(dòng)終端向服務(wù)器端發(fā)送注冊(cè)和登錄請(qǐng)求,然后根據(jù)服務(wù)器端返回的結(jié)果得到注冊(cè)或者登錄是否成功的 信息,從而繼續(xù)下一步的動(dòng)作。用戶登錄成功后,移動(dòng)終端向服務(wù)器端發(fā)送用戶的實(shí)時(shí)位置信息,同時(shí),用戶登錄成功后,可以通過移動(dòng)終端修改個(gè)人信息,進(jìn)行用戶訂單管理(查看、刪除訂單)等一系列的操作;在服務(wù)器端對(duì)于移動(dòng)終端的賬戶管理為:移動(dòng)終端向服務(wù)器端發(fā)送注冊(cè)或登錄的請(qǐng)求,服務(wù)器端處理移動(dòng)終端發(fā)送來的請(qǐng)求,進(jìn)行用戶業(yè)務(wù)的操作,將用戶信息保存在數(shù)據(jù)庫(kù),進(jìn)行判斷并返回動(dòng)作執(zhí)行成功或者失敗的響應(yīng);對(duì)于已經(jīng)登錄的用戶可以選擇是否修改個(gè)人信息并發(fā)送修改請(qǐng)求,服務(wù)器端處理移動(dòng)終端發(fā)來的修改請(qǐng)求,并返回是否修改成功的響應(yīng)。服務(wù)器端的數(shù)據(jù)庫(kù)中包括以下數(shù)據(jù)庫(kù)表:用戶信息表,保存用戶的基本賬號(hào)信息,包括用戶名,密碼,聯(lián)系方式等。餐廳基本信息表,保存所有的餐廳基本信息,包括餐廳名稱,餐廳地址,餐廳經(jīng)緯度坐標(biāo)信息以及餐廳的介紹信息等。餐廳菜譜分類表,保存了各個(gè)餐廳的菜譜分類信息,包括所屬餐廳編號(hào)(外鍵),分類名稱。餐廳菜單表,保存了各個(gè)餐廳的詳細(xì)的菜名信息,包括所屬菜譜分類編號(hào)(外鍵),菜名,菜價(jià)格,菜描述。餐廳餐桌信息表,保存了各個(gè)餐廳的餐桌使用情況,包括所屬餐廳編號(hào)(外鍵),餐桌編號(hào),餐桌使用狀態(tài) ,餐桌容納人數(shù)。餐廳座位信息表,保存了各個(gè)餐廳的餐桌所對(duì)應(yīng)的座位的使用情況,包括所屬餐桌編號(hào)(外鍵),座位使用狀態(tài)。用戶訂單表,保存了用戶的訂單基本信息,包括訂單編號(hào),訂單生成時(shí)間,所屬餐廳編號(hào)(外鍵),訂單是否有效。訂單詳細(xì)列表,保存了用戶分別對(duì)應(yīng)于各個(gè)訂單的詳細(xì)資源,包括所訂菜編號(hào),數(shù)
量,餐桌編號(hào),座位編號(hào)等。移動(dòng)終端接收服務(wù)器端返回的數(shù)據(jù)響應(yīng),并且在地圖上顯示用戶和周圍餐廳:為了能給用戶直觀的位置信息感受,移動(dòng)終端根據(jù)用戶的實(shí)時(shí)位置信息和服務(wù)器端返回的餐廳位置信息得到用戶和餐廳的經(jīng)緯度坐標(biāo)信息,然后調(diào)用Android系統(tǒng)的Google maps應(yīng)用,并通過Overlay (覆蓋層)技術(shù)將用戶和餐廳的位置信息標(biāo)注在地圖上,當(dāng)服務(wù)器端接收到移動(dòng)終端發(fā)來的用戶查看相應(yīng)餐廳信息的請(qǐng)求,例如周圍餐廳信息,餐廳的菜譜信息和餐廳的餐桌座位空余狀態(tài)信息等,服務(wù)器端根據(jù)用戶的請(qǐng)求參數(shù)利用相應(yīng)的HQL語(yǔ)言檢索數(shù)據(jù)庫(kù),然后將從數(shù)據(jù)庫(kù)中檢索出的數(shù)據(jù)封裝成JSON格式的數(shù)據(jù),然后將JSON格式的數(shù)據(jù)以響應(yīng)用戶請(qǐng)求的方式發(fā)送給移動(dòng)終端,移動(dòng)終端通過解析JSON格式的數(shù)據(jù)得到用戶需要查看的餐廳信息,即在數(shù)據(jù)庫(kù)中檢索的信息,并將這些餐廳信息以列表的形式展現(xiàn)出來。移動(dòng)終端訂單的生成:用戶通過移動(dòng)終端查看備選餐廳信息,以及各備選餐廳的菜譜和空余餐桌座位信息,然后選擇其中一個(gè)備選餐廳進(jìn)行就餐,移動(dòng)終端首先彈出對(duì)話框確認(rèn)用戶是否選擇該備選餐廳,得到用戶確認(rèn)后,然后移動(dòng)終端生成訂單并發(fā)送給服務(wù)器端,訂單包括用戶編號(hào),餐廳編號(hào)和訂單生成時(shí)間,服務(wù)器端接收到訂單后將相應(yīng)的數(shù)據(jù)存入數(shù)據(jù)庫(kù)的用戶訂單表中,同時(shí)服務(wù)器端開啟后臺(tái)Service,即啟動(dòng)另外一個(gè)用于計(jì)時(shí)的線程,即從訂單生成時(shí)開始計(jì)時(shí),自訂單生成超過一小時(shí)且用戶沒有前往餐廳,則服務(wù)器端自動(dòng)將該訂單設(shè)置為無效狀態(tài)(這個(gè)動(dòng)作是由服務(wù)器內(nèi)部的線程自動(dòng)完成的,自用戶生成訂單后服務(wù)器會(huì)時(shí)刻開啟一個(gè)線程用于計(jì)時(shí)和修改用戶訂單有效性的狀態(tài))。移動(dòng)終端的點(diǎn)菜以及餐桌座位的預(yù)訂功能:用戶首先通過移動(dòng)終端向服務(wù)器端發(fā)送訂單,然后在通過移動(dòng)終端瀏覽菜譜的同時(shí),點(diǎn)擊菜譜列表中的選項(xiàng)即會(huì)彈出對(duì)話框提示選擇是否將該菜加入到訂單中,同時(shí)輸入需要的份數(shù),然后點(diǎn)擊確認(rèn)按鈕向服務(wù)器端發(fā)送數(shù)據(jù),服務(wù)器接收請(qǐng)求,將數(shù)據(jù)存入用戶訂單詳細(xì)列表中;與之類似的是用戶選擇餐桌和座位的步驟,用戶同樣是在瀏覽餐廳空余餐桌和座位的同時(shí)選擇是否預(yù)訂餐桌和座位,并向服務(wù)器端發(fā)送數(shù)據(jù),服務(wù)器端將用戶的預(yù)訂餐桌和座位的信息存入訂單詳細(xì)列表中。移動(dòng)終端發(fā)送請(qǐng)求使用Http協(xié)議實(shí)現(xiàn)移動(dòng)終端到服務(wù)器端的通信,由移動(dòng)終端解析用戶的操作、翻譯成Http請(qǐng)求,服務(wù)器端通過Struts2進(jìn)行請(qǐng)求攔截,并執(zhí)行相應(yīng)的業(yè)務(wù);對(duì)于用戶業(yè)務(wù)數(shù)據(jù)部分使用HQL語(yǔ)句進(jìn)行用戶通過用戶名的查找實(shí)例。所述的移動(dòng)終端與用戶交互界面包括用戶登錄界面,用戶注冊(cè)界面,主菜單界面,餐廳信息查看界面,餐廳服務(wù)菜單界面,餐廳菜譜查看界面,餐廳空余餐桌空余座位查看界面等。用戶登陸界面,用戶在該界面通過輸入用戶名及密碼登陸系統(tǒng),同時(shí)該界面有注冊(cè)按鈕,點(diǎn)擊注冊(cè)按鈕則進(jìn)入注冊(cè)界面。點(diǎn)擊退出程序按鈕則退出程序。用戶注冊(cè)界面,用戶在該界面完成注冊(cè)功能,輸入用戶名,密碼及重復(fù)密碼,聯(lián)系方式等,將這些數(shù)據(jù)封裝起來并發(fā)送至服務(wù)器,服務(wù)器對(duì)數(shù)據(jù)進(jìn)行處理后存入用戶數(shù)據(jù)表,即完成用戶注冊(cè)功能?!ぶ鞑藛谓缑?,用戶登錄成功后即進(jìn)入主菜單界面,可以選擇以列表形式查看周圍餐廳信息同時(shí)完成訂單生成以及提前訂菜,預(yù)訂餐桌座位等操作;也可以選擇以地圖的形式查看周圍餐廳信息,得到直觀的印象;在主菜單界面,用戶可以修改個(gè)人信息,在彈出的對(duì)話框中輸入修改后的信息,請(qǐng)求服務(wù)器完成個(gè)人信息的修改操作。餐廳信息查看界面,在這個(gè)界面用戶能夠看到周圍的餐廳信息以列表的形式展現(xiàn)出來,包括餐廳名稱、餐廳地址等信息,分別點(diǎn)擊則能進(jìn)入到各個(gè)餐廳的服務(wù)菜單界面。餐廳服務(wù)菜單界面,用戶在該界面能夠完成查看菜譜,空余餐桌座位信息,以及點(diǎn)菜,預(yù)訂餐桌座位等動(dòng)作。餐廳菜譜查看界面,用戶在該界面能夠查看各個(gè)餐廳菜譜分類,以及詳細(xì)的菜譜信息,包括價(jià)格,介紹,菜名等。餐廳空余餐桌空余座位查看界面,用戶在該界面能夠查看各個(gè)餐廳的實(shí)時(shí)餐桌和座位的使用情況,同時(shí)還能夠預(yù)訂空余餐桌和座位。被預(yù)定的餐桌和座位則將被設(shè)置狀態(tài)為使用中。餐廳端對(duì)于餐廳基本信息和動(dòng)態(tài)信息的維護(hù):服務(wù)器端在取得餐廳授權(quán)后通過數(shù)據(jù)庫(kù)保存餐廳信息,每個(gè)餐廳通過JSP頁(yè)面管理和維護(hù)各自的信息,包括修改餐廳基本信息,增加、刪除和修改菜譜信息以及實(shí)時(shí)更新餐廳餐桌和座位使用狀態(tài)信息等。實(shí)施例
一種基于移動(dòng)終端的餐廳推薦及點(diǎn)餐系統(tǒng),能夠根據(jù)用戶的實(shí)時(shí)位置為其推送周圍較近的餐廳,用戶在這些餐廳中間做出選擇并完成點(diǎn)菜和餐桌座位的預(yù)訂。分為移動(dòng)終端、餐廳端和服務(wù)器端這三部分配合以達(dá)到最終效果,移動(dòng)終端采用Android平臺(tái),餐廳端采用JSP網(wǎng)頁(yè)技術(shù),服務(wù)器端采用的是Struts2+Hibernate架構(gòu)的java web技術(shù)。參見圖1,所述基于移動(dòng)終端的餐廳推薦及點(diǎn)餐系統(tǒng),包括以下幾個(gè)步驟:餐廳端通過JSP網(wǎng)頁(yè)向服務(wù)器發(fā)送請(qǐng)求對(duì)餐廳的數(shù)據(jù)進(jìn)行維護(hù),服務(wù)器攔截請(qǐng)求,并分別處理請(qǐng)求數(shù)據(jù),采用HQL語(yǔ)言對(duì)餐廳數(shù)據(jù)庫(kù)進(jìn)行檢索,增加和更新操作。移動(dòng)終端通過Http-Post的方式向服務(wù)器發(fā)送請(qǐng)求,請(qǐng)求包括登錄注冊(cè),修改,以及查看餐廳信息,生成訂單等。服務(wù)器端同樣攔截終端請(qǐng)求,并對(duì)請(qǐng)求數(shù)據(jù)進(jìn)行處理,返回響應(yīng)給移動(dòng)終端。服務(wù)器端分別處理餐廳端和移動(dòng)終端的請(qǐng)求,完成對(duì)餐廳信息的維護(hù);驗(yàn)證用戶注冊(cè)登錄信息,根據(jù)終端的業(yè)務(wù)請(qǐng)求返回相應(yīng)的數(shù)據(jù),實(shí)現(xiàn)了向用戶推送餐廳信息以及用戶預(yù)訂功能;同時(shí)服務(wù)器還實(shí)時(shí)地維護(hù)著用戶的訂單,從用戶下單開始計(jì)時(shí),超出時(shí)延限則將訂單設(shè)置為無效狀態(tài)。參見圖2,餐廳端通過JSP網(wǎng)頁(yè)向服務(wù)器發(fā)送數(shù)據(jù)來維護(hù)餐廳的信息,包括餐廳基本信息(餐廳名稱,餐廳地址,餐廳介紹和餐廳經(jīng)緯度坐標(biāo)等);餐廳動(dòng)態(tài)信息,包括(餐廳菜譜信息,餐廳實(shí)時(shí)餐桌和座位的使用情況)。當(dāng)餐廳的菜譜發(fā)生變化時(shí),餐廳向服務(wù)器發(fā)送請(qǐng)求,服務(wù)器接收餐廳數(shù)據(jù)對(duì)菜譜數(shù)據(jù)庫(kù)進(jìn)行修改。類似的,餐廳的實(shí)時(shí)餐桌和座位使用情況也由餐廳服務(wù)人員進(jìn)行統(tǒng)計(jì)后發(fā)送至服務(wù)器,服務(wù)器對(duì)相應(yīng)的數(shù)據(jù)表進(jìn)行更新。服務(wù)器與移動(dòng)終端的交互過程由圖2來表示,系統(tǒng)的工作方式可以描述為:對(duì)于服務(wù)器端,主要功能可以分為以下幾個(gè)部分,1、接收終端請(qǐng)求實(shí)現(xiàn)用戶的注冊(cè)登錄即修改個(gè)人信息功·能;2、接收終端用戶實(shí)時(shí)位置數(shù)據(jù)并與數(shù)據(jù)庫(kù)中的餐廳位置數(shù)據(jù)進(jìn)行比較推送較近的餐廳至終端;3、當(dāng)用戶訂單生成后,開啟后臺(tái)服務(wù)進(jìn)程進(jìn)行計(jì)時(shí),當(dāng)訂單超出時(shí)延限后,設(shè)置訂單狀態(tài)為失效;4、接收移動(dòng)終端的點(diǎn)菜,預(yù)訂餐桌座位的請(qǐng)求,并將請(qǐng)求數(shù)據(jù)存入訂單詳細(xì)列表中。對(duì)于移動(dòng)終端來說,主要的作用是與用戶進(jìn)行交互,因此其核心部分是各種界面,對(duì)于本系統(tǒng)而言主要包含以下幾個(gè)界面,參見圖3:用戶注冊(cè)登錄界面,顧名思義,通過該界面用戶能夠完成登錄系統(tǒng)以及注冊(cè)成為會(huì)員的操作。程序主菜單界面,即用戶登錄成功后進(jìn)入的界面,在該界面用戶能夠直觀的了解到本系統(tǒng)的主要功能:以列表形式顯示周圍餐廳信息及預(yù)訂,以地圖形式顯示用戶及餐廳信息,用戶訂單管理,用戶個(gè)人信息修改,返回主菜單。周圍餐廳查看界面,該界面由程序主菜單進(jìn)入,在該界面里用列表的形式顯示了距離用戶較近的所有餐廳列表,包括餐廳名稱,餐廳地址等信息。餐廳服務(wù)信息界面,該界面由餐廳查看界面進(jìn)入,用戶點(diǎn)擊其中某個(gè)餐廳后即進(jìn)入到該餐廳的服務(wù)信息界面。在該界面里用戶能夠看到餐廳所能夠提供的服務(wù),包括菜單查詢和點(diǎn)菜、空余餐桌座位查詢和預(yù)訂、選擇本餐廳并且生成訂單。菜單查詢和點(diǎn)菜界面,該界面由餐廳服務(wù)信息界面進(jìn)入,在該界面里用戶能夠看到餐廳的菜譜分類情況,點(diǎn)擊其中一個(gè)分類則進(jìn)入到菜譜詳細(xì)界面,包括菜名,價(jià)格,描述等。用戶在瀏覽詳細(xì)菜譜的同時(shí)點(diǎn)擊某一項(xiàng)即會(huì)彈出對(duì)話框,提示用戶是否選擇該菜,用戶輸入份數(shù)后點(diǎn)擊提交按鈕后該菜就會(huì)加入到用戶的訂單詳細(xì)列表中,從而完成了點(diǎn)菜操作??沼嗖妥雷徊樵兒皖A(yù)訂界面,該界面由餐廳服務(wù)信息界面進(jìn)入,在該界面里,用戶能夠看到餐廳的實(shí)時(shí)餐桌和座位的使用情況。同樣的,用戶點(diǎn)擊相應(yīng)的座位則會(huì)彈出對(duì)話框,若該座位正在被使用中或者已被提前預(yù)定,則會(huì)提示用戶該座位目前不可用;若該座位目前空閑則提示用戶是否將預(yù)訂該座位,當(dāng)用戶選擇預(yù)訂后,服務(wù)器接收請(qǐng)求,并將該座位加入到用戶訂單詳細(xì)列表中,同時(shí)修改座位表中的狀態(tài)為不可用。除了以上界面外,還有用戶訂單的生成過程,在餐廳服務(wù)信息界面里點(diǎn)擊選擇本餐廳并且生成訂單選項(xiàng)后,服務(wù)器則會(huì)為該用戶生成一個(gè)訂單,訂單里包含了用戶編號(hào),餐廳編號(hào),訂單生成時(shí)間等。同時(shí),服務(wù)器開啟后臺(tái)服務(wù)進(jìn)程開始計(jì)時(shí),當(dāng)訂單生成超過規(guī)定時(shí)間后用戶未能履行訂單,則將訂單狀態(tài)設(shè)置為無效狀態(tài),并且將用戶訂單詳細(xì)列表中的預(yù)訂資源釋放。參見圖4,服務(wù)器端主要用來處理數(shù)據(jù)業(yè)務(wù),因此服務(wù)器端核心為用戶數(shù)據(jù),餐廳數(shù)據(jù),用戶訂單,用戶訂單詳細(xì)列表的數(shù)據(jù)庫(kù)。下面將詳細(xì)介紹本系統(tǒng)中所使用到的數(shù)據(jù)表:用戶數(shù)據(jù)表,該表記錄了用戶編號(hào),用戶名,用戶密碼,用戶聯(lián)系方式等信息。該表主要的作用在于服務(wù)器驗(yàn)證用戶登錄,以及作為用戶訂單表的關(guān)聯(lián)表。餐廳基本數(shù)據(jù)表,該表記錄了餐廳編號(hào),餐廳名稱,餐廳地理位置,餐廳的經(jīng)緯度坐標(biāo),餐廳介紹等數(shù)據(jù)。餐廳編號(hào)是該表的主鍵同時(shí)也是餐廳菜譜信息表,餐廳餐桌座位表和訂單表的外鍵。餐廳的經(jīng)緯度坐標(biāo)是服務(wù)器來向用戶推送較近餐廳的一個(gè)重要指標(biāo),月艮務(wù)器根據(jù)用戶的經(jīng)緯度坐標(biāo)值和餐廳經(jīng)緯度坐標(biāo),從而列出距離用戶較近的一系列餐廳。餐廳菜譜分類表,該表記錄了各個(gè)餐廳的菜譜分類,例如餐廳能夠提供的種類有涼菜、炒菜、湯和甜點(diǎn)等。餐廳菜譜詳細(xì)列表,該表關(guān)聯(lián)菜譜分類表屬于其中的某一類,記錄了菜名,價(jià)格,介紹等信息。餐廳餐桌信息表,該表記錄了各個(gè)餐廳的餐桌的信息,包括餐桌編號(hào),餐桌所屬餐廳(外鍵),餐桌容納人數(shù),餐桌使用狀態(tài)。餐廳座位信息表,該表記錄了各個(gè)餐廳的座位信息,包括座位編號(hào),座位所屬餐桌編號(hào)(外鍵),座位使用狀態(tài)。用戶訂單表,該表包括用戶編號(hào),餐廳編號(hào),訂單生成時(shí)間,訂單狀態(tài)。用戶訂單詳細(xì)列表,該表包括所屬訂單編號(hào)(外鍵),菜名,份數(shù),餐桌編號(hào),座位編號(hào)。根據(jù)上述數(shù)據(jù)表下面將詳細(xì)介紹服務(wù)器基于這些數(shù)據(jù)表的主要業(yè)務(wù)處理過程,如圖4所示:
服務(wù)器向終端推送餐廳信息過程:首先用戶在程序主菜單界面里選擇查看周圍餐廳信息,終端調(diào)用GPS技術(shù)得到用戶的實(shí)時(shí)位置信息,向服務(wù)器發(fā)送位置信息及查看請(qǐng)求,服務(wù)器攔截終端請(qǐng)求,將用戶的實(shí)時(shí)經(jīng)緯度信息與數(shù)據(jù)庫(kù)中餐廳基本信息表中存儲(chǔ)的餐廳經(jīng)緯度坐標(biāo)進(jìn)行比較,并選出較近的一系列餐廳,并將這些餐廳的數(shù)據(jù)封裝成JSON數(shù)據(jù)返回給移動(dòng)終端,終端通過解析JSON數(shù)據(jù)得到了相應(yīng)的餐廳數(shù)據(jù)信息,并將這些信息以列表的形式顯示出來。與之對(duì)應(yīng)的是調(diào)用地圖應(yīng)用并標(biāo)注出用戶及餐廳,該功能的獲取較近餐廳數(shù)據(jù)的過程與前面類似,只是顯示方法不同,調(diào)用Google Maps應(yīng)用,并且使用OverLay技術(shù)根據(jù)用戶和餐廳的經(jīng)緯度坐標(biāo)值,將用戶和餐廳以符號(hào)的形式標(biāo)注出來。通過這種顯示方式能夠給用戶帶來更加直觀的感受,縮短用戶選擇餐廳的時(shí)間。用戶訂單生成過程:用戶選擇了一個(gè)餐廳后,進(jìn)入該餐廳的服務(wù)信息界面,并且點(diǎn)擊生成訂單,該訂單包括用戶編號(hào),餐廳編號(hào)以及下單時(shí)間和訂單狀態(tài)信息。接著用戶開始點(diǎn)菜以及預(yù)訂餐桌和座位,這兩步不分先后,可以先點(diǎn)菜也可以先預(yù)訂餐桌座位。點(diǎn)菜時(shí),用戶在瀏覽餐廳菜譜的同時(shí),可以單擊菜譜列表中的某一項(xiàng),則會(huì)彈出對(duì)話框提示用戶輸入需要的份數(shù)并確認(rèn)用戶是否提交選擇,當(dāng)用戶確認(rèn)完畢后,終端將用戶的選擇發(fā)送至服務(wù)器端,服務(wù)器端將數(shù)據(jù)存入訂單詳細(xì)列表中。與點(diǎn)菜功能相類似的是餐桌和座位的預(yù)訂功能,用戶在瀏覽某個(gè)餐廳的空余餐桌和座位信息時(shí),單擊列表中的某一項(xiàng)則會(huì)彈出對(duì)話框提示用戶是否選擇該資源,用戶確認(rèn)后發(fā)送請(qǐng)求至服務(wù)器,服務(wù)器接收相關(guān)數(shù)據(jù)并存入訂單詳細(xì)列表中。當(dāng)用戶的訂單超出時(shí)延限而被判定為無效時(shí),服務(wù)器則會(huì)將用戶選擇的餐桌及座位資源重新釋放,即顯示為可用狀態(tài)。接收用戶請(qǐng)求功能。終端上的用戶業(yè)務(wù)都是通過發(fā)送請(qǐng)求來完成的,在服務(wù)器端應(yīng)至少完成三個(gè)接口:注冊(cè)接口、登錄接口、修改用戶信息接口。當(dāng)收到這些請(qǐng)求時(shí),用戶就響應(yīng)的進(jìn)行對(duì)數(shù)據(jù)庫(kù)用戶表的操作,實(shí)現(xiàn)用戶業(yè)務(wù)。終端發(fā)送請(qǐng)求用到的是Http-Post協(xié)議實(shí)現(xiàn)手機(jī)終端到服務(wù)器的通信,由終端解析用戶的操作,翻譯成Http-Post請(qǐng)求,服務(wù)器端通過Struts2進(jìn)行請(qǐng)求攔截,并執(zhí)行響應(yīng)的業(yè)務(wù)。修改用戶配置時(shí)需要注意的是,多用戶查找自己在數(shù)據(jù)庫(kù)中的實(shí)例并多次修改數(shù)據(jù)庫(kù)用戶表時(shí)會(huì)帶來數(shù)據(jù)庫(kù)回滾的問題。那么對(duì)于用戶業(yè)務(wù)數(shù)據(jù)部分,不 能使用事務(wù)性管理提交數(shù)據(jù),必須使用HQL代碼進(jìn)行用戶通過用戶名的查找實(shí)例。
權(quán)利要求
1.一種基于移動(dòng)終端的餐廳推薦及點(diǎn)餐方法,其特征在于,包括以下步驟: 移動(dòng)終端根據(jù)自帶GPS獲取用戶的實(shí)時(shí)位置信息,同時(shí)移動(dòng)終端向服務(wù)器端發(fā)送用戶的實(shí)時(shí)位置信息; 服務(wù)器端接收移動(dòng)終端發(fā)送的用戶的實(shí)時(shí)位置信息,然后將所述實(shí)時(shí)位置信息與服務(wù)器端的數(shù)據(jù)庫(kù)中存儲(chǔ)的餐廳位置信息進(jìn)行比對(duì),然后根據(jù)用戶的實(shí)時(shí)位置與餐廳位置的距離選擇出備選餐廳,并按照用戶的選擇將備選餐廳的餐廳信息返回給移動(dòng)終端供用戶查看,餐廳信息包括在服務(wù)器端維護(hù)的餐廳的實(shí)時(shí)菜譜信息、餐桌座位使用信息和用戶訂單有效性信息; 備選餐廳以地圖標(biāo)注形式或者以列表的形式顯示在移動(dòng)終端上,用戶通過移動(dòng)終端選擇、查看備選餐廳的餐廳信息,同時(shí),移動(dòng)終端根據(jù)用戶的選擇生成相應(yīng)的訂單,然后將訂單發(fā)送給服務(wù)器端,訂單包括點(diǎn)菜和預(yù)訂餐桌及座位的請(qǐng)求; 各餐廳管理人員通過餐廳端的JSP頁(yè)面對(duì)餐廳信息進(jìn)行維護(hù)并反饋給服務(wù)器端,維護(hù)包括修改餐廳基本信息,添加、刪除和修改菜譜信息,以及根據(jù)訂單狀態(tài)更新餐桌和座位使用狀態(tài)信息。
2.如權(quán)利要求1所述一種基于移動(dòng)終端的餐廳推薦及點(diǎn)餐方法,其特征在于: 服務(wù)器端接收移動(dòng)終端發(fā)來的用戶的實(shí)時(shí)位置信息,然后將所述實(shí)時(shí)位置信息解析為經(jīng)緯度坐標(biāo)值,將所述經(jīng)緯度坐標(biāo)值與數(shù)據(jù)庫(kù)中存在的餐廳經(jīng)緯度坐標(biāo)值進(jìn)行比對(duì),然后選擇出距離用戶較近的一系列餐廳作為備選餐廳。
3.如權(quán)利要求1所述一種基于移動(dòng)終端的餐廳推薦及點(diǎn)餐方法,其特征在于: 移動(dòng)終端向服務(wù)器端發(fā)送注冊(cè)和登錄請(qǐng)求,然后根據(jù)服務(wù)器端返回的結(jié)果得到注冊(cè)或者登錄是否成功的信息,用戶登錄成功后,移動(dòng)終端向服務(wù)器端發(fā)送用戶的實(shí)時(shí)位置信息。
4.如權(quán)利要求1所述一種基于移動(dòng)終端的餐廳推薦及點(diǎn)餐方法,其特征在于: 移動(dòng)終端根據(jù)用戶的實(shí)時(shí)位置信息和服務(wù)器端返回的餐廳位置信息得到用戶和餐廳的經(jīng)緯度坐標(biāo)信息,然后將用戶和餐廳的位置信息標(biāo)注在地圖上,當(dāng)服務(wù)器端接收到移動(dòng)終端發(fā)來的用戶查看相應(yīng)餐廳信息的請(qǐng)求,服務(wù)器端根據(jù)用戶的請(qǐng)求參數(shù)利用相應(yīng)的HQL語(yǔ)言檢索數(shù)據(jù)庫(kù),然后將從數(shù)據(jù)庫(kù)中檢索出的數(shù)據(jù)封裝成JSON格式的數(shù)據(jù),然后將JSON格式的數(shù)據(jù)以響應(yīng)用戶請(qǐng)求的方式發(fā)送給移動(dòng)終端,移動(dòng)終端通過解析JSON格式的數(shù)據(jù)得到用戶需要查看的餐廳信息,并將餐廳信息以列表的形式展現(xiàn)出來。
5.如權(quán)利要求1所述一種基于移動(dòng)終端的餐廳推薦及點(diǎn)餐方法,其特征在于: 用戶通過移動(dòng)終端查看備選餐廳信息,以及各備選餐廳的菜譜和空余餐桌座位信息,然后選擇其中一個(gè)備選餐廳進(jìn)行就餐,移動(dòng)終端生成訂單并發(fā)送給服務(wù)器端,訂單包括用戶編號(hào),餐廳編號(hào)和訂單生成時(shí)間,服務(wù)器端接收到訂單后將相應(yīng)的數(shù)據(jù)存入數(shù)據(jù)庫(kù)中,同時(shí)服務(wù)器端開啟另外一個(gè)用于計(jì)時(shí)的線程,自訂單生成超過設(shè)定時(shí)間且用戶沒有前往餐廳則服務(wù)器端自動(dòng)將該訂單設(shè)置為無效狀態(tài)。
6.如權(quán)利要求5所述一種基于移動(dòng)終端的餐廳推薦及點(diǎn)餐方法,其特征在于: 用戶首先通過移動(dòng)終端向服務(wù)器端發(fā)送訂單,然后在通過移動(dòng)終端瀏覽菜譜的同時(shí),點(diǎn)擊菜譜列表選擇是否將菜加入到訂單中,然后向服務(wù)器端發(fā)送數(shù)據(jù),服務(wù)器端將數(shù)據(jù)存入用戶訂單詳細(xì)列表中;用戶在瀏覽餐廳空余餐桌和座位的同時(shí)選擇是否預(yù)訂餐桌和座位,并向服務(wù)器端發(fā)送數(shù)據(jù),服務(wù)器端將用戶的預(yù)訂餐桌和座位的信息存入訂單詳細(xì)列表中。
7.如權(quán)利要求1所述一種基于移動(dòng)終端的餐廳推薦及點(diǎn)餐方法,其特征在于:移動(dòng)終端使用Http協(xié)議實(shí)現(xiàn)移動(dòng)終端到服務(wù)器端的通信,由移動(dòng)終端解析用戶的操作、翻譯成Http請(qǐng)求,服務(wù)器端通過Struts2進(jìn)行請(qǐng)求攔截,并執(zhí)行相應(yīng)的業(yè)務(wù)。
8.如權(quán)利要求1所述一種基于移動(dòng)終端的餐廳推薦及點(diǎn)餐方法,其特征在于: 服務(wù)器端在取得餐廳授權(quán)后通過數(shù)據(jù)庫(kù)保存餐廳信息,每個(gè)餐廳通過JSP頁(yè)面管理和維護(hù)各自的信息。 ·
全文摘要
本發(fā)明公開了一種基于移動(dòng)終端的餐廳推薦及點(diǎn)餐方法,通過餐廳端、移動(dòng)終端與服務(wù)器端的配合,實(shí)現(xiàn)了對(duì)于大部分餐廳信息的整合,并且根據(jù)用戶需求向其推送距其最近的餐廳供用戶選擇;同時(shí)用戶能夠選擇其中某個(gè)餐廳完成點(diǎn)菜和預(yù)訂餐桌座位的功能,顯著的提高了就餐、訂餐的效率。
文檔編號(hào)G06F17/30GK103246720SQ20131015646
公開日2013年8月14日 申請(qǐng)日期2013年4月28日 優(yōu)先權(quán)日2013年4月28日
發(fā)明者李凡, 王明慧, 張丹陽(yáng), 李娜 申請(qǐng)人:西安交通大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
江西省| 泽库县| 义马市| 汝南县| 应城市| 吴川市| 鹿泉市| 贵港市| 伊春市| 仁怀市| 左云县| 日照市| 新营市| 汝阳县| 嘉鱼县| 宣恩县| 禹城市| 开化县| 桂阳县| 溆浦县| 长垣县| 文山县| 南平市| 松阳县| SHOW| 广灵县| 江陵县| 友谊县| 右玉县| 健康| 安丘市| 彩票| 郎溪县| 南木林县| 永新县| 武宁县| 盐池县| 上蔡县| 西华县| 武穴市| 祁阳县|