版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、存檔日期:存檔日期: 存檔編號:存檔編號: 題題 目:目: 中小型餐飲管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)學(xué)學(xué) 號:號: 姓姓 名:名: 聯(lián)聯(lián) 系系 電電 話:話: 電電 子子 郵郵 箱:箱: QQ : 學(xué)學(xué) 院:院: 專專 業(yè):業(yè): 年年 級級 、 班班 級級: 指指 導(dǎo)導(dǎo) 教教 師:師: 中小型餐飲管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)摘 要: 該餐飲管理系統(tǒng)是一種運(yùn)營成本相對較低,操作性與可實(shí)現(xiàn)行較高的餐廳點(diǎn)餐及運(yùn)營管理系統(tǒng),根據(jù)餐廳的實(shí)際需要,實(shí)現(xiàn)了顧客點(diǎn)餐,后臺即時接單,后臺對于員工、會員、菜品的基本管理等系統(tǒng)需求。系統(tǒng)的目的是去提高顧客用餐體驗(yàn),以服務(wù)質(zhì)量帶動企業(yè)營銷。提高整個餐廳的檔次,提高顧客的用餐體驗(yàn),并在用
2、餐過程中進(jìn)行營銷以帶動再消費(fèi)。提高效率,節(jié)省人力資源。電子端可以即時的將客戶的點(diǎn)單情況傳送到后廚,節(jié)省了時間和人力??茖W(xué)分析,合理配置。管理系統(tǒng)可以科學(xué)的對營業(yè)情況,具體的銷售情況進(jìn)行分析,針對庫存、損耗等數(shù)據(jù)來安排之后的計(jì)劃。系統(tǒng)實(shí)現(xiàn)做到了簡潔化,讓顧客簡潔明了的接收到管理者所要傳達(dá)的信息,讓點(diǎn)餐更為流暢,用戶體驗(yàn)度更高。系統(tǒng)也實(shí)現(xiàn)了即時性,顧客在提交訂單之后,后臺能在第一時間接收到訂單并處理。關(guān)鍵詞: 餐飲管理;信息管理;即時點(diǎn)餐;數(shù)據(jù)庫The design and implementation of small and medium sized catering management s
3、ystemAbstract: This catering management system is a kind of relatively low operating costs, operational and line can achieve higher ordering a meal in a restaurant and operation management system, according to the actual needs of the restaurant, to achieve the customer order, the background instant
4、order, the background for the employees, members, the basic management system requirements. System implementation of the purpose is to improve the quality of the customer dining, driven by the quality of marketing. Improve the level of the whole restaurant, improve customers dining experience, and m
5、arketing to drive the table during a meal consumption again. To improve efficiency, save human resource. Electronic end can be instant customer order it is sent to the kitchen, save time and manpower. Increase the rate of turn table, improve efficiency, increase profits, thereby realize the profit m
6、aximization. Scientific analysis and reasonable configuration. Management system can science in operating case, the specific sales analysis, in view of the data such as inventory, loss to arrange after the plan. System implementation done concise, let the customer clear and concise receives the mana
7、gers to convey information, to order more smoothly, more user experience. System also implements the immediacy, after customers submit orders, the background can be in the first indirect received orders and processing at the moment.Keywords: Catering management system;Information management; Instant
8、 order; MySQLI目目 錄錄第第 1 章章 緒論緒論.11.1 系統(tǒng)前景分析及已有成果分析.11.1.1 系統(tǒng)前景分析.11.1.2 該類系統(tǒng)已有成果分析.21.2 有關(guān)中小型餐飲行業(yè)調(diào)查.2 1.2.1 實(shí)際需要決定功能需求.21.2.2 系統(tǒng)特點(diǎn)反饋現(xiàn)實(shí)情況.31.3 本系統(tǒng)的特點(diǎn)及創(chuàng)新.31.3.1 系統(tǒng)的特點(diǎn).31.3.2 系統(tǒng)的創(chuàng)新.31.4 本文研究內(nèi)容及主要貢獻(xiàn).4第第 2 章章 需求分析與方案比較需求分析與方案比較.52.1 可行性研究.52.1.1 技術(shù)可行性.52.1.2 經(jīng)濟(jì)可行性.52.2 系統(tǒng)綜合要求.52.2.1 功能需求.52.2.2模塊劃分.52.2.
9、3 性能需求.52.3 開發(fā)環(huán)境.5 2.3.1 Apache tomcat.52.3.2 java .62.3.2 mysql.62.3.3 B/S結(jié)構(gòu).62.3.4 DIV+CSS.62.4 系統(tǒng)流程圖.6 2.5 本章小結(jié).7第第 3 章章 系統(tǒng)關(guān)鍵技術(shù)以及方案系統(tǒng)關(guān)鍵技術(shù)以及方案.83.1 核心技術(shù).83.1.1 Java.83.1.2 Mvc設(shè)計(jì)模式.83.2 系統(tǒng)設(shè)計(jì)分析.83.2.1 客戶操作部分.83.2.2 管理員操作部分.83.2.3數(shù)據(jù)庫部分.83.3 本章小結(jié).9第第 4 章章 具體算法以及各功能實(shí)現(xiàn)原理具體算法以及各功能實(shí)現(xiàn)原理.94.1 購物車實(shí)現(xiàn)原理.10II4.
10、1.1 購物車前臺實(shí)現(xiàn)原理.104.1.2 購物車后臺實(shí)現(xiàn)原理.144.2 后臺數(shù)據(jù)的排序.164.2.1 訂單的處理.164.2.2 查看所有訂單.194.3 員工和會員管理.194.3.1 員工管理.204.3.2 會員管理.254.4 本章小結(jié).25第第 6 章章 總結(jié)與展望總結(jié)與展望.256.1 總結(jié).266.2 展望.26第第 1 章章 緒論緒論1.1 系統(tǒng)前景分析及已有成果分析系統(tǒng)前景分析及已有成果分析 在社會經(jīng)濟(jì)與人民生活水平的提高的同時,餐飲業(yè)也是處于不斷的發(fā)展之中,餐飲企業(yè)發(fā)展帶動了餐飲投資的多元化,餐飲資本的迅速投入在一定程度上推動了餐飲業(yè)的快速發(fā)展。在餐飲企業(yè)中廣大的中小
11、型餐廳及消費(fèi)場所是非常重要的一部分。因?yàn)閺恼{(diào)查來看,中小型餐飲企業(yè)已經(jīng)成為了這個行業(yè)不可或缺的一部分。本論文的研究對象就是中小型的餐廳飯店,根據(jù)所調(diào)查的幾家餐廳實(shí)際需要制定出切實(shí)可行的系統(tǒng)需求。1.1.1 系統(tǒng)前景分析系統(tǒng)前景分析在實(shí)踐這個角度來說,如何把多種技術(shù)應(yīng)用在餐飲管理系統(tǒng)軟件的開發(fā)與設(shè)計(jì)之中,如何讓設(shè)計(jì)出的系統(tǒng)更加的穩(wěn)定,更加的快捷,從而能夠適應(yīng)餐飲企業(yè)的發(fā)展,在服務(wù)、管理和業(yè)務(wù)等諸多方面有所進(jìn)展,這些都是值得研究和探討的,是一個具實(shí)際意義和探討價(jià)值的研究項(xiàng)目。 中小型餐飲企業(yè)現(xiàn)狀中小型餐飲企業(yè)現(xiàn)狀隨著改革開放的繼續(xù)深入,我國的中小型餐飲企業(yè)呈現(xiàn)出了一種發(fā)展迅速的態(tài)勢
12、,但與發(fā)展節(jié)奏不符的是,這些小的餐飲企業(yè)在日常的運(yùn)營中還是普遍采用手工操作方式,效率低且成本高,科技含量低。一、現(xiàn)狀暴露的問題在餐飲企業(yè)規(guī)模與數(shù)量的不斷增長的同時,單純的手工操作與服務(wù)無論是在工作效率、人力資源成本還是提供決策方面,都是已經(jīng)不能達(dá)到現(xiàn)代化經(jīng)營管理的企業(yè)標(biāo)準(zhǔn)的了,因此,這種落后的模式制約了整個中小型餐飲行業(yè)的規(guī)?;l(fā)展,也限制著整體服務(wù)水平的提升。信息管理系統(tǒng)在中國的餐飲運(yùn)用上還是一個比較陌生的新鮮事物,所以想要將其普及還是還需要一段時間的,雖然它目前在中國多數(shù)企業(yè)應(yīng)用中只占了很小的一部分,但是伴隨著信息技術(shù)和產(chǎn)業(yè)的高速發(fā)展,信息管理系統(tǒng)將會成為一個好企業(yè)不可缺少的重要組成,信息
13、管理系統(tǒng)能給那些企業(yè)帶來高效率、高質(zhì)量、更為科學(xué)的管理,使的企業(yè)可以提高自己的競爭力。二、解決問題的途徑本論文主要是解決中小型餐飲管理運(yùn)營中的一些問題,把計(jì)算機(jī)技術(shù)用于餐飲企業(yè)管理之中,是可以在很大程度上提高管理者決策的科學(xué)性,可以提升的企業(yè)的軟實(shí)力,提高企業(yè)效益。將管理和運(yùn)營與計(jì)算機(jī)信息管理系統(tǒng)結(jié)合運(yùn)用起來,促進(jìn)中小型餐飲企業(yè)管理電子化和系統(tǒng)化,將中小型餐飲企業(yè)管理中的工作方式變得更為科學(xué),使得管理更加準(zhǔn)確化,讓企業(yè)的管理人員能擺脫了一些瑣碎事務(wù),在數(shù)據(jù)基礎(chǔ)上并且為經(jīng)營和決策提供了準(zhǔn)確數(shù)據(jù)支持。餐飲管理系統(tǒng)不是只用于收銀的一種工具,它是通過對目前餐飲企業(yè)的實(shí)際情況科學(xué)的調(diào)查分析后設(shè)計(jì)出來的管
14、理系統(tǒng),它可以針對中餐因其菜品的多樣化和復(fù)雜化的服務(wù)很難以實(shí)現(xiàn)標(biāo)準(zhǔn)化的信息管理。再則,餐飲管理系統(tǒng)能夠?qū)崿F(xiàn)具體的、相應(yīng)的科學(xué)的標(biāo)準(zhǔn)化管理流程,在一定程度上,這樣暫時緩解了餐飲管理專業(yè)人才的迫切需求,使用好的系統(tǒng)就能夠去完成專業(yè)人員所需做的工作。最后,決策者可以通過餐飲管理系統(tǒng)做出科學(xué)的決策與分析,讓企業(yè)自身對市場的應(yīng)變能力和競爭力得到完善,從而通過使用2餐飲管理系統(tǒng)來實(shí)現(xiàn)降低成本和提高效率等企業(yè)效益最大化目的。 造成現(xiàn)狀的原因造成現(xiàn)狀的原因在社會的各方面,信息技術(shù)都引起了革命性的變化,但是在餐飲行業(yè),特別是中小型餐飲企業(yè),因?yàn)樾畔⑾到y(tǒng)本身的限制、成本過高、普及不夠全面等原因使得餐
15、飲管理系統(tǒng)沒有全面的應(yīng)用到中小型的餐飲企業(yè)之中去。然后面對餐飲行業(yè)多元化且復(fù)雜的經(jīng)營現(xiàn)狀,以及經(jīng)營的規(guī)模、特色、出品這些因素的差異,使得餐飲企業(yè)有著不同的標(biāo)準(zhǔn)和工作流程,這種復(fù)雜的情況,也使得對人才的專業(yè)化的要求也相應(yīng)地提高了許多,然而在國內(nèi)市場上,餐飲行業(yè)人才供應(yīng)不足,所以在這樣的兩難情況下,提高餐飲企業(yè)核心競爭力的計(jì)算機(jī)管理工具成為了企業(yè)發(fā)展的重要目標(biāo)。 1.1.2 該類系統(tǒng)已有成果分析該類系統(tǒng)已有成果分析目前而言,國內(nèi)的餐飲管理系統(tǒng)呈現(xiàn)的幾種情況是:中國流行的軟件系統(tǒng)大多來自管理信息系統(tǒng)(MIS),設(shè)計(jì)的角度是自身的業(yè)務(wù)需求。設(shè)計(jì)管理信息系統(tǒng)是為了是服務(wù)大多數(shù)的業(yè)務(wù)操作人員的,將他們的重
16、復(fù)性勞動減少,即抽象出理想化的業(yè)務(wù)流程管理模式,能夠在基于該業(yè)務(wù)模式的基礎(chǔ)上實(shí)現(xiàn)業(yè)務(wù)流程電子化。1.2 有關(guān)中小型餐飲行業(yè)調(diào)查有關(guān)中小型餐飲行業(yè)調(diào)查為了能夠更加的了解中小型餐飲行業(yè)信息管理系統(tǒng)的普及程度和實(shí)際的需求,我在我所在的城市江蘇溧陽選取了三家中小型的餐飲企業(yè)進(jìn)行了調(diào)查研究,分別是溧陽市華信飯店,九江酒樓和光華飯店,其中華信飯店是比較大一點(diǎn)的飯店,九江酒樓和光華飯店是屬于中小型的餐飲企業(yè),通過對他們的調(diào)查研究,確定了本系統(tǒng)的功能需求,以及系統(tǒng)在實(shí)際的應(yīng)用推廣中存在的問題與困難。 1.2.1 實(shí)際需要決定功能需求實(shí)際需要決定功能需求通過對三家餐飲企業(yè)的調(diào)查研究,發(fā)現(xiàn)中小型餐飲企業(yè)的實(shí)際需求
17、是比較基礎(chǔ)的,中小型雖然規(guī)模比較小,但是也是非常的注重品質(zhì)和顧客的體驗(yàn),所以信息管理系統(tǒng)的推廣也是非常有前景的,總結(jié)了一下,主要包括以下的功能需求,顧客點(diǎn)餐,服務(wù)評價(jià),后臺接單,人員管理,菜品管理。圖 1.1 功能模塊示意圖1.2.2 系統(tǒng)特點(diǎn)反饋現(xiàn)實(shí)情況系統(tǒng)特點(diǎn)反饋現(xiàn)實(shí)情況編寫本系統(tǒng)的最終目的還是能夠推廣這個系統(tǒng),更好的投入到實(shí)際的使用中去,所以在做這個系統(tǒng)的時候就考慮到了這個系統(tǒng)的運(yùn)行成本,因?yàn)樗麑⒃诤艽蟮某潭壬嫌绊?到系統(tǒng)的推廣使用,顧客的界面在很大程度上做到簡潔化,也是為了能夠得到更好的用戶體驗(yàn),滿足餐飲公司提高其品質(zhì)的利益需求。1.3 本系統(tǒng)的特點(diǎn)及創(chuàng)新本系統(tǒng)的特點(diǎn)及創(chuàng)新 本論文是結(jié)
18、合了餐飲管理系統(tǒng)的調(diào)查與開發(fā)過程,詳細(xì)的介紹如何針對中小型餐飲企業(yè)的實(shí)際需求,再將先進(jìn)的軟件系統(tǒng)技術(shù)融入到餐飲管理系統(tǒng)之中,以此開發(fā)出功能和體驗(yàn)更加完善的餐飲管理系統(tǒng)。本系統(tǒng)采用的的是 MySQL 數(shù)據(jù)庫系統(tǒng),是用 JSP 程序語言開發(fā)實(shí)現(xiàn)的,包括了顧客訂餐、后臺接單、人員管理、系統(tǒng)設(shè)置、銷售與庫存狀況分析、退出等一系列系統(tǒng)模塊,實(shí)現(xiàn)了點(diǎn)/加菜、評價(jià)服務(wù)等功能,具有界面友好,操作簡單穩(wěn)定性高、靈活性好等特點(diǎn)。1.3.1 系統(tǒng)的特點(diǎn)系統(tǒng)的特點(diǎn)本系統(tǒng)的特點(diǎn)就是簡潔的系統(tǒng)應(yīng)用,成本低,可以更好的在中小型餐飲企業(yè)之中推廣,系統(tǒng)的功能也是非常的齊全,具有顧客訂餐、后臺接單、服務(wù)評價(jià)、人員管理、系統(tǒng)設(shè)置、
19、銷售與庫存狀況分析等功能,圖 1.2 系統(tǒng)功能展示1.3.2 系統(tǒng)的創(chuàng)新系統(tǒng)的創(chuàng)新本系統(tǒng)的創(chuàng)新之處在于將傳統(tǒng)的人工點(diǎn)餐方式轉(zhuǎn)化為智能點(diǎn)餐,在節(jié)省人工的同時也提高了資源利用效率,同時也提高了餐廳的科技感,從而促進(jìn)餐廳的生意,雖然現(xiàn)在已經(jīng)有很多類似的系統(tǒng)已經(jīng)投入了使用,但是相比之下,我所設(shè)計(jì)的系統(tǒng)成本更低,是更適合在中小型餐飲企業(yè)之中推廣的,而且,我在系統(tǒng)的界面設(shè)計(jì)上也是采用了更為簡潔的風(fēng)格,滿足顧客最直接的點(diǎn)餐需求,以最快的速度傳輸?shù)胶笈_,提高點(diǎn)餐的效率。4圖 1.3 系統(tǒng)界面圖1.4 本文研究內(nèi)容及主要貢獻(xiàn)本文研究內(nèi)容及主要貢獻(xiàn) 本論文簡要的介紹了“基于 JSP 的中小型餐飲管理系統(tǒng)”的項(xiàng)目背
20、景和項(xiàng)目意義,著重的闡述了該系統(tǒng)需求分析與開發(fā)實(shí)現(xiàn)的過程,詳盡的對系統(tǒng)的需求分析、模塊設(shè)計(jì)和數(shù)據(jù)庫的設(shè)計(jì)等各個環(huán)節(jié)展開了分析和描述。文章重點(diǎn)介紹了餐飲管理系統(tǒng)所采用一部分的關(guān)鍵技術(shù)與思想,在其中也包括 mysql 數(shù)據(jù)庫技術(shù)和 JSP 的編程技術(shù)。本文最大特點(diǎn)在于將理論與實(shí)踐結(jié)合在一起,它的創(chuàng)新之處就在于比較客觀地準(zhǔn)確地分析、識別了餐飲管理系統(tǒng)的需求,在調(diào)查研究的基礎(chǔ)之上,然后通過對餐飲企業(yè)的服務(wù)流程提出了一套數(shù)據(jù)處理系統(tǒng)。5第第 2 章章 需求分析與方案比較需求分析與方案比較介紹了設(shè)計(jì)的需求分析、總體思路以及基本原理、列出的方案及其優(yōu)缺點(diǎn)對比,最后采用的方案及其功能描述,贅述本研究或設(shè)計(jì)采用
21、的開發(fā)環(huán)境。2.1 可行性研究可行性研究2.1.1 技術(shù)可行性技術(shù)可行性本系統(tǒng)的前臺語言主要是 BootStrap 框架 html5+CSS3 +javascript 腳本語言,后臺語言 java,這兩項(xiàng)技術(shù)已經(jīng)非常的成熟,設(shè)計(jì)這樣的點(diǎn)餐系統(tǒng)是不存在技術(shù)難題的。2.1.2 經(jīng)濟(jì)可行性經(jīng)濟(jì)可行性為了能夠在中小型的餐飲企業(yè)中推廣,系統(tǒng)在成本和維護(hù)方面的費(fèi)用都比較低,服務(wù)器的搭建的話也是比較簡單。2.2 系統(tǒng)綜合要求系統(tǒng)綜合要求2.2.1 功能需求功能需求本系統(tǒng)主要分為六個模塊。 模塊劃分模塊劃分1、登陸模塊:普通用戶(顧客端)、管理員用戶(管理端);2、點(diǎn)單模塊:包括自助結(jié)賬子模塊,
22、菜品評價(jià)子模塊;三、菜單處理模塊:管理員端即時顯示客戶點(diǎn)單情況;四、收銀模塊:包括結(jié)賬子模塊,會員子模塊;五、會員信息管理模塊:管理會員個人信息,計(jì)算會員積分,個人信用;六、數(shù)據(jù)分析模塊:年月日營業(yè)額分析、菜品分類銷量分析(這兩項(xiàng)關(guān)聯(lián)結(jié)賬模塊)、庫存分析、損耗分析(這兩項(xiàng)由管理端輸入)。 性能需求性能需求計(jì)算機(jī)系統(tǒng)需要配置一般即可,需要 xp 以上系統(tǒng),同時裝有 MySQL 數(shù)據(jù)庫。2.3 開發(fā)環(huán)境開發(fā)環(huán)境 本設(shè)計(jì)采用的是 Apache+Mysql+java 作為開發(fā)平臺,采用 java 技術(shù)進(jìn)行這個系統(tǒng)的開發(fā),以 B/S 結(jié)構(gòu)作為系統(tǒng)結(jié)構(gòu),以 java 作為后臺開發(fā)語言,能夠?qū)?/p>
23、現(xiàn)面向?qū)ο箝_發(fā),數(shù)據(jù)庫采用的是 Mysql 數(shù)據(jù)庫管理系統(tǒng),兼容性更強(qiáng),數(shù)據(jù)處理更加的高效,前臺語言采用 BootStrap 框架 html5+CSS3 +javascript 腳本語言,能夠使開發(fā)的界面更為美觀,呈現(xiàn)動態(tài)效果更好。硬件方面,在計(jì)算機(jī)上運(yùn)行即可。2.3.1 Apache tomcatApache 是可以說他是一種 web 服務(wù)器,但是 Tomcat 卻是一種應(yīng)用服務(wù)器(java),所以 Tomcat 僅僅是一個 servlet 容器,類似于 Apache 的一種擴(kuò)展。Apache 和 Tomcat這兩種都是可以按照一個獨(dú)立的 web 服務(wù)器來啟動的,但是 Apache 是不可以
24、解釋 java內(nèi)程序(jsp&servlet)的。 Apache 它是來源于 NCSAhttpd 服務(wù)器的,它經(jīng)過了多次修改,逐漸就成為了最流行的一種 Web 服務(wù)器軟件。由于它是個自由軟件的緣故,所以就不斷有人來為它開發(fā)新的6功能,不斷地去完善它。Apache 有簡單、速度快的優(yōu)點(diǎn),并且它的性能也是具有穩(wěn)定性的,常常作為代理服務(wù)器來使用的。而且 Apache 對 Linux 的支持相當(dāng)完美。2.3.2 Java Java 它是一種面向?qū)ο蟮某绦蛟O(shè)計(jì)語言,Java 技術(shù)非常的成熟,它是可以編寫跨平臺語言。它具有優(yōu)秀的安全性,通用性和平臺移植性。已經(jīng)被廣泛應(yīng)用于 PC、數(shù)據(jù)中心等,與此同
25、時,java 擁有全球最大的開發(fā)者研究隊(duì)伍。Sun 自己對 Java 語言的解釋是:Java 語言是一種簡單、面向?qū)ο蟮恼Z言,它與系統(tǒng)無關(guān)且可移植,還是一種性能高、分布式、安全多線程的語言。Java 技術(shù)是一種比較單純的程序開發(fā)語言,它繼承了 C+語言里面向?qū)ο筮@個技術(shù)的核心。而且 Java 技術(shù)也是在不斷更新的。Java 從面世后就是一直非常的流行,java發(fā)展也非常的迅速,對之前的王者 C+編程語言形成了強(qiáng)大沖擊。在移動互聯(lián)時代的產(chǎn)業(yè)大環(huán)境之下,Java 的特性使其在未來的軟件編程方面將會有更好的發(fā)展。2.3.3 MySQL MySQL 數(shù)據(jù)庫是一個數(shù)據(jù)庫管理系統(tǒng),他是關(guān)系型的,是 Ora
26、cle 公司的產(chǎn)品。MySQL 是目前最流行的一種關(guān)系型數(shù)據(jù)庫管理系統(tǒng),所以在 WEB 應(yīng)用這一方面來說,MySQL 是最好的一種 RDBMS 的應(yīng)用軟件。從另一方面,MySQL 又是一種關(guān)聯(lián)數(shù)據(jù)庫管理系統(tǒng),關(guān)聯(lián)數(shù)據(jù)庫的特點(diǎn)是,他會將庫中數(shù)據(jù)存放在不同的表當(dāng)中的,而不是放在同一個庫內(nèi),這樣的特性就會增加運(yùn)行速度,并提高系統(tǒng)的靈活性。由于 mysql 體積小和速度快的優(yōu)點(diǎn),而且總體擁有的成本較低,并且因?yàn)樗情_放自身源碼的,所以許多中小型的系統(tǒng)都會選用 mysql 來作為自己的數(shù)據(jù)庫系統(tǒng)。2.3.4 B/S 結(jié)構(gòu)結(jié)構(gòu) B/S 結(jié)構(gòu)(Browser/Server)(服務(wù)器模式/瀏覽器),他是在 w
27、eb 興起后逐漸被使用的一種網(wǎng)絡(luò)結(jié)構(gòu)模式,因?yàn)榭蛻舳酥凶疃嗟膽?yīng)用軟件是 WEB 瀏覽器。瀏覽器是可以通過 Web Server 與 mysql 數(shù)據(jù)庫進(jìn)行數(shù)據(jù)的交互的。2 架構(gòu)特點(diǎn):(1)維護(hù)和升級方式比較簡單。(2)成本降低,選擇也會更多。(3)應(yīng)用服務(wù)器運(yùn)行時負(fù)荷重。2.3.5 DIV+CSSDIV+CSS 它是 WEB 的一種設(shè)計(jì)標(biāo)準(zhǔn)模式,同時它也是一種網(wǎng)頁的布局方法。但它與傳統(tǒng)中通過表格(table)布局的方式是有所不同的,它是可以達(dá)到網(wǎng)頁頁面的內(nèi)容與表現(xiàn)相分離的那種效果的。css 是層疊樣式表(Cascading Style Sheets)的縮寫名稱,是用來定義 HTML 元素的表現(xiàn)
28、形式的,css 是網(wǎng)頁設(shè)計(jì)與開發(fā)人員必須掌握的關(guān)鍵技術(shù)之一。它進(jìn)行網(wǎng)頁的統(tǒng)一設(shè)計(jì)與管理,而且只需要通過一個樣式表,就能改變整個布局,只要是修改了樣式表,就可以做到統(tǒng)一全站的同一風(fēng)格的效果顯示。2.4 系統(tǒng)流程圖系統(tǒng)流程圖7 圖 2.1 下訂單流程圖 圖 2.2 訂單管理流程圖2.5 本章小結(jié)本章小結(jié)這個章節(jié)主要是通過兩種角度,從經(jīng)濟(jì)和技術(shù)的角度分析了這個系統(tǒng)的可行性。畫了系統(tǒng)流程圖描繪本系統(tǒng)的各個物理層,對其進(jìn)行了分析解釋,直觀清晰。最后闡述了設(shè)計(jì)的開發(fā)環(huán)境與開發(fā)平臺,介紹了開發(fā)語言與架構(gòu)方法等。8第第 3 章章 系統(tǒng)關(guān)鍵技術(shù)以及方案系統(tǒng)關(guān)鍵技術(shù)以及方案建議本章介紹關(guān)鍵技術(shù)、關(guān)鍵算法分析設(shè)計(jì)以
29、及對原有方法的主要改進(jìn)等。3.1 核心技術(shù)核心技術(shù)1. Java 2. MVC 設(shè)計(jì)模式3. Html5+css3+JavaScript4. SpringMvc+hibernate 框架的使用3.1.1 JavaJava 是可以應(yīng)用于各種移動平臺的,他是一種面向?qū)ο蟪绦蛟O(shè)計(jì)語言。3.1.2 Mvc 設(shè)計(jì)模式設(shè)計(jì)模式Model view control 設(shè)計(jì)模式將以前程序員需要將前后臺工作一起完成的繁重中解脫出來,前臺和后臺可以實(shí)現(xiàn)分離,使后臺程序員只要處理 Control 部分。3.1.3 html5+css3+JavaScript基本的超文本語言(html),采用的是樣式表(CSS) 和腳本
30、語言(JavaScript)。3.2 系統(tǒng)設(shè)計(jì)分析系統(tǒng)設(shè)計(jì)分析系統(tǒng)結(jié)構(gòu)圖 3.1 整體功能結(jié)構(gòu)3.2.1 客戶操作部分客戶操作部分 客戶操作系統(tǒng)部分:實(shí)現(xiàn)了客戶對餐品的最清楚感受與信息的接收;價(jià)格以及品相,售價(jià)的全面了解,并且通過購物車可以實(shí)現(xiàn)對菜品的選擇,挑選,取消 ,以及最后進(jìn)行點(diǎn)餐功能。系統(tǒng)通過定時查詢,將顧客點(diǎn)餐信息實(shí)時傳遞到管理員后臺操作部分。3.2.2 管理員操作部分管理員操作部分 管理員操作系統(tǒng)部分:實(shí)現(xiàn)了管理對整個系統(tǒng)數(shù)據(jù)的一個管理與處理,對賬單的直觀感受,以及可以對實(shí)時訂單進(jìn)行處理操作(增刪查改),對會員顧客信息的管理(增刪查改),對工作人員信息的管理(增刪查改)。3.2.3
31、 數(shù)據(jù)庫部分?jǐn)?shù)據(jù)庫部分 本系統(tǒng)采用的是 Mysql5.5 數(shù)據(jù)庫,下面是數(shù)據(jù)庫中四個表:表 3.1 food 表9字段名 說明類型長度 是否主鍵 允許空 Id 食物 idint20是否foodname 食物名稱 varchar21否否foodprice 食物價(jià)格 varchar22否否 foodtype 食物類型 varchar23否否 commend 好評 int24否是表 3.2 foodlist 表字段名說明類型長度是否主鍵允許空id菜單 idint90是否/自增長tablid餐桌 idint20否否food食物列表vachar999否否price價(jià)格int50否否state狀態(tài)int1
32、0否否表 3.3 用戶表字段名說明類型長度是否主鍵允許空userid用戶 idint20是否username用戶姓名vachar21否否password密碼vachar22否否tel電話vachar23否否表 3.4 工作人員表字段名說明類型長度是否主鍵允許空id工作人員 idint20是否name姓名varchar21是否zan獲得的贊int22是否age年齡int23是否3.3 本章小結(jié)本章小結(jié)通過具體到功能點(diǎn),對象點(diǎn)的項(xiàng)目分析,更充分的體會到餐飲系統(tǒng)的實(shí)用性。10第第 4 章章 軟件設(shè)計(jì)軟件設(shè)計(jì)4.1 購物車實(shí)現(xiàn)原理購物車實(shí)現(xiàn)原理 和超市的購物車不一樣,虛擬世界的購物車更加方便,甚至可以
33、說輕便,因?yàn)椴恍枰涀∧徺I了什么 或者放錯了什么,當(dāng)結(jié)賬的時候可以一目了然的看到你所購買的,只需鼠標(biāo)輕輕一點(diǎn)即可實(shí)現(xiàn)各種功能,本系統(tǒng)所使用的購物車所采用的原理即將所勾選的菜品信息。通過標(biāo)簽自定義類進(jìn)行數(shù)據(jù)傳遞到固定 div 標(biāo)簽中,當(dāng)用戶提交購物車購買時,通過 js 提取此 div 中的信息,并且通過 ajax 將此數(shù)據(jù)傳遞到后臺進(jìn)行解析。4.1.1 購物車前臺實(shí)現(xiàn)原理購物車前臺實(shí)現(xiàn)原理首先是購物車樣式:圖 4.1 購物車樣式11 我的餐桌 商品 份數(shù) 價(jià)格 操作 合計(jì)金額:0元 立即結(jié)算 然后是購物車前臺 JS 原理:(參考文件demowebjsplug_24_mytable_page.
34、js)/Jquery 的 function 寫法$(function()/更新購物車的算法 var updateCart = function() 12 var totalPrice = 0; $(.table_box .foodlist tbody tr).each(function(idx, el) var countString = $(el) .find(.count) .val(), count = parseInt(countString), priceString = $(el).find(.price).text(), price = parseInt(priceString)
35、; console.log(count); console.log(price); totalPrice += price * count; ); $(.pay_stat i).html(totalPrice); /利用增加 div 節(jié)點(diǎn)的方法增加菜品。并且將標(biāo)簽里的值賦進(jìn)去 function addmenu(order) smallcount=order.count*order.price; var litmenu = ; litmenu += + order.dishName +; litmenu += ; litmenu += -+; litmenu += ; litmenu += +s
36、mallcount +; litmenu += ; litmenu += ; var dishTableRows = $(.table_box .foodlist tr); for (var j=0; jdishTableRows.length; j+) /循環(huán)小元素; if (dishTableRows.eq(j).attr(dataid) = order.dishId) /如果要插入的小元素已有;var txtval = parseInt( dishTableRows .eq(j) .children(td) .children(u) .children(.count) .val() );
37、txtval += 1;13dishTableRows .eq(j) .children(td) .children(u) .children(.count) .val(txtval); updateCart();return false; $(.table_box .foodlist tbody).append(litmenu); updateCart(); /點(diǎn)擊小叉去刪除一個選好的菜; $(.table_box .btn-xs).click(function() $(this).closest(tr).remove(); updateCart(); ); $(#shop_menu i).
38、click(function() var order = price: $(this).attr(ary5), count: $(this).attr(ary4), dishName: $(this).attr(ary3), dishId: $(this).attr(ary2), shopName: $(this).attr(ary1), shopId: $(this).attr(ary0) ; / var ary0 = $(this).attr(ary0); / var ary1 = $(this).parents(.menu_list).siblings(h2).text(); / var
39、 ary2 = $(this).attr(ary2); / var ary3 = $(this).text(); / var ary4 = $(this).attr(ary4); / var ary5 = $(this).attr(ary5); / addmenu(ary0,ary1,ary2,ary3,ary4,ary5);addmenu(order); );14 $(.table_box).on(click, .add_btn, function() var txtobj = $(this).siblings(u).children(.count), txtval = parseInt(t
40、xtobj.val();if ($(this).hasClass(minus_btn) if (txtval=1) txtval = 1; else txtval -= 1; ;if ($(this).hasClass(plus_btn) txtval += 1 ;txtobj.val(txtval); updateCart(); ););4.1.2 購物車后臺實(shí)現(xiàn)原理購物車后臺實(shí)現(xiàn)原理本小節(jié)主要描述如何將數(shù)據(jù)傳入后臺并且記錄 傳遞給管理員第一步第一步首先用 JS 想數(shù)據(jù)取出并且通過 ajax 傳入后臺:文件:(demowebjszhou.js):function sendfunction()
41、 /取出在購物車 div 里的所有數(shù)據(jù) var foodname = document.getElementsByName(foodname).length; var foodcount = document.getElementsByName(foodcount).length; var food = document.getElementsByName(foodname); var foodcountvalue = document.getElementsByName(foodcount);var allprice =document.getElementById(allprice).in
42、nerHTML; var list=,;var count=,;/循環(huán)取出數(shù)據(jù) for (var i=0;ifoodname;i+) list=list+foodi.innerHTML+,; count=count+foodcountvaluei.value+,; if(allprice=0) alert(請點(diǎn)餐!) else/將所有數(shù)據(jù)通過 ajax 傳遞到后臺 $.ajax(15 type:post, url:/sendfood.do, dataType:text, data:foodlist1:list ,foodcount1:count,total:allprice ); alert(
43、請耐心等待美味!);window.location.reload(); 第二步:第二步:將數(shù)據(jù)解析好 并且存入數(shù)據(jù)庫,標(biāo)記為未處理的訂單 文件:srccomzhucontrolhomepageaction.javaRequestMapping(value=sendfood )/注解綁定一個 actionpublic String sendfood(RequestParam(value=foodlist1) String foodlist1,RequestParam(value=foodcount1) String foodcount1,RequestParam(value=total)int
44、total ,Model model)/進(jìn)行數(shù)據(jù)解析 String allsql=; String sourceStrArray = foodlist1.split(,); String sourceStrArray2=foodcount1.split(,); for (int i = 0; i sourceStrArray.length; i+) allsql+=sourceStrArrayi+*+sourceStrArray2i+ ; System.out.print(allsql);foodlistactiondao.insertfoodlist(allsql,total);return
45、 home;數(shù)據(jù)庫操作方法:/申請訂單 public void insertfoodlist(String food,int price) Session ss= sessionFactory.getCurrentSession(); Transaction tx=ss.beginTransaction(); Query addfoodlist=ss.createSQLQuery(insert into foodlist (tableid,food,price,state) values(+1+,+food+,+price+,+1+); addfoodlist.executeUpdate();
46、 mit(); 164.2 后臺數(shù)據(jù)的排序后臺數(shù)據(jù)的排序訂單需要按照先后順序排序以此來達(dá)到查看訂單的先后。以此進(jìn)行更好的處理4.2.1 訂單的處理訂單的處理 數(shù)據(jù)庫的設(shè)計(jì):create table foodlist(id int(90) not null auto_increment,tableid int(20),food varchar(999),price int(50),state int(10),primary key (id);通過 hibernate 處理 id 為主鍵,并且是自增長,并且進(jìn)行 hibernate 分頁,通過 id 來排序/ public List foodlis
47、tfenye( int startpage) Session ss= sessionFactory.getCurrentSession(); Transaction tx=ss.beginTransaction(); Query findclassroom=ss.createQuery(from Foodlist foodlist where foodlist.state=1 order by foodlist.id desc); Query ls=findclassroom.setFirstResult(startpage).setMaxResults(8); java.util.List
48、lt= ls.list(); mit(); return lt;管理員可以對訂單進(jìn)行 刪除 接單的操作具體關(guān)鍵代碼如下: /刪除 foodlist public void deletefoodlistbyid(int id) Session ss= sessionFactory.getCurrentSession(); Transaction tx=ss.beginTransaction(); Query finduser=ss.createQuery(delete Foodlist foodlist where foodlist.id=+id); finduser.executeUpdate
49、();17 mit();前臺代碼: 待定 接單 刪除訂單 通過 JS 控制接單的數(shù)據(jù) 并且打印 function printlist(id) bdhtml=window.document.body.innerHTML; sprnstr=; eprnstr=; prnhtml=bdhtml.substr(bdhtml.indexOf(sprnstr)+17); prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr); sprnstr1=; eprnstr1=; prnhtml1=bdhtml.substr(bdhtml.indexOf(sprns
50、tr1)+17); prnhtml1=prnhtml1.substring(0,prnhtml1.indexOf(eprnstr1); window.document.body.innerHTML=prnhtml1+prnhtml+點(diǎn)此返回; window.print(); $.ajax( type:post, url:/accept.do,data:id:id );18window.location.reload(); 圖 4.2 菜單打印圖通過 JS 刪除訂單: function deletelist(id) $.ajax( type:post, url:/deletefoodlist.d
51、o,data:id:id ); $(#+id).modal(hide);alert(操作成功); window.location.reload(); 194.2.2 查看所有訂單查看所有訂單管理員可以查看所有訂單:圖 4.3 最新訂單列表具體實(shí)現(xiàn)方法:/所有訂單分頁 public List allfoodlistfenye( int startpage) Session ss= sessionFactory.getCurrentSession(); Transaction tx=ss.beginTransaction(); Query findclassroom=ss.createQuery(
52、from Foodlist foodlist where foodlist.state=2); Query ls=findclassroom.setFirstResult(startpage).setMaxResults(8); java.util.List lt= ls.list(); mit(); return lt; 4.3 員工和會員管理員工和會員管理4.3.1 員工管理員工管理我們可以對員工進(jìn)行增刪查改的操作:如下圖所示20圖 4.4 增加員工增加 div 是用蒙版效果制作的 div可以隨時招出和隱藏定義用戶的 id 不可重復(fù) 并且并需填寫 關(guān)鍵代碼如下: function addw
53、orker() var newid=document.getElementById(newid).value; var newname=document.getElementById(newname).value; var newage=document.getElementById(newage).value; var div1=document.getElementById(message1);var div2=document.getElementById(message2); var div3=document.getElementById(message3); var divx=do
54、cument.getElementById(messagex); if(newid=) div1.style.display=block; setInterval(deletediv(),10000); if(newname=) div2.style.display=block; setInterval(deletediv(),10000);21 if(newage=) div3.style.display=block; setInterval(deletediv(),10000); if(newage!=&newid!=&newname!=) $.ajax( type:pos
55、t, url:/findworker.do, data:id:newid,success:function(data) if(data.workercount=1) $.ajax( type:post, url:/addworker.do, data:workerid:newid,workername:newname,workerage:newage ); alert(添加成功); $(#adddialog).modal(hide); document.getElementById(newworker).reset(); window.location.reload(); else divx.
56、style.display=block; ); 刪除 修改 如下:function deletediv() var div1 = document.getElementById(message1); var div2 = document.getElementById(message2); var divx = document.getElementById(messagex); var div3 = document.getElementById(message3); div1.style.display = none;22 div2.style.display = none div3.st
57、yle.display = none divx.style.display = none function getworkerinfo(id) $.ajax( type:post, url:findworkerinfo.do, data:id:id,success:function(data) document.getElementById(editid).value=data.workerid; document.getElementById(editname).value=data.workername; document.getElementById(editage).value=dat
58、a.workerage; ) function editworker() var div1 = document.getElementById(message10); var div2 = document.getElementById(message20); var divx = document.getElementById(messagex0); var div3 = document.getElementById(message30); var editid =document.getElementById(editid).value; var editname= document.g
59、etElementById(editname).value; var editage= document.getElementById(editage).value; if(editage=) div3.style.display=block; if(editname=) div2.style.display=block; if(editid=)23 div1.style.display=block; if(editid!=&editage!=&editname!=) $.ajax( type:post, url:/modifyworker.do, data:id:editid
60、,name:editname,age:editage );alert(編輯成功); $(#editinfo).modal(hide); window.location.reload(); 我們可以通過點(diǎn)贊對員工的表現(xiàn)進(jìn)行簡單評估:圖 4.5 員工點(diǎn)評點(diǎn)贊特效關(guān)鍵代碼如下: ;(function($) $.extend( tipsBox: function(options) options = $.extend( obj: null, /jq 對象,要在那個 html 標(biāo)簽上顯示 str: +1, /字符串,要顯示的內(nèi)容;也可以傳一段 html,如: +124 startSize: 12px, /動畫開始的文字大小 endSize
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 商品櫥柜托管合同模板
- 保管合同模板格式
- 農(nóng)藥化肥銷售合同范例
- 2024年園林景觀設(shè)計(jì)與養(yǎng)護(hù)一體化服務(wù)合同
- 2024年23跨境電子商務(wù)服務(wù)合同
- 2024年加工原料購銷合同:數(shù)量與價(jià)格
- 2024年夏令營醫(yī)療救護(hù)協(xié)議
- (2024版)勞動合同主體變更及保密協(xié)議書
- 建筑咨詢建造師合作協(xié)議
- 2024年醫(yī)療器械研發(fā)與生產(chǎn)合同協(xié)議
- 堆垛機(jī)安裝指南演示文稿
- 退休歡送會上本人感人講話稿(5篇)
- 《一切都是最好的安排》讀書筆記思維導(dǎo)圖PPT模板下載
- 識圖培訓(xùn)學(xué)習(xí)課件
- 小議“雙減”政策及其落實(shí)措施效果研究
- 錐坡工程量計(jì)算(支持斜交、溜坡計(jì)算)
- 自然災(zāi)害風(fēng)險(xiǎn)管理
- 中國智庫名錄類別索引-社會智庫
- 情緒的身體密碼-心理健康教育教案
- GB/T 4339-1999金屬材料熱膨脹特征參數(shù)的測定
- GB/T 15706-2012機(jī)械安全設(shè)計(jì)通則風(fēng)險(xiǎn)評估與風(fēng)險(xiǎn)減小
評論
0/150
提交評論