餐飲信息管理系統(tǒng)的開發(fā)與設(shè)計(jì)說明_第1頁
餐飲信息管理系統(tǒng)的開發(fā)與設(shè)計(jì)說明_第2頁
餐飲信息管理系統(tǒng)的開發(fā)與設(shè)計(jì)說明_第3頁
餐飲信息管理系統(tǒng)的開發(fā)與設(shè)計(jì)說明_第4頁
餐飲信息管理系統(tǒng)的開發(fā)與設(shè)計(jì)說明_第5頁
已閱讀5頁,還剩42頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、 計(jì)算機(jī)與軟件學(xué)院畢業(yè)設(shè)計(jì)(論文)誠信承諾我謹(jǐn)在此承諾:本人所寫的畢業(yè)論文餐飲信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),系本人獨(dú)立完成,沒有抄襲行為,凡涉與其他作者的觀點(diǎn)和材料,均作了注釋與說明,若有不實(shí),后果由本人承擔(dān)。承諾人(簽名):年 月日摘 要隨著經(jīng)濟(jì)的發(fā)展社會的進(jìn)步,去飯店過節(jié)聚會成為了一種新的時(shí)尚。因此每逢過年過節(jié),飯店都會迎來大量的顧客,隨之而來的就是大量的預(yù)定和結(jié)算信息將會使得飯店的工作人員不堪重負(fù),并且不可避免的會出現(xiàn)這樣或那樣的錯(cuò)誤。餐飲信息管理軟件的誕生可以為他們提供便捷的管理服務(wù)。并且?guī)缀鯙榱愕腻e(cuò)誤率也使得餐館可以更好的為顧客服務(wù)。它不僅可以為餐館降低人力資源的付出,節(jié)省了成本,而且也

2、可以提升自身的形象,使餐廳迎來更多的食客。本系統(tǒng)使用了VB.NET技術(shù)并采用了C/S架構(gòu),飯店服務(wù)人員使用它可以快速準(zhǔn)確地為客戶服務(wù),人性化的系統(tǒng)界面設(shè)計(jì)使得軟件便于使用者的快速掌握,計(jì)算機(jī)幾乎為零的錯(cuò)誤率和高效的處理能力使得原本繁瑣的餐飲管理變得更加科學(xué)、快捷以與人性化。使用本系統(tǒng),員工將可以快速地編輯顧客資料信息,并且為客戶提供訂餐打折和充值服務(wù)。管理員使用本系統(tǒng),既可以完成員工的所有工作,又可以更好地管理員工,精準(zhǔn)地了解員工賬面的資金情況。除了這些,管理員還可以設(shè)定餐廳的菜單信息和折扣程度,從而使得管理員對餐廳的運(yùn)營情況可以全面掌控。關(guān) 鍵 字:餐飲管理;VB.NET;C/S架構(gòu)41 /

3、 47AbstractWith economic development and social progress, to the hotel festive gathering into a new fashion. Therefore, during festive seasons, the hotel will welcome a large number of customers, followed by a large number of reservations and billing information will make the hotel the staff overwhe

4、lmed, and the inevitable will occur or that such errors. Food information management software can provide them with the birth of convenient management services. And almost zero error rate makes the restaurant better for customers. It not only can reduce the human resources for restaurants to pay, co

5、st savings, but also can enhance their image, so that more diners usher restaurant itself. The system uses VB.NET technology and uses C / S architecture, the hotel staff to use it to quickly and accurately to customer service, human system interface design allows the software to facilitate the users

6、 to grasp, the computer is almost zero error rate and efficient processing power makes the restaurant management had become more complicated scientific, efficient and humane. With this system, employees will be able to quickly edit the customer data and information, and provide customers with discou

7、nts and top-ordering. Administrators use the system, not only to complete all the work of employees, but also better management of staff, accurate book about employees of funds. In addition to these, the administrator can also set the restaurant's menu of information and discount levels, making

8、the operations of the restaurant managers to fully control. Keywords: Food and Beverage Management; VB.NET; C / S architecture目 錄第一章餐飲信息管理系統(tǒng)的開發(fā)背景11.1 開發(fā)背景11.2 開發(fā)工具和相關(guān)技術(shù)簡介1第二章系統(tǒng)定義與系統(tǒng)需求42.1 系統(tǒng)定義42.2 系統(tǒng)需求分析4第三章系統(tǒng)總體設(shè)計(jì)63.1 系統(tǒng)功能模塊的劃分63.2 管理員權(quán)限模塊劃分83.3 員工權(quán)限模塊劃分83.4 系統(tǒng)流程分析83.5 數(shù)據(jù)庫設(shè)計(jì)93.5.1 數(shù)據(jù)庫規(guī)劃93.5.2 E-R圖10

9、3.5.3 數(shù)據(jù)表的設(shè)計(jì)11第四章系統(tǒng)詳細(xì)設(shè)計(jì)154.1 數(shù)據(jù)庫154.1.1 數(shù)據(jù)庫的154.1.2 Is_SQL_Cmd方法154.1.3 SQL_Ada方法164.1.4 ExecCmd過程164.2 系統(tǒng)的登錄與注銷174.2.1 用戶登陸模塊的實(shí)現(xiàn)174.2.2 用戶注銷模塊的實(shí)現(xiàn)184.3 客戶信息管理194.3.1 客戶信息的添加194.3.2 圖像的處理204.3.3 客戶信息的修改214.3.4 客戶信息的刪除234.3.5 客戶信息的查詢244.4 添加預(yù)定信息264.4.1 日期時(shí)間桌號的核對274.4.2 打折信息處理274.4.3 取消預(yù)定信息284.4.4 預(yù)定信息

10、查詢294.5充值與結(jié)算314.5.1 客戶充值314.5.2 客戶結(jié)算334.6 折扣設(shè)定334.7 用戶管理344.7.1 用戶的添加344.7.2 用戶的刪除34總結(jié)37辭39參考文獻(xiàn)40第一章 餐飲信息管理系統(tǒng)的開發(fā)背景1.1 開發(fā)背景傳統(tǒng)的餐飲管理現(xiàn)在已經(jīng)很難應(yīng)對當(dāng)今社會對餐飲業(yè)的管理要求,它與現(xiàn)在的基于計(jì)算機(jī)技術(shù)發(fā)展起來的餐飲信息管理系統(tǒng)對比,有以下幾大不同:便捷性方面:傳統(tǒng)的人工對餐飲信息進(jìn)行管理,如:顧客信息管理,菜單信息管理和訂餐信息的管理,都是很繁瑣的過程,其中的任何一步過程都要浪費(fèi)大量的時(shí)間,而隨著計(jì)算機(jī)技術(shù)的發(fā)展,這些原本繁瑣的問題都會變得輕而易舉。安全性方面:傳統(tǒng)的紙

11、質(zhì)記錄方式查詢起來很麻煩,而且性很差,并且容易磨損丟失,對于會員余額的管理是非常不利的。但如果采用的是電子文檔的方式進(jìn)行數(shù)據(jù)的保存,這一切都變得非常簡便,你可以方便的對數(shù)據(jù)信息進(jìn)行備份查詢,并且數(shù)據(jù)的安全性可以得到最大程度的保證。準(zhǔn)確性方面:傳統(tǒng)的人工記賬容易出錯(cuò),如果采用這種方式來處理現(xiàn)在的含有打折信息的消費(fèi)結(jié)算會使得工作量很大,如果計(jì)算出錯(cuò)將嚴(yán)重影響自己的聲譽(yù)。而如果使用軟件系統(tǒng),這些問題都將不會出現(xiàn),計(jì)算機(jī)的錯(cuò)誤率幾乎為零。鑒于以上傳統(tǒng)的人工管理方式的種種缺陷,我設(shè)計(jì)了方便中小級別餐飲企業(yè)使用的應(yīng)用程序,通過它,管理者可以基本解決以上所遇到的種種問題,并且更加科學(xué)的對老客戶進(jìn)行打折,而且

12、添加了主顧權(quán)限的不同設(shè)計(jì)使得它更加方便雇主對雇員的管理與監(jiān)督。1.2 開發(fā)工具和相關(guān)技術(shù)簡介開發(fā)工具:硬件:ThinkPad筆記本軟件:Windows XPMicrosoft Visual Studio 2008Microsoft SQL Server 2005本系統(tǒng)是采用 VB.NET技術(shù)結(jié)合SQL Server數(shù)據(jù)庫設(shè)計(jì)并實(shí)現(xiàn)的。VB.NET的開發(fā)工具為Microsoft Visual Studio 2008,數(shù)據(jù)庫使用的是SQL Server 2005 Express EditionVB.NETVisual Basic.NET 是從 Visual Basic 語言演變而來的,是一種為高效

13、地生成類型安全和面向?qū)ο蟮膽?yīng)用程序而設(shè)計(jì)的語言。Visual Basic 允許開發(fā)人員開發(fā)面向 Windows、Web 和移動(dòng)設(shè)備的程序。與所有面向 Microsoft .NET Framework 的語言一樣,使用 Visual Basic 編寫的程序都具有安全性和語言互操作性方面的優(yōu)點(diǎn)。這一代 Visual Basic 延續(xù)了為您提供一種簡單快捷的方法來創(chuàng)建基于 .NET Framework 的應(yīng)用程序的傳統(tǒng)。Microsoft Visual Studio 2008Microsoft Visual Studio 2008 使開發(fā)人員能夠快速創(chuàng)建高質(zhì)量、用戶體驗(yàn)豐富而又緊密聯(lián)系的應(yīng)用程序,充

14、分展示了 Microsoft 開發(fā)智能客戶端應(yīng)用程序的構(gòu)想。借助 Visual Studio 2008,采集和分析信息將變得更為簡單便捷,業(yè)務(wù)決策也會因此變得更為有效。任何規(guī)模的組織都可以使用 Visual Studio 2008 快速創(chuàng)建能夠利用 Windows Vista和 2007 Office system 的更安全、更易于管理并且更可靠的應(yīng)用程序。 Visual Studio 2008 包括各種增強(qiáng)功能,例如可視化設(shè)計(jì)器(使用 .NET Framework 3.5 加速開發(fā))、對 Web 開發(fā)工具的大量改進(jìn),以與能夠加速開發(fā)和處理所有類型數(shù)據(jù)的語言增強(qiáng)功能。Visual Studio

15、 2008 為開發(fā)人員提供了所有相關(guān)的工具和框架支持,幫助創(chuàng)建引人注目的、令人印象深刻并支持 AJAX 的 Web 應(yīng)用程序。開發(fā)人員能夠利用這些豐富的客戶端和服務(wù)器端框架輕松構(gòu)建以客戶為中心的 Web 應(yīng)用程序,這些應(yīng)用程序可以集成任何后端數(shù)據(jù)提供程序、在任何當(dāng)前瀏覽器運(yùn)行并完全訪問 ASP.NET 應(yīng)用程序服務(wù)和 Microsoft 平臺。SQL Server 2005 Express Edition(僅適用于 32 位)SQL Server Express 是一個(gè)免費(fèi)、易用且便于管理的數(shù)據(jù)庫。SQL Server Express 與 Microsoft Visual Studi

16、o 2005 集成在一起,可以輕松開發(fā)功能豐富、存儲安全、可快速部署的數(shù)據(jù)驅(qū)動(dòng)應(yīng)用程序。SQL Server Express 是免費(fèi)的,可以再分發(fā)(受制于協(xié)議),還可以起到客戶端數(shù)據(jù)庫以與基本服務(wù)器數(shù)據(jù)庫的作用。SQL Server Express 是低端 ISV、低端服務(wù)器用戶、創(chuàng)建 Web 應(yīng)用程序的非專業(yè)開發(fā)人員以與創(chuàng)建客戶端應(yīng)用程序的編程愛好者的理想選擇。C/S結(jié)構(gòu)C/S(Client/Server或客戶/服務(wù)器模式):Client和Server常常分別處在相距很遠(yuǎn)的兩臺計(jì)算機(jī)上,Client程序的任務(wù)是將用戶的要求提交給Server程序,再將Server程序返回的結(jié)果以特定

17、的形式顯示給用戶;Server程序的任務(wù)是接收客戶程序提出的服務(wù)請求,進(jìn)行相應(yīng)的處理,再將結(jié)果返回給客戶程序。 C/S(Client/Server)結(jié)構(gòu),即大家熟知的客戶機(jī)和服務(wù)器結(jié)構(gòu)。它是軟件系統(tǒng)體系結(jié)構(gòu),通過它可以充分利用兩端硬件環(huán)境的優(yōu)勢,將任務(wù)合理分配到Client端和Server端來實(shí)現(xiàn),降低了系統(tǒng)的通訊開銷。目前大多數(shù)應(yīng)用軟件系統(tǒng)都是Client/Server形式的兩層結(jié)構(gòu),由于現(xiàn)在的軟件應(yīng)用系統(tǒng)正在向分布式的Web應(yīng)用發(fā)展,Web和Client/Server 應(yīng)用都可以進(jìn)行同樣的業(yè)務(wù)處理,應(yīng)用不同的模塊共享邏輯組件;因此,部的和外部的用戶都可以訪問新的和現(xiàn)有的應(yīng)用系統(tǒng),通過現(xiàn)有應(yīng)

18、用系統(tǒng)中的邏輯可以擴(kuò)展出新的應(yīng)用系統(tǒng)。這也就是目前應(yīng)用系統(tǒng)的發(fā)展方向。 第二章 系統(tǒng)定義與系統(tǒng)需求2.1 系統(tǒng)定義計(jì)算機(jī)技術(shù)產(chǎn)生以后,迅速在管理領(lǐng)域得到了廣泛的應(yīng)用。20世紀(jì)60年代,美國經(jīng)營管理協(xié)會與其事業(yè)部第一次提出了建立管理信息系統(tǒng)的設(shè)想,即建立一個(gè)有效的信息系統(tǒng),使得各級管理部門都能了解本單位的一切有關(guān)經(jīng)營活動(dòng),為各級決策人員提供所需要的信息。對于信息管理系統(tǒng)的定義,目前還沒有一個(gè)統(tǒng)一的認(rèn)識。由于餐飲管理系統(tǒng)是基于C/S模式,本文更傾向于采納下述定義:餐飲信息管理系統(tǒng)是通過對整個(gè)餐飲服務(wù)流程的管理,實(shí)現(xiàn)業(yè)務(wù)的整體優(yōu)化,提高企業(yè)運(yùn)行控制和外部交易過程的效率的管理工具。2.2 系統(tǒng)需求分析

19、現(xiàn)在的管理系統(tǒng)不僅要有漂亮的用戶界面,更要有嚴(yán)謹(jǐn)?shù)囊?guī)劃,注重每一個(gè)細(xì)小的環(huán)節(jié)。這樣才能使得在電子交易時(shí)避免不必要錯(cuò)誤發(fā)生。本系統(tǒng)的設(shè)計(jì)與實(shí)施迎合了二十一世紀(jì)經(jīng)濟(jì)高速發(fā)展、人們的生活節(jié)奏日益加快以與現(xiàn)代餐飲業(yè)越來越發(fā)達(dá)和便捷這一現(xiàn)狀。它將極方便食客的就餐,同時(shí)也有利于我們的管理和服務(wù)。同時(shí),我們的餐飲信息管理系統(tǒng)還能幫助餐廳降低錯(cuò)誤率,擴(kuò)大營業(yè)圍,增加知名度等。為了使系統(tǒng)更加人性化,便于管理員管理,此系統(tǒng)的用戶將分為兩種類型,一個(gè)是針對員工的餐飲管理系統(tǒng),另一個(gè)是針對管理員(店主)的餐飲管理系統(tǒng)。員工使用本餐飲信息管理系統(tǒng)應(yīng)可以實(shí)現(xiàn)以下功能:1. 添加修改查詢客戶會員信息(修改客戶信息需客戶確認(rèn)

20、)2. 查詢菜單3. 添加查詢預(yù)定信息,為老顧客打折4. 客戶可以在自己的會員賬戶里充值5. 顧客可以用現(xiàn)金買單也可以從會員賬戶里扣取管理員使用本餐飲信息管理系統(tǒng)應(yīng)可以實(shí)現(xiàn)以下功能:1. 添加修改查詢客戶會員信息(修改客戶信息需客戶確認(rèn))2. 添加修改查詢菜單信息,最好能看到菜品圖片3. 添加查詢預(yù)定信息,為老顧客打折4. 客戶可以在自己的會員賬戶里充值5. 顧客可以用現(xiàn)金買單也可以從會員賬戶里扣取6. 設(shè)定具體的打折方法7. 添加職員信息,權(quán)限也可以定為管理員。8. 可以查詢使用者的現(xiàn)金收款金額除了實(shí)現(xiàn)以上功能外,本系統(tǒng)還需要方便用戶地使用,使得用戶可以很快地熟練掌握,從而可以讓用戶快速的投

21、入工作。并且要避免邏輯錯(cuò)誤的出現(xiàn)。第三章 系統(tǒng)總體設(shè)計(jì)3.1 系統(tǒng)功能模塊的劃分根據(jù)以上需求,餐飲信息管理系統(tǒng)功能被劃分為以下模塊,如圖3.1所示:用戶登錄員工店主系統(tǒng)登錄退出客戶信息管理菜單信息管理充值結(jié)算管理折扣信息管理員工信息管理幫助預(yù)定信息管理圖3.1 餐飲信息管理系統(tǒng)功能模塊圖系統(tǒng)登錄退出模塊:本模塊是被用于用戶登錄,注銷和退出。模塊根據(jù)用戶的不同類型賦予用戶不同的管理權(quán)限。低等級的用戶不可訪問高等級用戶的個(gè)別功能,而高等級用戶可以使用低等級用戶的所有系統(tǒng)功能??蛻粜畔⒐芾砟K:本模塊將餐飲企業(yè)松散的客戶資源加以整合,通過標(biāo)準(zhǔn)化的管理操作,將客戶資料加以收集。用戶使用本模塊可以方便的

22、查詢客戶的所有資料和客戶消費(fèi)信息。并且特意添加了圖像模塊,使得用戶的圖像信息加以保留,方便使用者的查詢和記憶,當(dāng)客戶再次光臨時(shí),服務(wù)人員可以直接認(rèn)出客戶,這將使得客戶感到無微不至的關(guān)懷,提升餐廳的品牌形象??蛻舻馁Y料變更需經(jīng)客戶的確認(rèn),以避免出現(xiàn)因失誤操作導(dǎo)致的客戶信息流失。菜單信息管理模塊:本模塊將餐廳的菜品信息通過標(biāo)準(zhǔn)化的管理操作加以整合,使得菜品的價(jià)格、配料、功效和圖片可以完全呈現(xiàn)在客戶面前,使得客戶可以方便地選擇自己想要的食物。本模塊的分權(quán)限設(shè)計(jì)將限制普通員工對菜單信息加以修改,以防止菜單價(jià)格被惡意修改,以此保證餐廳正常可靠的運(yùn)營。訂餐信息管理模塊:通過訂餐模塊使得傳統(tǒng)餐飲訂餐過程變得

23、輕松方便,訂餐信息管理模塊會在客戶訂餐的同時(shí)核對客戶所預(yù)定的餐桌的使用情況,避免傳統(tǒng)訂餐易出現(xiàn)的預(yù)定重合問題。并且本模塊在客戶訂餐的同時(shí)會給出已預(yù)定的菜品價(jià)格,幫助客戶開心合理地消費(fèi)。模塊中包含的打折服務(wù)是本模塊的一大特色。它將參考客戶以往的消費(fèi)情況和管理員設(shè)定的折扣程度對客戶進(jìn)行打折服務(wù)。而不是傳統(tǒng)餐飲打折中的沒有規(guī)律和憑據(jù)以詢。后臺的廚房通過本系統(tǒng)可以清楚地知道客戶預(yù)定的菜品,這樣就節(jié)省了大量用于菜品核對的時(shí)間,提高了廚房的效率,縮短了廚房上菜的時(shí)間。減少了不必要的人力物力財(cái)力資源的消耗,降低餐廳的運(yùn)營成本,使餐廳以更好性價(jià)比服務(wù)于消費(fèi)者,消費(fèi)者可以得到更好的消費(fèi)體驗(yàn)。充值結(jié)算管理模塊:通

24、過此模塊,用戶可以方便的為客戶提供充值結(jié)算服務(wù),充值收取的現(xiàn)金將會計(jì)入用戶的收款現(xiàn)金中,便于管理員結(jié)算時(shí)核對收款金額。結(jié)算方式分為兩種,一種是現(xiàn)金結(jié)算,一種是賬戶余額結(jié)算,現(xiàn)金結(jié)算的收款金額會計(jì)入用戶的收款現(xiàn)金,而賬戶余額結(jié)算的金額會從客戶的賬戶里扣除。折扣信息管理模塊:本模塊只限于管理員使用,通過它可以設(shè)定為客戶打折時(shí)用到的折扣程度員工信息管理模塊:本模塊只限于管理員使用,管理員使用它,可以添加刪除用戶。用戶類型分為店長(管理員)和職員。管理員刪除用戶時(shí),如果要?jiǎng)h除的是普通職員,系統(tǒng)將直接執(zhí)行命令,如果要?jiǎng)h除的是管理員賬戶,系統(tǒng)會先查看剩下的管理員賬戶數(shù)量,最少保留一個(gè)管理員賬戶,以便下次的

25、登錄。如果刪除的用戶是管理員本人,則在刪除賬戶后,系統(tǒng)將會要求使用者重新登錄。3.2 管理員權(quán)限模塊劃分管理員權(quán)限劃分如圖3.2所示:管理員權(quán)限系統(tǒng)登錄退出顧客信息管理菜單信息管理充值結(jié)算管理折扣信息管理員工信息管理幫助預(yù)定信息管理圖3.2 店長權(quán)限模塊圖管理員使用本系統(tǒng)將能使用系統(tǒng)的所有功能。3.3 員工權(quán)限模塊劃分員工權(quán)限劃分如圖3.3所示:員工權(quán)限系統(tǒng)登錄退出顧客信息管理菜單信息查詢充值結(jié)算管理幫助預(yù)定信息管理圖3.3 雇員權(quán)限模塊圖員工使用本系統(tǒng)可以使用除了菜單信息編輯、折扣信息管理模塊和員工信息管理模塊之外的所有功能。3.4 系統(tǒng)流程分析系統(tǒng)流程分析如圖3.4所示:用戶登錄員工店主客

26、戶添加維護(hù)客戶信息添加客戶的預(yù)定信息客戶買單現(xiàn)金賬戶余額賬戶充值消費(fèi)金額增加賬戶升級打折更多收款現(xiàn)金金額增加收款金額查看折扣設(shè)定食譜管理員工管理圖3.4 系統(tǒng)流程分析流程圖簡介:員工登錄系統(tǒng)后為客戶添加基本信息,客戶可以根據(jù)需要在開通的賬戶里充值(增加用戶的收款金額)??蛻敉ㄟ^餐飲信息管理系統(tǒng)進(jìn)行訂餐(老用戶在此環(huán)節(jié)中可能會享受打折服務(wù))??蛻粲猛瓴秃髞淼椒?wù)臺買單,用戶可以選擇使用現(xiàn)金或者從用戶余額里扣除,支付成功會增加客戶的已消費(fèi)金額。若余額不足,系統(tǒng)將會提示,那么客戶只能使用現(xiàn)金支付。使用現(xiàn)金支付的話會增加用戶的收款金額。管理員登錄的話可以使用員工的所有功能,而且可以設(shè)定為客戶打折的折扣

27、程度和添加菜單,以與管理員工賬戶。3.5 數(shù)據(jù)庫設(shè)計(jì)3.5.1 數(shù)據(jù)庫規(guī)劃根據(jù)以上模塊劃分圖分析,針對餐飲信息管理系統(tǒng),分別對用戶、客戶、食譜、預(yù)定、折扣這幾個(gè)實(shí)體進(jìn)行詳細(xì)的調(diào)研和分析。數(shù)據(jù)庫的設(shè)計(jì)采用一庫多表式設(shè)計(jì)。即設(shè)計(jì)了一個(gè)數(shù)據(jù)庫。把每個(gè)使用到的獨(dú)立的對象設(shè)計(jì)為獨(dú)立的應(yīng)用實(shí)體。3.5.2 E-R圖用戶(User)用戶編號用戶密碼用戶類型XX號用戶XX用戶 收款金額圖3.5 用戶E-R圖主要存儲一些用戶信息,如用戶的賬號、密碼和類型地點(diǎn)等等,主要用于用戶登錄,添加客戶和添加預(yù)定時(shí)會使用到用戶信息??蛻簦╟ustomer)客戶編號客戶地址客戶密碼客戶XX添加時(shí)間賬戶余額已用金額客戶地址客戶照

28、片客戶 客戶手機(jī)用戶編號客戶生日圖3.6 客戶E-R圖主要存儲一些客戶信息,如客戶的賬號、密碼、聯(lián)系方式和消費(fèi)情況等等,主要用于客戶訂餐、充值和結(jié)算,使用于添加預(yù)定。食譜(food)食譜名稱價(jià)格食譜功效食譜配料食譜照片圖3.7 食譜E-R圖主要存儲一些食譜信息,如食譜的名稱、價(jià)格和照片等等,主要用于客戶訂餐,使用于添加預(yù)定。預(yù)定(YuDing)XX號消費(fèi)金額客戶XX日期時(shí)間用戶編號桌號預(yù)定餐點(diǎn)圖3.8 預(yù)定E-R圖主要存儲一些預(yù)定信息,如客戶的賬號、預(yù)定的時(shí)間、桌號和菜單等等,主要用于記錄客戶的預(yù)定信息,會使用到用戶、客戶、菜單和折扣信息。折扣(discount)折扣程度已消費(fèi)金額圖3.9 折

29、扣E-R圖存儲管理員(店主)設(shè)定的打折信息,用來計(jì)算打折后的應(yīng)付金額,使用在添加預(yù)定時(shí)打折。3.5.3 數(shù)據(jù)表的設(shè)計(jì)1、 user(用戶表)表3.1 user序號字段名稱字段描述字段類型長度備注1user_id用戶編號char20不允許空2Pwd用戶密碼char20不允許空3Style用戶類型nchar20不允許空4Id用戶號char20不允許空5Name用戶char20不允許空6Tel用戶Char20不允許空7Money收款金額money允許空用戶表主要用于存儲一些用戶信息,如用戶的賬號、密碼和類型地點(diǎn)等等,主要用于用戶登錄,添加客戶和添加預(yù)定時(shí)會使用到用戶信息來記錄經(jīng)手的用戶,字段mone

30、y用于記錄用戶的收款金額,便于結(jié)算時(shí)對收款現(xiàn)金的核對。2、 customer(客戶表)表3.2 customer序號字段名稱字段描述字段類型長度備注1Name客戶char20不允許空2Id客戶編號nchar20不允許空3Address客戶地址char50不允許空4Birthday客戶生日nchar20不允許空5Pwd客戶密碼nchar20不允許空6Addtime添加時(shí)間nchar20不允許空7Money賬戶余額money不允許空8usedmoney已用金額money不允許空9Photo客戶照片image允許空10Tel客戶nchar20允許空11mobilephone客戶手機(jī)nchar20不允

31、許空12Userid用戶編號nchar10不允許空客戶表主要用于存儲一些客戶信息,如客戶的賬號、密碼、聯(lián)系方式和消費(fèi)情況等等,主要用于客戶訂餐、充值和結(jié)算,字段money用于儲存賬戶余額,在使用充值和賬戶余額支付時(shí)會使用到它。字段usedmoney用于記錄客戶的消費(fèi)情況,為客戶打折時(shí)會使用到它。3、 food (食譜表)表3.3 food序號字段名稱字段描述字段類型長度備注1Name食譜名稱nchar20不允許空2Price價(jià)格money不允許空3Photo食譜照片image允許空4Efficacy食譜功效nchar50允許空5Formula食譜配料nchar50允許空食譜表主要用于存儲一些食

32、譜信息,如食譜的名稱、價(jià)格和照片等等,主要用于客戶訂餐,使用于添加預(yù)定。字段Price記錄的是食物的價(jià)格。當(dāng)客戶預(yù)定餐點(diǎn)時(shí),系統(tǒng)使用它來算費(fèi)用。4、 YuDing(預(yù)定表)表3.4 YuDing序號字段名稱字段描述字段類型長度備注1Tableid桌號nchar10不允許空2Date日期nchar20不允許空3Time時(shí)間nchar10不允許空4Name客戶nchar10不允許空5customerid客戶號nchar10不允許空6Userid用戶編號nchar10不允許空7Food預(yù)定餐點(diǎn)nvarcharMAX不允許空8Money消費(fèi)金額money不允許空預(yù)定表主要用于存儲一些預(yù)定信息,如客戶的

33、賬號、預(yù)定的時(shí)間、桌號和菜單等等,主要用于記錄客戶的預(yù)定信息,會使用到用戶、客戶、菜單和折扣信息。當(dāng)系統(tǒng)預(yù)定餐點(diǎn)時(shí),會從其他各表中調(diào)出需要的信息,經(jīng)過計(jì)算和處理后,將最終信息儲存到Y(jié)uDing表,該表和其它各表都有緊密的聯(lián)系。5、 discount(折扣表)表3.5 discount序號字段名稱字段描述字段類型長度備注1usedmoney已消費(fèi)金額char10不允許空2Discount折扣程度char10不允許空折扣表用于存儲管理員(店主)設(shè)定的打折信息,用來計(jì)算打折后的應(yīng)付金額,使用在添加預(yù)定時(shí)打折。當(dāng)客戶預(yù)定餐點(diǎn)時(shí),打折服務(wù)的折扣程度就是參照該表。第四章 系統(tǒng)詳細(xì)設(shè)計(jì)4.1 數(shù)據(jù)庫4.1.

34、1 數(shù)據(jù)庫的為了便于用戶使用和維護(hù),我們將與數(shù)據(jù)庫的連接,單獨(dú)寫出來并進(jìn)行編譯,這樣系統(tǒng)在新的環(huán)境使用時(shí),只需改動(dòng)一處數(shù)據(jù)庫連接代碼,即可立即使用,連接關(guān)鍵代碼如下:Public Shared constr As String = "Data Source=WWW-3C702F2C1C8SQLEXPRESS;Initial Catalog=dcdatebase;Integrated Security=True"其中Public Shared constr As String = "Data Source=WWW-3C702F2C1C8SQLEXPRESS;Init

35、ial Catalog=dcdatebase;Integrated Security=True"是數(shù)據(jù)庫連接語句,WWW-3C702F2C1C8是計(jì)算機(jī)名。4.1.2Is_SQL_Cmd方法方法Is_SQL_Cmd是判斷數(shù)據(jù)是否存在,當(dāng)系統(tǒng)登錄和添加客戶需要驗(yàn)證數(shù)據(jù)庫中是否存在提交的數(shù)據(jù)時(shí)會用到它。其主要代碼如下: Public Function Is_SQL_Cmd(ByVal cmdstr As String) As Boolean SqlConn = New SqlConnection(constr) SqlConn.Open() SqlCmd = New SqlCommand

36、(cmdstr, SqlConn) Try SqlDr = SqlCmd.ExecuteReader() If SqlDr.HasRows Then Return True Else Return False End If Catch ex As Exception Return False Finally SqlConn.Close() End Try End Function4.1.3SQL_Ada方法方法SQL_Ada是為了查詢數(shù)據(jù)庫,并將查詢到的結(jié)果存放在存中的datatable表中,餐飲信息管理系統(tǒng)中使用到的組件DataGridView再從datatable表中得到數(shù)據(jù)。 Publi

37、c Function SQL_Ada(ByVal adastr As String) As DataTable SqlConn = New SqlConnection(constr) SqlConn.Open() SqlAda = New SqlDataAdapter(adastr, SqlConn) ds = New DataSet Try SqlAda.Fill(ds) Return ds.Tables(0) Catch ex As Exception Return New DataTable Finally SqlConn.Close() End Try End Function4.1.

38、4ExecCmd過程ExecCmd是為系統(tǒng)中的添加、刪除、修改服務(wù),系統(tǒng)里的客戶、菜單、折扣和員工的添加、刪除和修改都用到了該過程。 Public Sub ExecCmd(ByVal cmdstr As String) SqlConn = New SqlConnection(constr) SqlConn.Open() SqlCmd = New SqlCommand(cmdstr, SqlConn) SqlCmd.ExecuteNonQuery() End Sub4.2 系統(tǒng)的登錄與注銷4.2.1 用戶登陸模塊的實(shí)現(xiàn)圖4.1 用戶登錄用戶登陸模塊是防止非法用戶登陸的第一道防線,通過它可以保護(hù)后

39、臺數(shù)據(jù)庫的安全性,當(dāng)用戶要進(jìn)行系統(tǒng)操作時(shí),首先要進(jìn)入的就是身份驗(yàn)證界面,只有在密碼正確的情況下才能進(jìn)行以后的操作,如果輸入的密碼不正確,則不能進(jìn)行登錄對系統(tǒng)進(jìn)行操作。如果用戶以職員的身份進(jìn)入系統(tǒng),則只能進(jìn)行顧客信息管理、菜單信息查詢、預(yù)定信息管理和充值結(jié)算管理,而菜單信息管理、折扣設(shè)定、員工管理這些功能將被屏蔽,如果用戶以管理員(店長)身份登錄,系統(tǒng)的所有功能都將可以使用。以下是“登錄”按鈕的代碼:cmdstr = "select * from user where user_id ='" + TextBox1.Text + "' and pwd=

40、 '" + TextBox2.Text + "' and style= '" + ComboBox1.Text + "'" Try If sqlobject.Is_SQL_Cmd(cmdstr) Then main.m_Login = True. /類似部分省略 Me.Close() Else MsgBox("請?zhí)顚懻_的用戶名、密碼和用戶類型!") End If Catch ex As Exception main.OPErr.WriteErr(ex) End Try系統(tǒng)先進(jìn)行數(shù)據(jù)庫操作,判

41、斷是否存在用戶名、用戶密碼和用戶類型完全符合要求的數(shù)據(jù),如果存在,則說明用戶可以登錄,同時(shí)把登錄的用戶類型和用戶名告訴需要用到用戶類型和用戶名數(shù)據(jù)的模塊如系統(tǒng)主界面、充值模塊和買單模塊等等。4.2.2 用戶注銷模塊的實(shí)現(xiàn)用戶注銷模塊的代碼如下:Private Sub 注銷ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 注銷ToolStripMenuItem.Click Me.m_style = "" Me.m_Login = False F

42、or Each ChildForm As Form In Me.MdiChildren ChildForm.Close() Next main_Load(sender, e) Login.Show() Me.ToolStripStatusLabel1.Text = "登錄" End Sub用戶通過本模塊可以注銷系統(tǒng),系統(tǒng)恢復(fù)到登錄前畫面,這樣就可以防止在用戶離開后,系統(tǒng)數(shù)據(jù)被人惡意修改。4.3 客戶信息管理4.3.1 客戶信息的添加圖4.2 客戶的添加當(dāng)用戶點(diǎn)擊添加按鈕時(shí),系統(tǒng)執(zhí)行以下代碼:CmdStr = "SELECT id FROM customer whe

43、re id='" + TextBox2.Text + "'" If TextBox2.Text = "" Then /不為空 MsgBox("請輸入號") TextBox2.Focus() ElseIf sqlobject.Is_SQL_Cmd(CmdStr) Then /檢查是否已注冊 MsgBox("該客戶已經(jīng)存在") TextBox2.Focus(). /中間還有很多類似的驗(yàn)證 Else CmdStr = "insert into customer (name,id,add

44、ress,birthday,pwd,addtime,money,usedmoney,tel,mobilephone,userid)VALUES('" + TextBox1.Text + "','" + TextBox2.Text + "','" + TextBox3.Text + "','" + DateTimePicker1.Value.ToString + "','" + TextBox6.Text + "',&

45、#39;" + Now + "','" + "0" + "','" + "0" + "','" + TextBox4.Text + "','" + TextBox5.Text + "','" + user + "')" Try sqlobject.ExecCmd(CmdStr) /添加客戶 MsgBox("添加成功")

46、/ 添加成功提示 FileUrl = "" /復(fù)位空格. Catch ex As Exception main.OPErr.WriteErr(ex) End Try End If End Sub在添加用戶前,系統(tǒng)進(jìn)行了詳細(xì)的表單驗(yàn)證,包括驗(yàn)證要提交的客戶是否已經(jīng)存在,用戶兩次輸入的密碼是否一樣,以與聯(lián)系方式不為空等等。使用insert語句將通過驗(yàn)證的表格中的數(shù)據(jù)提交到數(shù)據(jù)庫。菜單信息添加模塊與本模塊的原理類似,以下不再闡述。4.3.2 圖像的處理如果用戶在上面添加客戶信息時(shí),添加了圖像信息,那么系統(tǒng)就會執(zhí)行以下命令: If FileUrl <> "&q

47、uot; Then /圖像存在的話,添加圖像Dim imgstreem As New FileStream(FileUrl, FileMode.Open, FileAccess.Read) Dim imgbyte(imgstreem.Length) As Byte imgstreem.Read(imgbyte, 0, imgstreem.Length) imgstreem.Close() Dim sqlcmd As New System.Data.SqlClient.SqlCommand Dim sqlconn As New System.Data.SqlClient.SqlConnectio

48、n(SQL_Conn.constr)CmdStr = "update customer set photo=image where id='" + TextBox2.Text + "'" sqlcmd.Parameters.Add("image", SqlDbType.Image) sqlcmd.Parameters("image").Value = imgbyte sqlcmd.Connection = sqlconn sqlcmd mandText = CmdStr Try sqlconn.Op

49、en() sqlcmd.ExecuteNonQuery() sqlconn.Close() Catch ex As Exception main.OPErr.WriteErr(ex) End Try End If如果用戶提交了客戶的相片,相片將會被轉(zhuǎn)化為二進(jìn)制數(shù)據(jù)提交到數(shù)據(jù)庫中,這樣就可以方便用戶日后對客戶資料進(jìn)行維護(hù),也有助于服務(wù)人員記住客戶,當(dāng)客戶再次光臨時(shí),一口報(bào)出客戶的名字將會使客戶對餐廳的好感大增。4.3.3 客戶信息的修改圖4.3 客戶信息的修改當(dāng)客戶資料因?qū)嶋H情況發(fā)生變更時(shí),可以修改系統(tǒng)中的資料數(shù)據(jù),用戶需提供注冊時(shí)所使用的客戶密碼。使用密碼可以防止客戶的資料被惡意修改。充分保護(hù)

50、客戶權(quán)益,即使是管理員也不能在不經(jīng)過客戶同意的情況下修改客戶數(shù)據(jù)。以下是修改按鈕的代碼。 CmdStr = "select pwd from customer where pwd='" + TextBox12.Text + "' and id ='" + TextBox8.Text + "'" /確定客戶身份代碼. /省略驗(yàn)證信息 If sqlobject.Is_SQL_Cmd(CmdStr) Then /如果客戶同意修改的話繼續(xù) CmdStr = "update customer set a

51、ddress='" + TextBox9.Text + "'" + ",tel='" + TextBox10.Text + "'" + ",mobilephone='" + TextBox11.Text + "'" + ",pwd='" + TextBox13.Text + "'" + " where id='" + TextBox8.Text + &qu

52、ot;'" Try sqlobject.ExecCmd(CmdStr) /執(zhí)行更新 MsgBox("修改成功") TextBox8.Text = "". PictureBox2.Image = Nothing Call TabControl1_SelectedIndexChanged(sender, e) Catch ex As Exception main.OPErr.WriteErr(ex) End Try Else MsgBox("密碼錯(cuò)誤") End If使用方法Is_SQL_Cmd驗(yàn)證客戶密碼的正確性,如果原始密碼正確,用戶在輸入新密碼后可以進(jìn)行對聯(lián)系方式等基本資料進(jìn)行修改。使用update語句將空格中的數(shù)據(jù)更新到服務(wù)器。如果更新成功,系統(tǒng)會彈出“修改成功的提示”。 菜單信息修改模塊與本模塊的原理類似,以下不再闡述。4.3.4 客戶信息的刪除客戶信息可以在得到客戶確認(rèn)的情況下刪除,因設(shè)計(jì)到賬戶余額問題所以在進(jìn)行此操作時(shí)萬分謹(jǐn)慎??蛻糍Y料來之不易,建議不要輕易刪除客戶資料。以下是刪除模塊的程序代碼:Private Sub Button6_Click(ByVal sender As System.Object, ByV

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論