基于.net的餐飲管理系統(tǒng)設計與實現(xiàn)畢業(yè)論文_第1頁
已閱讀1頁,還剩24頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p><b>  畢業(yè)論文(設計)</b></p><p>  題 目基于.NET的餐飲管理系統(tǒng)設計與實現(xiàn) </p><p>  學生姓名 </p><p>  學 號

2、 </p><p>  系 別 </p><p>  年 級 </p><p>  專 業(yè)

3、 </p><p>  指導教師 </p><p>  職 稱 教授 </p><p>  完成日期

4、 </p><p><b>  摘 要</b></p><p>  隨著信息技術在企業(yè)管理上越來越深入而廣泛的應用,管理信息系統(tǒng)的實施在技術上已逐步成熟。管理信息系統(tǒng)是一個不斷發(fā)展的新型學科,任何一個企業(yè)要生存要發(fā)展,要高效率地把內部活動有機地組織起來,就必須建立與自身特點相適應的管理信息系統(tǒng)。</p><p>  本文主要研究如何開發(fā)

5、餐飲管理系統(tǒng),解釋了開發(fā)餐飲管理系統(tǒng)的必要性和重要性,系統(tǒng)的開發(fā)在.net平臺上進行,結合后端的SQL Server 2005數(shù)據(jù)庫技術,用C#.net進行編碼,開發(fā)出一個符合企業(yè)需要,比較實用的信息管理系統(tǒng)。通過對計算機硬件和軟件解決方案的論證,對應用領域進行調查分析,參考許多資料,在指導老師的幫助下,詳細分析了企業(yè)管理系統(tǒng)的幾個主要設計階段:需求分析、概要設計和詳細設計,同時給出了系統(tǒng)實現(xiàn)的具體思想方案,并列舉了實際工程中的實例創(chuàng)建

6、過程、方法和效果。</p><p>  該系統(tǒng)開發(fā)由系統(tǒng)需求分析階段、概念設計階段、邏輯設計階段、數(shù)據(jù)庫實施階段、系統(tǒng)調試和測試階段、參考文獻、附錄等階段組成。</p><p>  關鍵詞:餐飲管理現(xiàn)代化,人工管理,功能模塊,存儲過程</p><p><b>  目 錄</b></p><p><b>  摘

7、要I</b></p><p><b>  1 緒論1</b></p><p>  1.1 課題的提出、現(xiàn)狀及研究意義1</p><p>  1.2 課題的研究內容1</p><p>  1.3 論文的章節(jié)安排2</p><p>  2 相關技術介紹3</p>

8、<p>  2.1 C# 簡介3</p><p>  2.2 .SQL SERVER簡介5</p><p>  3 系統(tǒng)需求分析7</p><p>  3.1 系統(tǒng)需求分析7</p><p>  3.2 系統(tǒng)類圖7</p><p>  3.3 系統(tǒng)用例圖7</p><p>

9、<b>  4 系統(tǒng)設計9</b></p><p>  4.1 系統(tǒng)總體結構9</p><p>  4.2 系統(tǒng)詳細設計9</p><p>  4.2.1進賬管理模塊詳細設計9</p><p>  4.2.2 員工管理模塊詳細設計10</p><p>  4.3 數(shù)據(jù)庫設計11<

10、/p><p>  4.3.1 概念設計11</p><p>  4.3.2 邏輯設計12</p><p><b>  5 系統(tǒng)實現(xiàn)13</b></p><p>  5.1 系統(tǒng)數(shù)據(jù)庫連接實現(xiàn)13</p><p>  5.3 登錄模塊實現(xiàn)14</p><p>  5.4

11、 主窗體實現(xiàn)17</p><p>  5.5.4 功能實現(xiàn)的補充說明25</p><p><b>  6 結束語26</b></p><p><b>  6.1 主要27</b></p><p>  6.2 進一步改進的方向27</p><p><b> 

12、 參考文獻29</b></p><p><b>  致 謝30</b></p><p><b>  1 緒論</b></p><p>  1.1 課題的提出、現(xiàn)狀及研究意義</p><p>  近年來,隨著人民的生活水平的不斷提高,餐飲業(yè)的消費持續(xù)增長,競爭愈來愈激烈。然而,傳統(tǒng)餐飲

13、企業(yè)的日常運作還是靠人工管理,從原材料入庫到客人點單,再到結賬基本上由人工完成記錄,這樣做不僅耗費人力資源而且容易導致記錄丟失或重復等錯誤,造成管理水平低下。XX酒店作為傳統(tǒng)的餐飲企業(yè)也存在這些問題,進貨,庫存有人工管理,客人點單需服務員記錄并送至廚房,客人結賬由手工記錄,人力耗費大,客人等待時間長,管理效率低下,這就迫切需要標準的、高效率的計算機管理方式引導其發(fā)展,通過計算機管理該企業(yè)的日常運作,給管理者以決策參考的模型,來不斷完善管

14、理水平,提高工作效率。改革開放二十多年來,我國餐飲業(yè)發(fā)展迅猛,日新月異,各種風味特色,各種經(jīng)營形式,各種組織結構的餐飲企業(yè)星羅棋布,但“競爭激烈,生意難作”也成了餐飲業(yè)的“流行脖。更新經(jīng)營方式,拓展大眾市場,建全餐飲業(yè)的“軟硬”件設施,發(fā)展餐飲信息渠道是我國餐飲業(yè)應探索的主旋律。所以,社會化,科學化,集錦化21世紀的發(fā)展方向。</p><p>  當今世界已進入了在計算機信息管理領域中激烈競爭的時代,應用計算機已

15、經(jīng)變得十分普遍了,如同我們離不開的自行車、汽車一樣。我們應該承認,誰掌握的知識多,信息量大,信息處理速度快,批量大,誰的效率就高,誰就能夠在各種競爭中立于不敗之地。隨著科學技術的不斷提高,計算機科學日漸成熟,其強大的功能已為人們深刻認識,它已進入人類社會的各個領域并發(fā)揮著越來越重要的作用。越來越多的管理人員意識到信息管理的重要性。所以說科學化是二十一世紀餐飲業(yè)的主流</p><p>  目前,國內的餐飲管理系統(tǒng)幾

16、種情況是:中國的軟件系統(tǒng)大多源自管理信息系統(tǒng)(MIS),從部門業(yè)務需求的角度出發(fā)設計。管理信息系統(tǒng)設計的初衷是服務于學校內絕大多數(shù)的業(yè)務操作人員,將業(yè)務操作人員的重復性勞動予以初場戶動化,即從管理理論抽象出理想化的業(yè)務管理模式,在基于該業(yè)務模式的摹礎上實現(xiàn)低層次的數(shù)據(jù)處理或業(yè)務流程電子化。管理信息系統(tǒng)的設計,是根據(jù)中小型學校業(yè)務單元的需求來編寫的,一般無法滿足多體制、多元化、多董組織結構的大型學校數(shù)據(jù)處理需求。</p>&

17、lt;p>  與國外同類應用系統(tǒng)及解決方案相比較,目前中國的管理軟件還有一些缺憾:第一,很多是從管理信息系統(tǒng)演變而來,雖然目前國內的管理軟件已將模塊功能擴展至學校管理或人才資本管理相關的整個業(yè)務領域,但系統(tǒng)在整體性、前瞻性和集成性方面仍有欠缺。</p><p>  1.2 課題的研究內容</p><p>  本課題是設計一個基于.NET的餐飲管理系統(tǒng)。本系統(tǒng)屬于小型的餐飲管理系統(tǒng),可

18、以有效地對中小型餐廳消費進行管理,本系統(tǒng)應達到以下目標:</p><p>  系統(tǒng)采用人機交互的方式,界面美觀友好,信息查詢靈活、方便,數(shù)據(jù)存儲安全可靠。</p><p>  實現(xiàn)對餐廳顧客開臺、點菜/加菜、賬目查詢和結賬等操作。</p><p>  對用戶輸入的數(shù)據(jù),進行嚴格的數(shù)據(jù)檢驗,盡可能的避免人為錯誤。</p><p>  實現(xiàn)對消費

19、賬目自動結算。</p><p>  實現(xiàn)對消費的歷史記錄進行查詢,支持模糊查詢。</p><p>  系統(tǒng)應最大限度地實現(xiàn)易維護性和易操作性。</p><p>  1.3 論文的章節(jié)安排</p><p>  整篇論文是基于.NET為背景,從.NET的知識、體系結構等方面,介紹.NET的餐飲管理系統(tǒng)設計與開發(fā)實現(xiàn)。具體章節(jié)安排如下:</p

20、><p>  第一章緒論闡明了論文課題的提出及其意義,以及本課題研究內容。</p><p>  第二章主要介紹了研究本課題的涉及到的技術和個性技術的特征、功能和應用領域。</p><p>  第三章介紹系統(tǒng)的需求分析,并重點分析了系統(tǒng)功能需求分析以及系統(tǒng)的UML圖等。</p><p>  第四章介紹系統(tǒng)設計,并對系統(tǒng)的數(shù)據(jù)庫設計進行的詳細分析。&

21、lt;/p><p>  第五章進行系統(tǒng)實現(xiàn)設計的分析,包括部分界面分析和部分代碼說明。</p><p>  第六章是結束語??偨Y論文及設計所做的主要及取得的成果,并對系統(tǒng)和.NET下一步要做的進行了分析。</p><p><b>  2 相關技術介紹</b></p><p><b>  2.1 C# 簡介</

22、b></p><p>  C#是微軟公司發(fā)布的一種面向對象的、運行于.NET Framework之上的高級程序設計語言。并定于在微軟職業(yè)開發(fā)者論壇(PDC)上登臺亮相。C#是微軟公司研究員Anders Hejlsberg的最新成果。C#看起來與Java有著驚人的相似;它包括了諸如單一繼承、接口、與Java幾乎同樣的語法和編譯成中間代碼再運行的過程。但是C#與Java有著明顯的不同,它借鑒了Delphi的一個

23、特點,與COM(組件對象模型)是直接集成的,而且它是微軟公司.NET windows網(wǎng)絡框架的主角。</p><p>  Visual Studio.NET從一開始就是為XML Web服務創(chuàng)建的開發(fā)環(huán)境。通過允許應用程序通過Internet溝通和共享數(shù)據(jù),XML Web服務使業(yè)務能夠從Internet轉換為用于集成和傳送它們的核心商業(yè)價值的真正平臺。</p><p>  Visual St

24、udio.NET和XML Web服務提供簡單,靈活和基于標準的模型。允許開發(fā)人員從新的和現(xiàn)有的代碼匯編應用程序,而與平臺,編程語言或對象模型無關。</p><p>  而.NET Framework是一個新的開發(fā)平臺,它為局域網(wǎng) (LAN) 和 Internet 上的分布式企業(yè)應用提供了一致和有效的支持。</p><p>  .NET Framework由兩個主要部分組成:CLR(通用語言

25、運行時, Common Language Runtime)和一組統(tǒng)一的類庫,包括ASP.NET、ADO.NET、Windows Forms和其他能力。</p><p>  C# (C sharp) 是微軟對這一問題的解決方案。C#是一種最新的、面向對象的編程語言。它使得程序員可以快速地編寫各種基于Microsoft .NET平臺的應用程序,Microsoft .NET提供了一系列的工具和服務來最大程度地開發(fā)利用計

26、算與通訊領域。</p><p>  正是由于C#面向對象的卓越設計,使它成為構建各類組件的理想之選——無論是高級的商業(yè)對象還是系統(tǒng)級的應用程序。使用簡單的C#語言結構,這些組件可以方便的轉化為XML 網(wǎng)絡服務,從而使它們可以由任何語言在任何操作系統(tǒng)上通過Internet進行調用。</p><p>  .NET是 Microsoft XML .NET 平臺。XML .NET 允許應用程序通過

27、 Internet 進行通訊和共享數(shù)據(jù),而不管所采用的是哪種操作系統(tǒng)、設備或編程語言。Microsoft .NET 平臺提供創(chuàng)建 XML .NET 并將這些服務集成在一起之所需。</p><p>  C#是一個語言,.net是一個平臺,上面支持用C#或者VBdotNet寫代碼。 </p><p>  另外,C#不但可以開發(fā)基于.net的應用程序,也可以開發(fā)基于WinForm的程序,這就是區(qū)

28、別。 </p><p>  若是單純以概念來說,你可以把.net當做一個工作平臺一般,它是一個開發(fā)環(huán)境的基底,提供你開發(fā)Windows、Web、Mobile、XML...等應用程式一個共通的平臺,若是要了解深一點,則再去了解其運作的相關機制那是有助于你利用它來開發(fā).C#和.NET主要是應用在網(wǎng)際網(wǎng)路. </p><p>  C#(讀做C-sharp)編程語言是由微軟公司的Anders He

29、jlsberg和 Scott Willamette領導的開發(fā)小組專門為.NET平臺設計的語言,它可以使程序員移植到.NET上。這種移植對于廣大的程序員來說是比較容易的,因為C#從C,C++和Java發(fā)展而來,它采用了這三種語言最優(yōu)秀的特點,并加入了它自己的特性。C#是事件的驅動的,完全面向對象的可視化編程語言,我們可以使用集成開發(fā)環(huán)境來編寫C#程序。使用IDE,程序員可以方便的建立,運行,測試和調試C#程序,這就將開發(fā)一個可用程序的時間

30、減少到不用IDE開發(fā)時所用時間的一小部分。使用IDE迅速建立一個應用程序的過程稱為快速反映開發(fā)。 </p><p>  . NET 是 Microsoft 的 XML Web 服務平臺。不論操作系統(tǒng)或編程語言有何差別,XML Web 服務能使應用程序在 Internet 上傳輸和共享數(shù)據(jù)。 </p><p>  Microsoft® .NET 平臺包含廣泛的產品系列,它們都是基于

31、 XML 和 Internet 行業(yè)標準構建,提供從開發(fā)、管理、使用到體驗 XML Web 服務的每一方面。XML Web 服務將成為您今天正在使用的 Microsoft 的應用程序、工具和服務器的一部分 — 并且將要打造出全新的產品以滿足您所有業(yè)務需求。 </p><p>  更具體地說,Microsoft 正在五個方面創(chuàng)建 .NET 平臺,即工具、服務器、XML Web 服務、客戶端和 .NET 體驗。<

32、;/p><p><b>  C#2.0新特性:</b></p><p>  1、 泛型:在我看來,泛型就是通過將數(shù)據(jù)類型參數(shù)化從而實現(xiàn)了代碼的更為靈活的復用,泛型的出現(xiàn)使得C#能夠使用同一段代碼來操作多種數(shù)據(jù)類型。泛型無疑是C#2.0最重大的改進,它的出現(xiàn)賦予了C#代碼更強的類型安全,更好的復用,更高的效率和更清晰的約束。 </p><p>  2

33、、 匿名方法:匿名方法允許我們將代碼直接與委托實例相關聯(lián),使委托實例化工作更加直觀和方便。在我看來,這只是C#又多了一種語法格式而已,不再像以前必須將方法名傳給委托實例,而是又多了一種選擇。 </p><p>  3、 迭代器:迭代器允許我們更加方便的編寫用于foreach語句的類型。在我看來,迭代器的出現(xiàn)只不過是改進了1.0中不便的可用foreach語句類型的編寫限制,簡化了一些接口。 </p>

34、<p>  4、 局部類型:局部類型允許我們將一個類的代碼分別寫在不同的cs文件中。最典型的應用就是使用VS2005創(chuàng)建Form文件時,VS會自動將系統(tǒng)生成的代碼與用戶代碼分開。局部類型通過partial關鍵字來聲明。 </p><p>  5、 空屬類型:空屬類型是一種像int,一樣可以為空的變量類型。本質上是一種泛型的應用,是System .Nullable<>的一種類型實例化。 <

35、;/p><p>  6、 靜態(tài)類:靜態(tài)類是只用于包含靜態(tài)成員的類型,它既不能實例化,亦不能被繼承。</p><p>  2.2 .SQL SERVER簡介</p><p>  SQL(Structured Query Language),結構化查詢語言。SQL語言的主要功能就是同各種數(shù)據(jù)庫建立聯(lián)系,進行溝通。按照ANSI(美國國家標準協(xié)會)的規(guī)定,SQL被作為關系型數(shù)據(jù)

36、庫管理系統(tǒng)的標準語言。SQL語句可以用來執(zhí)行各種各樣的操作,例如更新數(shù)據(jù)庫中的數(shù)據(jù),從數(shù)據(jù)庫中提取數(shù)據(jù)等。絕大多數(shù)流行的關系型數(shù)據(jù)庫管理系統(tǒng)都采用了SQL語言標準。雖然很多數(shù)據(jù)庫都對SQL語句進行了再開發(fā)和擴展,但是包括Select, Insert, Update, Delete, Create,以及Drop在內的標準的SQL命令仍然可以被用來完成幾乎所有的數(shù)據(jù)庫操作.SQL SERVER 2005 基本信息如下:</p>

37、<p>  SQL Server 2005 是一個關系數(shù)據(jù)庫管理系統(tǒng)。它最初是由Microsoft、 Sybase 和Ashton-Tate三家公司共同開發(fā)的,于1988 年推出了第一個OS/2 版本。在Windows NT 推出后,Microsoft與Sybase 在SQL Server 2005 的開發(fā)上就分道揚鑣了,Microsoft 將SQL Server 2005 移植到Windows NT系統(tǒng)上,專注于開發(fā)推廣S

38、QL Server 2005 的Windows NT 版本。Sybase 則較專注于SQL Server 2005在UNIX 操作系統(tǒng)上的應 用。</p><p>  SQL Server 2005 2005 是一個全面的數(shù)據(jù)庫平臺,使用集成的商業(yè)智能 (BI) 工具提供了企業(yè)級的數(shù)據(jù)管理。SQL Server 2005 2005 數(shù)據(jù)庫引擎為關系型數(shù)據(jù)和結構化數(shù)據(jù)提供了更安全可靠的存儲功能,使您可以構建和管理用

39、于業(yè)務的高可用和高性能的數(shù)據(jù)應用程序 。</p><p>  SQL Server 2005 2005 數(shù)據(jù)引擎是本企業(yè)數(shù)據(jù)管理解決方案的核心。此外 SQL Server 2005 2005 結合了分析、報表、集成和通知功能。這使您的企業(yè)可以構建和部署經(jīng)濟有效的 BI 解決方案,幫助您的團隊通過記分卡、Dashboard、Web services 和移動設備將數(shù)據(jù)應用推向業(yè)務的各個領域。 </p>

40、<p>  與 Microsoft Visual Studio、Microsoft Office System 以及新的開發(fā)工具包(包括 Business Intelligence Development Studio)的緊密集成使 SQL Server 2005 2005 與眾不同。無論您是開發(fā)人員、數(shù)據(jù)庫管理員、信息工作者還是決策者,SQL Server 2005 2005 都可以為您提供創(chuàng)新的解決方案,幫助您從數(shù)據(jù)中更多

41、地獲益。</p><p><b>  3 系統(tǒng)需求分析</b></p><p>  3.1 系統(tǒng)需求分析</p><p>  作為餐飲管理系統(tǒng),首先需要具有餐飲管理員可以運用系統(tǒng)來進行登記的功能。在進行登記后,餐飲管理員就可以登錄了,在登錄以后可以對現(xiàn)有的信息的查看、修改等。</p><p>  由于餐飲管理系統(tǒng)是信息管

42、理系統(tǒng),利用計算機網(wǎng)絡的巨大潛在力量、數(shù)據(jù)信息的理念,從而減少人、物及財?shù)确矫嫔系南?,完成合理的資源分配。其開發(fā)的功能主要包括:本課題是設計一個基于.NET的餐飲管理系統(tǒng)。</p><p>  作為計算機應用的一部分,使用計算機對餐飲企業(yè)信息進行管理,具有手工管理所無法比擬的優(yōu)點.例如:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高信息管理的效率,也是企業(yè)的科學化、正

43、規(guī)化管理與世界接軌的重要條件。根據(jù)著名心理學家馬斯洛的人需求的五大層次,未來社會人們越來越注重精神滿足,注重自我,刺激性消費愈顯必要。形成以電腦網(wǎng)絡及計算機控制程序為生產和銷售的科學化餐廳,運用電腦點菜,電視點炒,建立國際網(wǎng)址,進行全方位服務,縮短上菜時間,優(yōu)化企業(yè)經(jīng)營管理,以及增強廚房的透明度。計算機科學技術日漸成熟,其強大的功能為人們所深刻認識, 它已進入人類社會的各個領域并發(fā)揮著越來越重要的作用。</p><p

44、>  (1)有力于管理者更好的掌握餐飲的經(jīng)營情況,有力于管理者做出正確的管理決策,提高管理水平,節(jié)約成本。</p><p> ?。?)提高服務質量、和效率。對于消費者來說也更具有吸引力。</p><p>  管理模塊以經(jīng)營管理為目標,以信息管理為基礎,采用成熟、先進的計算機軟、硬件集成技術,融入科學的餐飲管理思想和模式,對學校及其下屬公司的餐飲信息進行采集、儲存、加工、處理和分析,使

45、其及時準確地反映學校的人員流動情況、薪資情況等餐飲信息,為各層管理者提供快速準確的餐飲管理依據(jù)與輔助決策數(shù)據(jù)。</p><p><b>  3.2 系統(tǒng)類圖</b></p><p>  類圖是描述類、接口、協(xié)作以及它們之間關系的圖,它是系統(tǒng)中靜態(tài)視圖的一部分,它是面向對象系統(tǒng)的建模中最常見的圖。靜態(tài)視圖可以包括許多的類圖,主要用于對軟件系統(tǒng)進行結構建模,類圖是構建其它

46、圖的基礎。</p><p>  首先從研究USE CASE和交互劇本中發(fā)現(xiàn)類,確認類的屬性和主要操作。在定義了類之后,需要進一步分析對象類之間的聯(lián)系。根據(jù)已定義的對象類及其聯(lián)系,以及類的多重性、角色、導航等性質,可以畫出類圖。</p><p><b>  4 系統(tǒng)設計</b></p><p><b>  5 系統(tǒng)實現(xiàn)</b>

47、;</p><p>  5.1 系統(tǒng)數(shù)據(jù)庫連接實現(xiàn)</p><p>  在系統(tǒng)開發(fā)過程中,采用三層架構模式開發(fā),因為要多處涉及到對數(shù)據(jù)庫的連接,如果這些連接都在各個C#.NET程序中去實現(xiàn),那樣將會非常繁瑣,代碼重復量比較大,因此,為了簡化這些連接操作,在開發(fā)時設計了一個可重用的類DBConn.cs,把對數(shù)據(jù)庫的操作都封裝在在這個類中,需要用到時生成對象調用便可,其流程圖如圖5-1所示。其

48、中DBConn.cs文件的主要代碼由如下所示:</p><p>  DBConn.cs文件中的主要代碼:</p><p>  using System;</p><p>  using System.Collections.Generic;</p><p>  using System.Text;</p><p>  

49、using System.Data.SqlClient;</p><p>  namespace MrCy.BaseClass</p><p><b>  {</b></p><p>  class DBConn</p><p><b>  {</b></p><p>  p

50、ublic static SqlConnection CyCon()</p><p><b>  {</b></p><p>  return new SqlConnection("server=.\\MSSQL;database=db_MrCy;uid=sa;pwd=123456");</p><p><b> 

51、 }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  5.3 登錄模塊實現(xiàn)</p><p>  using System;</p><p>  using System.Collections.Gener

52、ic;</p><p>  using System.ComponentModel;</p><p>  using System.Data;</p><p>  using System.Drawing;</p><p>  using System.Text;</p><p>  using System.Wind

53、ows.Forms;</p><p>  using System.Data.SqlClient;</p><p>  namespace MrCy</p><p><b>  {</b></p><p>  public partial class frmLogin : Form</p><p>

54、;<b>  {</b></p><p>  public frmLogin()</p><p><b>  {</b></p><p>  InitializeComponent();</p><p><b>  }</b></p><p>  pri

55、vate void Form1_Load(object sender, EventArgs e)</p><p><b>  {</b></p><p>  txtName.Focus();</p><p>  this.skinEngine1.SkinFile = System.Environment.CurrentDirectory + &

56、quot;\\Mp10.ssk";</p><p>  this.skinEngine1.Active = true;</p><p><b>  }</b></p><p>  private void txtPwd_KeyPress(object sender, KeyPressEventArgs e)</p>&l

57、t;p><b>  {</b></p><p>  if (e.KeyChar == 13)</p><p><b>  {</b></p><p>  btnSubmit_Click(sender, e);</p><p><b>  }</b></p>

58、<p><b>  }</b></p><p>  private void btnSubmit_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  if (txtName.Text == "")</p>

59、<p><b>  {</b></p><p>  MessageBox.Show("請輸入用戶名", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning);</p><p><b>  }</b></p><p><

60、;b>  else</b></p><p><b>  {</b></p><p>  if (txtPwd.Text == "")</p><p><b>  {</b></p><p>  MessageBox.Show("請輸入密碼",

61、 "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning);</p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  Sq

62、lConnection conn = BaseClass.DBConn.CyCon();</p><p>  conn.Open();</p><p>  SqlCommand cmd = new SqlCommand("select count(*) from tb_User where UserName='" + txtName.Text + "&

63、#39; and UserPwd='" + txtPwd.Text + "'", conn);</p><p>  int i = Convert.ToInt32(cmd.ExecuteScalar());</p><p>  if (i > 0)</p><p><b>  {</b><

64、;/p><p>  cmd = new SqlCommand("select * from tb_User where UserName='" + txtName.Text + "'", conn);</p><p>  SqlDataReader sdr = cmd.ExecuteReader();</p><p&g

65、t;  sdr.Read();</p><p>  string UserPower = sdr["power"].ToString().Trim();</p><p>  conn.Close();</p><p>  frmMain main = new frmMain();</p><p>  main.power

66、= UserPower;</p><p>  main.Names = txtName.Text;</p><p>  main.Times = DateTime.Now.ToShortDateString();</p><p>  main.Show();</p><p>  this.Hide();</p><p>

67、;<b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  MessageBox.Show("用戶名或密碼錯誤");</p><p><b>  }</b><

68、/p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  private void btnConcel_Click(object sender, EventArgs e)</p><

69、p><b>  {</b></p><p>  if (MessageBox.Show("確定退出系統(tǒng)嗎?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Asterisk) == DialogResult.OK)</p><p><b>  {</b&

70、gt;</p><p>  Application.Exit();</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b><

71、;/p><p><b>  登錄界面如圖:</b></p><p><b>  5.4 主窗體實現(xiàn)</b></p><p>  主窗體主要由以下代碼來實現(xiàn):</p><p>  using System;</p><p>  using System.Collections.Ge

72、neric;</p><p>  using System.ComponentModel;</p><p>  using System.Data;</p><p>  using System.Drawing;</p><p>  using System.Text;</p><p>  using System.W

73、indows.Forms;</p><p>  using System.Data.SqlClient;</p><p>  namespace MrCy</p><p><b>  {</b></p><p>  public partial class frmMain : Form</p><p&

74、gt;<b>  {</b></p><p>  public frmMain()</p><p><b>  {</b></p><p>  InitializeComponent();</p><p><b>  }</b></p><p>  pu

75、blic SqlDataReader sdr;</p><p>  public string power;</p><p>  public string Names;</p><p>  public string Times;</p><p>  private void frmMain_Load(object sender, Even

76、tArgs e)</p><p><b>  {</b></p><p>  switch (power)</p><p><b>  {</b></p><p>  case "0": toolStripStatusLabel13.Text = "超級管理員"

77、;; break;</p><p>  case "1": toolStripStatusLabel13.Text = "經(jīng)理"; break;</p><p>  case "2": toolStripStatusLabel13.Text = "一般用戶"; break;</p><p&g

78、t;<b>  }</b></p><p>  toolStripStatusLabel10.Text = Names;</p><p>  toolStripStatusLabel16.Text = Times;</p><p>  if (power == "2")</p><p><b&g

79、t;  {</b></p><p>  系統(tǒng)維護SToolStripMenuItem.Enabled = false;</p><p>  基礎信息MToolStripMenuItem.Enabled = false;</p><p><b>  }</b></p><p>  if (power == &q

80、uot;1")</p><p><b>  {</b></p><p>  系統(tǒng)維護SToolStripMenuItem.Enabled = false;</p><p><b>  }</b></p><p><b>  }</b></p><p

81、>  private void AddItems(string rzt)</p><p><b>  {</b></p><p>  if (rzt == "使用")</p><p><b>  {</b></p><p>  lvDesk.Items.Add(sdr[&q

82、uot;RoomName"].ToString(), 1);</p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  lvDesk.Items.Add(sdr["Roo

83、mName"].ToString(), 0);</p><p><b>  }</b></p><p><b>  }</b></p><p>  private void 開臺ToolStripMenuItem_Click(object sender, EventArgs e)</p><p

84、><b>  {</b></p><p>  if (lvDesk.SelectedItems.Count != 0)</p><p><b>  {</b></p><p>  string names = lvDesk.SelectedItems[0].SubItems[0].Text;</p>&

85、lt;p>  frmOpen openroom = new frmOpen();</p><p>  openroom.name = names;</p><p>  openroom.ShowDialog();</p><p><b>  }</b></p><p><b>  else</b&g

86、t;</p><p><b>  {</b></p><p>  MessageBox.Show("請選擇桌臺");</p><p><b>  }</b></p><p><b>  }</b></p><p>  private

87、void frmMain_Activated(object sender, EventArgs e)</p><p><b>  {</b></p><p>  lvDesk.Items.Clear();</p><p>  SqlConnection conn = BaseClass.DBConn.CyCon();</p>&l

88、t;p>  conn.Open();</p><p>  SqlCommand cmd = new SqlCommand("select * from tb_Room", conn);</p><p>  sdr = cmd.ExecuteReader();</p><p>  while (sdr.Read())</p>&

89、lt;p><b>  {</b></p><p>  string zt = sdr["RoomZT"].ToString().Trim();</p><p>  AddItems(zt);</p><p><b>  }</b></p><p>  conn.Close(

90、);</p><p><b>  }</b></p><p>  private void 點菜ToolStripMenuItem_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  if (lvDesk.SelectedI

91、tems.Count != 0)</p><p><b>  {</b></p><p>  string names = lvDesk.SelectedItems[0].SubItems[0].Text;</p><p>  frmDC dc = new frmDC();</p><p>  dc.RName = na

92、mes;</p><p>  dc.ShowDialog();</p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  MessageBox.Show("

93、請選擇桌臺");</p><p><b>  }</b></p><p><b>  }</b></p><p>  private void 消費查詢ToolStripMenuItem_Click(object sender, EventArgs e)</p><p><b>

94、  {</b></p><p>  if (lvDesk.SelectedItems.Count != 0)</p><p><b>  {</b></p><p>  string names = lvDesk.SelectedItems[0].SubItems[0].Text;</p><p>  frm

95、Serch serch = new frmSerch();</p><p>  serch.RName = names;</p><p>  serch.ShowDialog();</p><p><b>  }</b></p><p><b>  else</b></p><p

96、><b>  {</b></p><p>  MessageBox.Show("請選擇桌臺");</p><p><b>  }</b></p><p><b>  }</b></p><p>  private void 結賬ToolStripMen

97、uItem_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  if (lvDesk.SelectedItems.Count != 0)</p><p><b>  {</b></p><p>  string names

98、= lvDesk.SelectedItems[0].SubItems[0].Text;</p><p>  frmJZ jz = new frmJZ();</p><p>  jz.Rname = names;</p><p>  jz.ShowDialog();</p><p><b>  }</b></p>

99、;<p><b>  else</b></p><p><b>  {</b></p><p>  MessageBox.Show("請選擇桌臺");</p><p><b>  }</b></p><p><b>  }</b

100、></p><p>  private void lvDesk_DoubleClick(object sender, EventArgs e)</p><p><b>  {</b></p><p>  frmDetails details = new frmDetails();</p><p>  details

101、.TableName = lvDesk.SelectedItems[0].SubItems[0].Text;</p><p>  details.ShowDialog();</p><p><b>  }</b></p><p>  private void lvDesk_Click(object sender, EventArgs e)<

102、;/p><p><b>  {</b></p><p>  string names = lvDesk.SelectedItems[0].SubItems[0].Text;</p><p>  SqlConnection conn = BaseClass.DBConn.CyCon();</p><p>  conn.Open

103、();</p><p>  SqlCommand cmd = new SqlCommand("select * from tb_Room where RoomName='" + names + "'", conn);</p><p>  SqlDataReader sdr = cmd.ExecuteReader();</p>

104、;<p>  sdr.Read();</p><p>  string zt = sdr["RoomZT"].ToString().Trim();</p><p>  sdr.Close();</p><p>  if (zt == "使用")</p><p><b>  {&l

105、t;/b></p><p>  this.contextMenuStrip1.Items[0].Enabled = false;</p><p>  this.contextMenuStrip1.Items[1].Enabled = true;</p><p>  this.contextMenuStrip1.Items[3].Enabled = true;&

106、lt;/p><p>  this.contextMenuStrip1.Items[5].Enabled = true;</p><p>  this.contextMenuStrip1.Items[6].Enabled = true;</p><p><b>  }</b></p><p>  if (zt == "

107、;待用")</p><p><b>  {</b></p><p>  this.contextMenuStrip1.Items[0].Enabled = true;</p><p>  this.contextMenuStrip1.Items[1].Enabled = false;</p><p>  thi

108、s.contextMenuStrip1.Items[3].Enabled = false;</p><p>  this.contextMenuStrip1.Items[5].Enabled = false;</p><p>  this.contextMenuStrip1.Items[6].Enabled = false;</p><p><b>  }

109、</b></p><p>  conn.Close();</p><p><b>  }</b></p><p>  private void 取消開臺toolStripMenuItem_Click(object sender, EventArgs e)</p><p><b>  {</b&

110、gt;</p><p>  if (lvDesk.SelectedItems.Count != 0)</p><p><b>  {</b></p><p>  string names = lvDesk.SelectedItems[0].SubItems[0].Text;</p><p>  SqlConnection

111、 conn = BaseClass.DBConn.CyCon();</p><p>  conn.Open();</p><p>  SqlCommand cmd = new SqlCommand("update tb_Room set RoomZT='待用',Num=0 where RoomName='" + names + "

112、9;", conn);</p><p>  cmd.ExecuteNonQuery();</p><p>  cmd = new SqlCommand("delete from tb_GuestFood where zhuotai='" + names + "'", conn);</p><p>  

113、cmd.ExecuteNonQuery();</p><p>  conn.Close();</p><p>  frmMain_Activated(sender, e);</p><p><b>  }</b></p><p><b>  else</b></p><p>

114、<b>  {</b></p><p>  MessageBox.Show("請選擇桌臺");</p><p><b>  }</b></p><p><b>  }</b></p><p>  private void 桌臺信息ToolStripMenuI

115、tem1_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  frmDesk desk = new frmDesk();</p><p>  desk.ShowDialog();</p><p><b>  }</b><

116、;/p><p>  private void 職員信息ToolStripMenuItem1_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  frmUser users = new frmUser();</p><p>  users.ShowDi

117、alog();</p><p><b>  }</b></p><p>  private void 日歷ToolStripMenuItem1_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  frmCalender ca

118、lender = new frmCalender();</p><p>  calender.ShowDialog();</p><p><b>  }</b></p><p>  private void 記事本ToolStripMenuItem1_Click(object sender, EventArgs e)</p>&l

119、t;p><b>  {</b></p><p>  System.Diagnostics.Process.Start("notepad.exe");</p><p><b>  }</b></p><p>  private void 計算器ToolStripMenuItem1_Click(obj

120、ect sender, EventArgs e)</p><p><b>  {</b></p><p>  System.Diagnostics.Process.Start("calc.exe");</p><p><b>  }</b></p><p>  private v

121、oid 權限管理ToolStripMenuItem1_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  frmQxGl qx = new frmQxGl();</p><p>  qx.ShowDialog();</p><p><b&g

122、t;  }</b></p><p>  private void 系統(tǒng)備份ToolStripMenuItem1_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  frmBF bf = new frmBF();</p><p>  b

123、f.ShowDialog();</p><p><b>  }</b></p><p>  private void 系統(tǒng)恢復ToolStripMenuItem1_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  frmH

124、F hf = new frmHF();</p><p>  hf.ShowDialog();</p><p><b>  }</b></p><p>  private void 口令設置ToolStripMenuItem1_Click(object sender, EventArgs e)</p><p><b&

125、gt;  {</b></p><p>  frmPwd pwd = new frmPwd();</p><p>  pwd.names = Names;</p><p>  pwd.ShowDialog();</p><p><b>  }</b></p><p>  private

126、void 鎖定系統(tǒng)ToolStripMenuItem1_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  frmLock locksystem = new frmLock();</p><p>  locksystem.Owner = this;</p>

127、<p>  locksystem.ShowDialog();</p><p><b>  }</b></p><p>  private void 關于ToolStripMenuItem1_Click(object sender, EventArgs e)</p><p><b>  {</b></p&g

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論