版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
PAGE2PAGE10公司案例題目:無線點餐系統(tǒng)的設計與實現(xiàn)目錄TOC\o"1-3"\h\u17176無線點餐系統(tǒng)的設計與實現(xiàn) 230410第一章緒論 3222741.1研究的背景及意義 331841第二章設計原理和方法 3210832.1架構(gòu)概述 3301042.2關鍵技術簡介 4302262.3開發(fā)工具及環(huán)境 5268832.4應用平臺 623106第三章系統(tǒng)需求分析 6293803.1需求分析 617708第四章系統(tǒng)概要設計 761694.1模塊的劃分與功能設計 7100084.2功能模塊的設計 7287334.3數(shù)據(jù)庫結(jié)構(gòu)的設計 8189664.4連接數(shù)據(jù)庫的設計與實現(xiàn) 95534第五章系統(tǒng)實現(xiàn) 10319965.1主菜單界面 10106115.1.1功能描述 10315025.1.2登錄界面的設計 10177075.1.3功能描述 1077355.1.4界面設計 11205745.1.5功能實現(xiàn)及關鍵代碼 1160755.2更新界面 12100095.2.1功能描述 1230205.2.2界面設計 1371055.2.3功能實現(xiàn)及關鍵代碼 1336845.3注銷與結(jié)賬界面 14309505.3.1功能描述 14133935.3.2界面設計 1527365.3.3功能實現(xiàn)及關鍵代碼 1516736結(jié)論 1613529參考文獻 17
無線點餐系統(tǒng)的設計與實現(xiàn)摘要:今天我們生活在充滿數(shù)字的時代,隨著GPRS、CDMA1X、藍牙、WLAN等無線技術的突飛猛進,移動生活、移動辦公逐漸由概念轉(zhuǎn)為現(xiàn)實,信息數(shù)據(jù)隨手可及。特別是廣域無線數(shù)據(jù)傳輸技術的成熟,運營商的大力推廣,WLAN的應用日漸普及,逐步滲透到金融、公安、教育、物流、商貿(mào)等行業(yè)中,并日益影響到人們生活的方方面面,種種夢想化為現(xiàn)實成為了可能。對于傳統(tǒng)的餐飲業(yè)而言,也在潛移默化中感受到無線網(wǎng)絡的無窮魅力。通常情況,餐廳點餐、送單、結(jié)賬都采用人工傳遞,這種工作流程效率低下,而且在就餐高峰期人員繁雜的情況下,服務員在快速手寫點餐、人工送單中可能還會增加誤操作的幾率,造成客人投訴,影響到服務質(zhì)量,甚至有損餐廳的美譽度。為了解決這個問題,新鄉(xiāng)逗號網(wǎng)絡公司為一些規(guī)模較大的酒樓餐廳開始考慮利用這種最為先進、最具時尚潮流的網(wǎng)絡技術來建設一套靈活、快捷的信息管理系統(tǒng),以優(yōu)化管理流程,使酒店的服務和管理得到實質(zhì)性的提升,提高品牌形象和行業(yè)核心競爭力。本設計主要講述了新鄉(xiāng)逗號網(wǎng)絡技術有限公司設計點餐系統(tǒng)的基本功能和數(shù)據(jù)庫的設計方法。設計最終達成了包括用戶登錄,點菜管理功能模塊,點菜管理功能模塊、并臺管理功能模塊、轉(zhuǎn)臺管理功能模塊、查臺管理功能模塊、結(jié)臺管理功能模塊、更新管理功能模塊、注銷功能模塊、設置功能模塊等。并且系統(tǒng)能夠正常運行,各個界面交互性較好。在系統(tǒng)規(guī)劃中先后用數(shù)據(jù)流程圖,系統(tǒng)功能結(jié)構(gòu)圖分析了系統(tǒng)所需的各種數(shù)據(jù),詳細的展示了系統(tǒng)的各個功能模塊,并給出了主要功能運用界面圖。關鍵詞:WLAN;ANDROID;無線點餐第一章緒論1.1研究的背景及意義餐飲傳統(tǒng)的點菜方式是純?nèi)斯げ僮鳎煞諉T記錄顧客點的菜,在具體工作中容易出現(xiàn)以下問題:手寫單據(jù)字跡潦草從而導致上錯菜、傳菜分單出錯現(xiàn)象嚴重、加菜和查賬程序較繁瑣。處理特殊口味有遺漏和偏差、客人催菜遺忘現(xiàn)象較頻繁、計算賬單易出錯、不方便人員管理等等。為了解決這個問題,新鄉(xiāng)逗號網(wǎng)絡公司開發(fā)的無線點餐模式應運而生。它不僅可以有效地提高餐飲業(yè)的工作效率,更可以規(guī)范服務體系,提高整體服務質(zhì)量和管理水平,并為規(guī)?;?jīng)營提供了堅實的技術基礎。我們生活在一個充斥著數(shù)字技術的世界里,數(shù)字技術幾乎侵入到我們生活的每個細節(jié)。點餐系統(tǒng)在使用上不及Wi-Fi點餐系統(tǒng)便利:服務員依然使用手持終端為顧客點餐,當消費者點完餐后,服務員將存儲在手持終端內(nèi)的點餐信息,對準布置在餐廳各個位置的紅外接收端進行發(fā)射,接收端會將點餐信息通過網(wǎng)線傳送到前臺計算機。前臺計算機會對點餐信息進行分類處理,然后將點餐信息分別發(fā)送給收銀臺和廚房。第二章設計原理和方法2.1架構(gòu)概述新鄉(xiāng)逗號網(wǎng)絡技術公司的設計主要講述了無線點餐系統(tǒng)的基本功能和基于Android平臺的軟件開發(fā)、數(shù)據(jù)庫的設計方法。設計最終達成了用戶登錄、點菜管理、桌位管理,收費管理,等點餐系統(tǒng)的基本功能。并且系統(tǒng)能夠正常運行,各個頁面交互性較好。在整個設計中基本運用基礎的Android進行功能編程,也運用到了一些前端控件來控制輸入信息,對輸入信息進行驗證,通過JDBC連接數(shù)據(jù)庫。在系統(tǒng)規(guī)劃中先后用數(shù)據(jù)流程圖、系統(tǒng)功能結(jié)構(gòu)圖分析了系統(tǒng)所需的各種數(shù)據(jù),詳細的展現(xiàn)了系統(tǒng)的各個功能模塊并給出了主要功能運行界面圖。該點餐系統(tǒng)目前已有比較完善的管理與使用功能。開發(fā)點餐系統(tǒng)是為了滿足酒店管理的需要,以現(xiàn)代化的創(chuàng)新思維模式去工作。無線點餐系統(tǒng)主要用到的采用模型-視圖-控制器MVC架構(gòu)的設計模式。MVC架構(gòu)是"Model-View-Controller"的縮寫,中文翻譯為"模型-視圖-控制器"。MVC應用程序總是由這三個部分組成。Event(事件)導致Controller改變Model或View,或者同時改變兩者。只要Controller改變了Models的數(shù)據(jù)或者屬性,所有依賴的View都會自動更新。類似的,只要Controller改變了View,View會從潛在的Model中獲取數(shù)據(jù)來刷新自己。MVC架構(gòu)最早是smalltalk語言研究團提出的,應用于用戶交互應用程序中。smalltalk語言和java語言有很多相似性,都是面向?qū)ο笳Z言,很自然的SUN在petstore(寵物店)事例應用程序中就推薦MVC架構(gòu)作為開發(fā)Web應用的架構(gòu)模式。MVC架構(gòu)是一種架構(gòu),其實需要其他模式協(xié)作完成。在J2EE模式目錄中,通常采用servicetoworker模式實現(xiàn),而servicetoworker模式可由集中控制器模式,派遣器模式和PageHelper模式組成。而Struts只實現(xiàn)了MVC的View和Controller兩個部分,Model部分需要開發(fā)者自己來實現(xiàn),Struts提供了抽象類Action使開發(fā)者能將Model應用于Struts框架中。2.2關鍵技術簡介JDBC(JavaDataBaseConnectivity,java數(shù)據(jù)庫連接)是一種用于執(zhí)行SQL語句的JavaAPI,可以為多種關系數(shù)據(jù)庫提供統(tǒng)一訪問,它由一組用Java語言編寫的類和接口組成。JDBC為工具/數(shù)據(jù)庫開發(fā)人員提供了一個標準的API,據(jù)此可以構(gòu)建更高級的工具和接口,使數(shù)據(jù)庫開發(fā)人員能夠用純JavaAPI編寫數(shù)據(jù)庫應用程序,同時,JDBC也是個商標名。有了JDBC,向各種關系數(shù)據(jù)發(fā)送SQL語句就是一件很容易的事。換言之,有了JDBCAPI,就不必為訪問Sybase數(shù)據(jù)庫專門寫一個程序,為訪問Oracle數(shù)據(jù)庫又專門寫一個程序,或為訪問Informix數(shù)據(jù)庫又編寫另一個程序等等,新鄉(xiāng)逗號網(wǎng)絡技術公司的程序員只需用JDBCAPI寫一個程序就夠了,它可向相應數(shù)據(jù)庫發(fā)送SQL調(diào)用。同時,將Java語言和JDBC結(jié)合起來使程序員不必為不同的平臺編寫不同的應用程序,只須寫一遍程序就可以讓它在任何平臺上運行,這也是Java語言“編寫一次,處處運行”的優(yōu)勢。Java數(shù)據(jù)庫連接體系結(jié)構(gòu)是用于Java應用程序連接數(shù)據(jù)庫的標準方法。JDBC對Java程序員而言是API,對實現(xiàn)與數(shù)據(jù)庫連接的服務提供商而言是接口模型。作為API,JDBC為程序開發(fā)提供標準的接口,并為數(shù)據(jù)庫廠商及第三方中間件廠商實現(xiàn)與數(shù)據(jù)庫的連接提供了標準方法。JDBC使用已有的SQL標準并支持與其它數(shù)據(jù)庫連接標準,如ODBC之間的橋接。JDBC實現(xiàn)了所有這些面向標準的目標并且具有簡單、嚴格類型定義且高性能實現(xiàn)的接口。2.3開發(fā)工具及環(huán)境Eclipse平臺Eclipse是一個開放源代碼的、基于Java的可擴展開發(fā)平臺。就其本身而言,它只是一個框架和一組服務,用于通過插件組件構(gòu)建開發(fā)環(huán)境。幸運的是,Eclipse附帶了一個標準的插件集,包括Java開發(fā)工具(JavaDevelopmentTools,JDT)。Eclipse最初是由IBM公司開發(fā)的替代商業(yè)軟件VisualAgeforJava的下一代IDE開發(fā)環(huán)境,2001年11月貢獻給開源社區(qū),現(xiàn)在它由非營利軟件供應商聯(lián)盟Eclipse基金會(EclipseFoundation)管理。2003年,Eclipse3.0選擇OSGi服務平臺規(guī)范為運行時架構(gòu)。2007年6月,穩(wěn)定版3.3發(fā)布。2008年6月發(fā)布代號為Ganymede的3.4版。2009年7月發(fā)布代號為GALILEO的3.5版。Eclipse是著名的跨平臺的自由集成開發(fā)環(huán)境(IDE)。最初主要用來Java語言開發(fā),但是目前亦有人通過插件使其作為其他計算機語言比如C++和Python的開發(fā)工具。Eclipse的本身只是一個框架平臺,但是眾多插件的支持使得Eclipse擁有其他功能相對固定的IDE軟件很難具有的靈活性。許多軟件開發(fā)商以Eclipse為框架開發(fā)自己的IDE。Eclipse的主要構(gòu)成Eclipse是一個開放源代碼的軟件開發(fā)項目,專注于為高度集成的工具開發(fā)提供一個全功能的、具有商業(yè)品質(zhì)的工業(yè)平臺。它主要由Eclipse項目、Eclipse工具項目和Eclipse技術項目三個項目組成,具體包括四個部分組成——EclipsePlatform、JDT、CDT和PDE.JDT支持Java開發(fā)、CDT支持C開發(fā)、PDE用來支持插件開發(fā),EclipsePlatform則是一個開放的可擴展IDE,提供了一個通用的開發(fā)平臺。它提供建造塊和構(gòu)造并運行集成軟件開發(fā)工具的基礎。EclipsePlatform允許工具建造者獨立開發(fā)與他人工具無縫集成的工具從而無須分辨一個工具功能在哪里結(jié)束,而另一個工具功能在哪里開始。EclipseSDK(軟件開發(fā)者包)是EclipsePlatform、JDT和PDE所生產(chǎn)的組件合并,它們可以一次下載。這些部分在一起提供了一個具有豐富特性的開發(fā)環(huán)境,允許開發(fā)者有效地建造可以無縫集成到EclipsePlatform中的工具。EclipseSDK由Eclipse項目生產(chǎn)的工具和來自其它開放源代碼的第三方軟件組合而成。Eclipse項目生產(chǎn)的軟件以GPL發(fā)布,第三方組件有各自自身的許可協(xié)議。Tomcat服務器Tomcat很受廣大程序員的喜歡,因為它運行時占用的系統(tǒng)資源小,擴展性好,支持負載平衡與郵件服務等開發(fā)應用系統(tǒng)常用的功能;而且它還在不斷的改進和完善中,任何一個感興趣的程序員都可以更改它或在其中加入新的功能。Tomcat是一個小型的輕量級應用服務器,在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的場合下被普遍使用,是開發(fā)和調(diào)試JSP程序的首選。對于一個初學者來說,可以這樣認為,當在一臺機器上配置好Apache服務器,可利用它響應對HTML頁面的訪問請求。實際上Tomcat部分是Apache服務器的擴展,但它是獨立運行的,所以當你運行tomcat時,它實際上作為一個與Apache獨立的進程單獨運行的。2.4應用平臺Android平臺Android是基于Linux內(nèi)核的操作系統(tǒng),早期由Google開發(fā),后由開放手機聯(lián)盟開發(fā)。它采用了軟件堆的架構(gòu),主要分為三部分。底層以Linux內(nèi)核工作為基礎,只提供基本功能;其他的應用軟件則由各公司自行開發(fā),以Java作為編寫程序的一部分。另外,為了推廣此技術,Google和其它幾十個手機公司建立了開放手機聯(lián)盟。Android在未公開之前常被傳聞為GPhone。它采用了軟件堆層(softwarestack,又名軟件疊層)的架構(gòu),主要分為三部分:底層以Linux核心為基礎,由c語言開發(fā),只提供基本功能。中間層包括函數(shù)庫Library和虛擬機VirtualMachine,由C+開發(fā)。最上層是各種應用軟件,包括通話程序,短信程序等,應用軟件則由各公司自行開發(fā),以java編寫。第三章系統(tǒng)需求分析3.1需求分析數(shù)字化餐飲管理系統(tǒng)是處于導入市場的階段。無線點餐系統(tǒng)管理軟件供應商在餐飲行業(yè)市場滿地找餐飲老板,希望出售自己產(chǎn)品。而餐飲老板在這個信息化滿天飛的時代,總要受到影響,也希望通過這種數(shù)字化管理軟件使得自己經(jīng)營的餐飲能更有效的得到管理,能更多的盈利。但是,由于,餐飲業(yè)界人士對這個無線點餐管理軟件不能辯認,或者說識別出好的適應本身餐館經(jīng)營模式的無線點餐管理軟件所需時間較長,因而,總的來說,他們處于一種觀望狀態(tài),或者考察時間相對來說較長。一個好的系統(tǒng),必須要進行完善而且全面的系統(tǒng)分析。系統(tǒng)分析做好了,那就能夠指導項目良好地發(fā)展下去。當然,系統(tǒng)分析需要以需求分析為基礎,不過,在本項目中并未做仔細的需求分析,故在此不談。首先,我們得確定使用新鄉(xiāng)逗號網(wǎng)絡技術公司的這個系統(tǒng)的用戶應該有顧客、廚師、管理員(包括收銀員,只是其權(quán)限有限制)。顧客和管理員應該是系統(tǒng)數(shù)據(jù)的起點,由他們做出相應的操作,然后系統(tǒng)進行處理;廚師則為系統(tǒng)數(shù)據(jù)的終點,因為最終的任務分配情況是反映到廚師身上的。整個系統(tǒng)的關鍵任務就是保證顧客所點菜品能夠由廚師完成,系統(tǒng)保證能將做菜任務準確無誤地傳達給廚師。該系統(tǒng)在性能功能上應達到如下需求:(1)操作簡單、界面友好:完全控件式的頁面布局,使得菜品,資訊,座位等信息的錄入工作更簡便,許多選項包括餐廳信息,桌位,包房信息等只需要點擊鼠標就可以完成;另外,跟蹤出現(xiàn)的提示信息也讓用戶隨時清楚自己的操作情況。(2)即時可見:對客戶預定餐飲信息的處理(包括錄入、刪除)將立即在另一應用端及服務器的對應欄目顯示出來,達到“即時點擊、即時見效”的功能;(3)系統(tǒng)運行應該快速、穩(wěn)定、高效和可靠;(4)在結(jié)構(gòu)上應具有很好的可擴展性,便于將來的功能擴展和維護。第四章系統(tǒng)概要設計系統(tǒng)的概要設計主要對系統(tǒng)的總體功能如何設計,如何劃分模塊,系統(tǒng)的數(shù)據(jù)庫如何設計進行研究。它為系統(tǒng)的詳細設計做鋪墊。在系統(tǒng)的設計過程中起著非常重要的作用。4.1模塊的劃分與功能設計本系統(tǒng)主要分兩部分:終端設備和后臺管理。終端設備能實現(xiàn)更新,計費,注銷等功能。4.2功能模塊的設計終端系統(tǒng)主要有以下幾個模塊構(gòu)成:結(jié)臺管理、更新管理、注銷、設置等功能。結(jié)臺——在顧客就餐完畢后,計費付帳而設定的功能,是客人能夠一目了然,不用擔心有什么算錯的問題。更新——就是隨時對酒店的就餐信息例如:桌位,計費,加菜等功能的更新,與服務器保持一致。注銷——在顧客結(jié)賬以后進行的步驟,方便后來的客人能夠及時了解酒店的信息。設置——原準備有一些簡單的設置,后來沒有實現(xiàn)。無線點餐系統(tǒng)無線點餐系統(tǒng)開桌查臺更新轉(zhuǎn)臺并臺注銷結(jié)賬開桌點菜更新桌號更新菜譜查賬結(jié)賬登錄圖4-1結(jié)構(gòu)圖4.3數(shù)據(jù)庫結(jié)構(gòu)的設計數(shù)據(jù)庫設計(DatabaseDesign)是指根據(jù)用戶的需求,在某一具體的數(shù)據(jù)庫管理系統(tǒng)上,設計數(shù)據(jù)庫的結(jié)構(gòu)和建立數(shù)據(jù)庫的過程,就是規(guī)劃和結(jié)構(gòu)化數(shù)據(jù)庫中的數(shù)據(jù)對象以及這些數(shù)據(jù)對象之間關系的過程。數(shù)據(jù)庫的設計過程大致可分為5個步驟:(1)需求分析調(diào)查和分析用戶的業(yè)務活動和數(shù)據(jù)的使用情況,弄清所用數(shù)據(jù)的種類、范圍、數(shù)量以及它們在業(yè)務活動中交流的情況,確定用戶對數(shù)據(jù)庫系統(tǒng)的使用要求和各種約束條件等,形成用戶需求規(guī)約。(2)概念設計對用戶要求描述的現(xiàn)實世界(可能是一個工廠、一個商場或者一個學校等),通過對其中住處的分類、聚集和概括,建立抽象的概念數(shù)據(jù)模型。這個概念模型應反映現(xiàn)實世界各部門的信息結(jié)構(gòu)、信息流動情況、信息間的互相制約關系以及各部門對信息儲存、查詢和加工的要求等。所建立的模型應避開數(shù)據(jù)庫在計算機上的具體實現(xiàn)細節(jié),用一種抽象的形式表示出來。新鄉(xiāng)逗號網(wǎng)絡技術公司以擴充的實體—(E-R模型)聯(lián)系模型方法為例,第一步先明確現(xiàn)實世界各部門所含的各種實體及其屬性、實體間的聯(lián)系以及對信息的制約條件等,從而給出各部門內(nèi)所用信息的局部描述(在數(shù)據(jù)庫中稱為用戶的局部視圖)。第二步再將前面得到的多個用戶的局部視圖集成為一個全局視圖,即用戶要描述的現(xiàn)實世界的概念數(shù)據(jù)模型。(1)邏輯設計主要工作是將現(xiàn)實世界的概念數(shù)據(jù)模型設計成數(shù)據(jù)庫的一種邏輯模式,即適應于某種特定數(shù)據(jù)庫管理系統(tǒng)所支持的邏輯數(shù)據(jù)模式。與此同時,可能還需為各種數(shù)據(jù)處理應用領域產(chǎn)生相應的邏輯子模式。這一步設計的結(jié)果就是所謂“邏輯數(shù)據(jù)庫。(2)物理設計根據(jù)特定數(shù)據(jù)庫管理系統(tǒng)所提供的多種存儲結(jié)構(gòu)和存取方法等依賴于具體計算機結(jié)構(gòu)的各項物理設計措施,對具體的應用任務選定最合適的物理存儲結(jié)構(gòu)(包括文件類型、索引結(jié)構(gòu)和數(shù)據(jù)的存放次序與位邏輯等)、存取方法和存取路徑等。這一步設計的結(jié)果就是所謂“物理數(shù)據(jù)庫”。(3)驗證設計在上述設計的基礎上,收集數(shù)據(jù)并具體建立一個數(shù)據(jù)庫,運行一些典型的應用任務來驗證數(shù)據(jù)庫設計的正確性和合理性。一般,一個大型數(shù)據(jù)庫的設計過程往往需要經(jīng)過多次循環(huán)反復。當設計的某步發(fā)現(xiàn)問題時,可能就需要返回到前面去進行修改。因此,在做上述數(shù)據(jù)庫設計時就應考慮到今后修改設計的可能性和方便性。(6)運行與維護設計;在數(shù)據(jù)庫系統(tǒng)正式投入運行的過程中,必須不斷地對其進行評調(diào)整與修改。總共創(chuàng)建了三張表分別是:訂單詳細表(orderdetailtbl)、訂單表(ordertbl)、桌號表(tabletbl)訂單詳細表:列出了顧客所點的菜的種類與數(shù)量,還有對菜的備注要求。訂單表:列出訂單用戶,所在桌號,客人幾位,是否結(jié)算等。桌號表:對桌位進行編號并標注其狀態(tài)時有人還是空。4.4連接數(shù)據(jù)庫的設計與實現(xiàn)本系統(tǒng)采用java語言編寫,使用jdbc連接Mysql數(shù)據(jù)庫,所以要用到java中的connection對象和mysql驅(qū)動連接到數(shù)據(jù)庫。其實現(xiàn)代碼如下所示。Stringdriver=com.mysql.jdbc.DriverStringurl=jdbc:mysql://localhost:3360/wireless_db?useUnicode=true&characterEvcoding=utf-8Stringusername=rootStringpassword=Connectionconn;Class.forName(driver);Conn=DriverManager.getConnection(url,username,password)只有成功連接到了數(shù)據(jù)庫才能進行其他操作,否則就無法開展以下的設計與實現(xiàn)工作了。可見,連接數(shù)據(jù)庫是一個很關鍵的步驟。第五章系統(tǒng)實現(xiàn)5.1主菜單界面5.1.1功能描述主菜單界面包含點菜管理、并臺管理、轉(zhuǎn)臺管理、查臺管理、結(jié)臺管理、更新管理、注銷、設置等八個功能模塊。每個功能模塊提供一種服務,包含一組功能操作,界面簡單明了方便服務人員操作。5.1.2登錄界面的設計登錄界面主要是由服務人員來操作的,所以要簡單明了易操作。利用數(shù)據(jù)庫對用戶信息進行核對,核對正確后利用界面跳轉(zhuǎn)到主菜單界面。每一位服務人員有自己單獨的一個賬號密碼用來登錄,這樣可以責任到人,不至于出現(xiàn)混亂,否則出現(xiàn)錯誤都不知道是哪個環(huán)節(jié)的問題。5.1.3功能描述服務人員可通過用戶名和密碼進入移動終端首界面來為顧客服務。而服務人員的賬號密碼是提前在服務器數(shù)據(jù)庫中設置的,每個服務人員都有自己單獨的唯一的一個賬號密碼用來登錄,這樣可以達到責任到人。5.1.4界面設計圖5-1用戶登錄圖5.1.5功能實現(xiàn)及關鍵代碼新鄉(xiāng)逗號網(wǎng)絡技術公司以單獨建立一個Activity用來控制用戶的登錄,再用戶輸入賬號與密碼時,系統(tǒng)先判斷用戶賬號密碼是否為空,為空則跳出一個對話框給用戶提示;如果不為空則再從EditView中取的賬號密碼與服務器中的賬號密碼進行匹配,如果匹配成功則利用Intent語句跳轉(zhuǎn)到下一個主菜單界面。實現(xiàn)登錄主要代碼及分析:loginBtn.setOnClickListener(newOnClickListener(){@OverridepublicvoidonClick(Viewv){if(validate()){//通過validate()判斷賬號密碼是否為空if(login()){//通過login()連接數(shù)據(jù)庫核對是否一致Intentintent=newIntent(LoginActivity.this,MainMenuActivity.class); startActivity(intent);//啟動Activity傳遞intent來跳轉(zhuǎn)頁面 }Else{ showDialog("用戶名稱或者密碼錯誤,請重新輸入!");}}}});}對登錄按鈕添加監(jiān)聽事件,在服務人員輸入賬號密碼后點擊登錄后,終端會先判斷是否滿足validate()方法,此方法是防止賬號密碼為空時的登錄提示,如果為空會跳出一對話框進行提示賬號密碼是必填項,如果不空,則再判斷是否滿足login()方法,login()方法是用來與數(shù)據(jù)庫進行連接比較核對是否一致,一致則順利登錄跳轉(zhuǎn)到下一個Activity即主菜單界面,否則出現(xiàn)賬號密碼錯誤的提示,登錄失??;privatevoidsaveUserMsg(Stringmsg){//將用戶信息保存到配置文件 Stringid="";//用戶編號 Stringname="";//用戶名稱 String[]msgs=msg.split(";"); //獲得信息數(shù)組 intidx=msgs[0].indexOf("=");//以“=”為分隔符 id=msgs[0].substring(idx+1);//獲取id號 idx=msgs[1].indexOf("="); name=msgs[1].substring(idx+1);//獲取名稱 SharedPreferencespre=getSharedPreferences("user_msg",MODE_WORLD_WRITEABLE);//共享信息,運用本地數(shù)據(jù)庫SQLite SharedPreferences.Editoreditor=pre.edit(); editor.putString("id",id); editor.putString("name",name); mit(); }此方法是在login()方法中再與后臺數(shù)據(jù)庫查詢成功后調(diào)用的,也將登錄用戶信息保存在終端系統(tǒng)的本地數(shù)據(jù)庫中,存儲方便快捷。這也正是基于Android平臺的優(yōu)點,擁有自己獨立的數(shù)據(jù)庫SQLite,它是一套輕量級的數(shù)據(jù)庫引擎,可供其他應用程序調(diào)用。5.2更新界面5.2.1功能描述此功能按鍵主要是為了保持數(shù)據(jù)的同步,時刻保持服務器和客服端的數(shù)據(jù)一致。一個是與服務器更新菜譜表數(shù)據(jù)的,另一個是更新餐桌表數(shù)據(jù)的。5.2.2界面設計圖5-2更新圖5.2.3功能實現(xiàn)及關鍵代碼更新功能其實就是要保持終端系統(tǒng)中的數(shù)據(jù)庫與服務器中的數(shù)據(jù)庫隨時保持一致。調(diào)用updateMenu()和updateTable()這兩個方法來保持數(shù)據(jù)一致。新鄉(xiāng)逗號網(wǎng)絡技術公司設計的無線點餐系統(tǒng)的兩個方法代碼大致相同,不過一個是保持菜單表的一致,一個是保持桌號表的一致。privatevoidconfirm(finalintitem){AlertDialog.Builderbuilder=newAlertDialog.Builder(this);builder.setMessage("你真的要更新嗎?").setCancelable(false).setPositiveButton("確定",newDialogInterface.OnClickListener(){ publicvoidonClick(DialogInterfacedialog,intid){ if(item==1){ updateMenu(); Toast.makeText(UpdateActivity.this,"菜單表更新成功!",Toast.LENGTH_SHORT).show(); }else{ updateTable(); Toast.makeText(UpdateActivity.this,"桌號表更新成功!",Toast.LENGTH_SHORT).show(); } } }).setNegativeButton("取消",newDialogInterface.OnClickListener(){ publicvoidonClick(DialogInterfacedialog,intid){ dialog.cancel(); } }); AlertDialogalert=builder.create(); alert.show(); }5.3注銷與結(jié)賬界面5.3.1功能描述結(jié)賬界面:點擊結(jié)賬按鈕以后會跳轉(zhuǎn)到下一個界面用來總計消費金額及詳細款項,一目了然,方便顧客查賬。注銷界面:在服務人員準備下班后,服務人員即可點擊注銷按鈕,退出本次登錄。5.3.2界面設計圖5-3結(jié)賬圖圖5-4注銷圖5.3.3功能實現(xiàn)及關鍵代碼結(jié)賬實現(xiàn)的主要代碼:從服務器獲得訂單編號,顯示總計消費金額,再點擊結(jié)算按鈕以后,通過payBtn.setEnabled(false)方法就會是結(jié)算按鈕失效,不能再次點擊生效,這也是為了是否結(jié)算更加明了,不易讓顧客和酒店服務員出現(xiàn)多次結(jié)賬的錯誤。也是人性化設計的一方面。OnClickListenerpayListener=newOnClickListener(){//結(jié)算監(jiān)聽器publicvoidonClick(Viewv){StringorderId=orderIdEt.getText().toString();//獲得訂單編號Stringurl=HttpUtil.BASE_URL+"servlet/PayMoneyServlet?id="+orderId;//請求服務器urlStringresult=HttpUtil.queryStringForPost(url);//獲得查詢結(jié)果Toast.makeText(PayActivity.this,result, //顯示結(jié)算結(jié)果Toast.LENGTH_LONG).show(); payBtn.setEnabled(false);//使結(jié)算按鈕失效 }};注銷實現(xiàn)的主要代碼:此功能的實現(xiàn)比較簡單,通過AlertDialog.Builder創(chuàng)建對話框,在對話框中添加兩個按鈕,一個確定一個取消并添加監(jiān)聽,來對注銷進行操作。在確定注銷時運用SharedPreferences來對登錄信息清空,同時也調(diào)用Intent來使頁面進行跳轉(zhuǎn)到登錄界面。privatevoidlogout(){AlertDialog.Builderbuilder=newAlertDialog.Builder(this);builder.setMessage("真的要退出系統(tǒng)嗎?").setCancelable(false).setPositiveButton("確定",newDialogInterface.OnClickListener(){publicvoidonClick(DialogInterfacedialog,intid)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中學競賽活動方案
- 檔案管理與服務流程(標準版)
- 互聯(lián)網(wǎng)基礎知識課件
- 2026年劇本殺運營公司品牌形象維護管理制度
- 探索2025年在線教育直播互動平臺技術創(chuàng)新與教育資源共享與整合可行性研究
- 2026年智能城市科技發(fā)展報告
- 2025年航空制造業(yè)先進材料應用與市場趨勢報告
- 產(chǎn)后身體變化及應對策略
- 2026年醫(yī)療機器人藥物配送行業(yè)報告
- 智能化礦山安全監(jiān)控:2025年安防巡邏機器人產(chǎn)業(yè)化可行性評估報告
- 廣西出版?zhèn)髅郊瘓F有限公司2026年招聘備考題庫附答案詳解
- 2025廣東百萬英才匯南粵惠州市市直事業(yè)單位招聘急需緊缺人才31人(公共基礎知識)測試題附答案
- 2026年孝昌縣供水有限公司公開招聘正式員工備考題庫及完整答案詳解一套
- (2025年)糧食和物資儲備局招聘考試題庫(答案+解析)
- DB32/T+5309-2025+普通國省道智慧公路建設總體技術規(guī)范
- 人事行政部2026年年度計劃
- 2026年上海市徐匯區(qū)老年大學招聘教務員備考題庫完整參考答案詳解
- 2026年國家電投集團蘇州審計中心選聘備考題庫及完整答案詳解一套
- 2026貴州省法院系統(tǒng)招聘聘用制書記員282人筆試參考題庫及答案解析
- 2025-2030中國環(huán)保污水處理產(chǎn)業(yè)現(xiàn)狀供需研判及投資前景規(guī)劃分析報告
- 2026年孝昌縣供水有限公司公開招聘正式員工備考題庫及答案詳解一套
評論
0/150
提交評論