《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 基于C/S結構的小型餐飲管理系統設計與實現
基于C/S結構的小型餐飲管理系統設計與實現
來源:微型機與應用2013年第22期
王新宇
(南京旅游職業學院, 江蘇 南京211100)
摘要: 為使酒店管理(信息工程)專業的學生掌握設計和實現旅游信息管理系統的方法,對酒店餐飲管理工作的業務流程進行了分析,并在此基礎上設計了可供學生在管理信息系統設計課程中使用的餐飲管理系統設計方案。通過教學實踐證明,該小型餐飲管理系統完全可以滿足教學需求,并且具有一定的實用價值,可以在中小型酒店餐飲部使用。
Abstract:
Key words :

摘  要: 為使酒店管理(信息工程)專業的學生掌握設計和實現旅游信息管理系統的方法,對酒店餐飲管理工作的業務流程進行了分析,并在此基礎上設計了可供學生在管理信息系統設計課程中使用的餐飲管理系統設計方案。通過教學實踐證明,該小型餐飲管理系統完全可以滿足教學需求,并且具有一定的實用價值,可以在中小型酒店餐飲部使用。
關鍵詞:餐飲信息管理系統C/S模式;酒店信息管理

    現代酒店是指向各類旅游者提供食、宿、行、娛、購等綜合服務,具有涉外性質的商業性的公共場所。餐飲部是酒店組織機構中的重要組成部分。餐飲部經營點多,管轄范圍廣,分工細,員工人數多(約占酒店員工的三分之一),人員文化程度和年齡層次差異大。要將這樣一個復雜的部門管理好,必須建立合理有效的組織網絡,并進行科學分工,明確職責,使各部門人員各司其職,以保證餐飲部的正常運轉[1]。餐飲管理系統是餐飲部不可缺少的部分,它對酒店及餐飲部的管理者都至關重要。
    酒店管理信息系統一直是我院酒店信息管理專業學生的核心課程之一,但在這門課的項目實踐過程中,只是讓學生熟練使用某種酒店信息管理軟件,其主要原因是成品酒店管理軟件不可能提供源代碼,故無法在代碼的基礎上進行講解,而只能講解一些軟件設計基本理論,課程比較枯燥。對于酒店信息管理專業的學生來說,如果只是停留在簡單的軟件應用層次上,對于學生能力的培養顯然是不夠的,這個專業要求學生具備一定的軟件開發能力,另外,學生在修完高級程序設計和數據庫應用的課程后,也需要結合一個實際的小型信息管理系統,在源代碼的基礎上,對照源程序進行項目課程的實踐學習。為此,本文對酒店餐飲管理工作的業務流程進行了分析,在此基礎上,設計了可供學生在管理信息系統設計課程中使用的餐飲管理系統設計方案。通過教學實踐證明,該小型餐飲管理系統完全可以滿足教學需求,并且具有一定的實用價值,可以在中小型酒店餐飲部使用。
    目前軟件開發的體系結構主要為C/S模式和B/S模式。在C/S模式中,客戶機與服務器相連,客戶端執行前臺操作任務,負責用戶交互、采集用戶錄入數據以及將數據傳遞給服務器;而服務器負責接收客戶端傳來的數據,并對數據進行處理,訪問數據庫,處理客戶端的操作要求。在B/S模式中,用瀏覽器代替了客戶端程序,與傳統的C/S 模式不同,瀏覽器不直接與數據庫相連,而是增加了中間層,瀏覽器通過中間層服務器與數據庫服務器相連。
    基于B/S模式的應用程序在過去幾年非常流行[2-3],因其把所有的應用程序都放在一個服務器上,便于管理和維護,軟件升級也十分方便,但缺點是它們不能提供豐富的用戶交互功能,對于一些非常復雜的“重型”應用程序,用B/S模式有些不方便,一般傾向于用C/S模式。根據餐飲管理業務的特點,本系統采用了C/S模式。
1 系統功能設計
    (1)桌臺基本信息
    該模塊用于設置、保存所有桌臺的信息,包括桌臺名稱、桌臺位置、桌臺狀態、桌臺類型等信息。
    (2)桌臺狀態
    該模塊實際上顯示的是餐飲桌態圖(類似于酒店客房部的“房態圖”[3-4]),可以使用餐廳平面布局圖的形式顯示桌態,操作員根據不同的圖標狀態,可以觀察到某桌是否可用,確定可用后,即可直接在圖上選定餐桌進行開臺作業,如圖1所示。

    (4)點單
    如圖3所示,在開臺結束后進行“點單”操作,操作員記錄客人所需的菜名和數量,然后保存到數據庫,相關數據供結賬時使用。
    (5)結帳
 圖4為客人就餐結束后結賬的設計界面。收銀員列出清單供客人核對,客人確認后,錄入支付的金額,計算所付款是否需要找零,提示找零數量。

    (6)職員信息
    該模塊可以輸入和查詢桌臺服務生的基本情況,主要包括員工代碼、姓名、性別、聯系電話等基本信息。
    (7)消費查詢
    主要為客人提供消費查詢,并可打印出消費清單。
    (8)菜肴設置
    該模塊用于增加、設置、保存所有可提供的菜肴信息。
    (9)系統設置
    設置系統用戶的不同權限、備份數據庫等。
    (10)報表
    提供營業收入日報表(部門)、營業收入匯總表、營業收入匯總明細表、營業明細表(組)、繳款明細表(班)、繳款匯總表、日客流量分析表、日營業報表、當日交款表、賬項明細表、各站點收銀報表、營業匯總表、成本分析報表、折扣一覽表等,供主管核對。
2 數據庫管理系統的選擇
   在開發管理信息系統的應用程序時,對數據庫的操作是必不可少的,所以先要選擇一個合適的數據庫管理系統產品。對于學校來說,選用的數據庫最好是免費的,這樣可以節約學校的經費。本系統選用了MySQL作為數據庫,MySQL是使用最廣泛的開源數據庫系統,其突出的優點包括[3,5]:
 (1)適用面廣,可在多種操作系統上運行。
 (2)性能優異,運行穩定。使用MySQL的成功案例很多,另外MySQL對硬件性能的要求也不苛刻,完全可以在一般的教師機上運行。
 (3)性價比高。MySQL是一個開源軟件產品,一般非商業項目使用MySQL數據庫,均可以免費使用。
3 前臺開發語言
    前臺開發工具選用微軟的C#,選用C#的原因主要有[2,5-6]:
    (1)C#是一種相當新的編程語言,吸取了C++、JAVA等語言的優點,并擯棄了它們的缺點,是微軟多年來最重要的新技術之一,不但可以開發C/S模式的程序,也可以方便地開發B/S模式的程序[7]。
    (2)近年來,開源開發環境MonoDevlop可以很方便地把C#從Windows下移植到Linux等平臺,實現了跨平臺應用。今后如有需要,該餐飲管理系統可以移植到Linux平臺。
    (3)本酒店信息專業的高級程序設計課程采用C#
語言作為教學語言,通過一個學期的學習,學生可以用C#編寫一些簡單的程序,在掌握了C#語言的基礎上,使用C#作為前臺開發工具可以節省學習的時間。
    (4)從經濟方面考慮,因為微軟為使用C#的學生們提供學習版的C#(Visual C# Express),可以免費使用,另外,MonoDevlop和SharpDevlop也可以免費獲得,這樣可以節約一大筆經費,同時還可以使用正版的開發軟件,既經濟又實惠。
4 關鍵技術
4.1 樹型菜單的實現

     設數據庫有兩張表:tb_dishbaseinfo(菜肴基本信息表)和tb_dishtype(菜肴類型表),分別如表1、表2所示。
    其中,表2中的DishTypeName字段,可以是冷盤、鍋仔、湯羹、飲料、酒等名稱。


  算法思想是:
  (1)先執行SQL語句,讀取菜肴基本信息表和菜肴類型表,通過內連接,得到菜肴編號、菜肴名稱、菜肴類型名稱,并將數據放入數據集,供前臺程序處理。
     (2)生成一個樹節點,先令其為空,用于顯示菜肴信息的控件為TreeView控件(命名為tvfood)。然后對從數據庫中讀取的數據集進行循環處理:判斷當前的菜肴類型,如果tvfood樹節點中沒有該類型,則新添加一個根節點(菜肴類型),并在新的根節點下增加子節點(菜肴名稱);如有該類型,則無需建立新根節點,直接在當前根節點下增加子節點。
    樹型菜單實現代碼如下:
     string sqlstr = "select tb_dishbaseinfo.dishid,tb_dishbaseinfo.dishname,"+
          "tb_dishtype.dishtypename"+
          " from tb_dishbaseinfo join tb_dishtype on tb_dishbaseinfo.dishtypeID"+
          "=tb_dishtype.dishtypeid";
     string temp="";
  TreeNode newnode=null;
  tvfood.Nodes.Clear();
  MySqlConnection conn =MySqlCon();
  conn.Open();
  MySqlCommand cmd = new MySqlCommand(sqlstr,conn);
  MySqlDataReader rdb = cmd.ExecuteReader();
  while(rdb.Read()){
        if(temp!=rdb["dishtypename"].ToString()){
             temp=rdb["dishtypename"].ToString();
             newnode = tvfood.Nodes.Add(temp);
             newnode.Nodes.Add(rdb["dishID"].ToString(),rdb
                ["dishname"].ToString());
           }
              else
        newnode.Nodes.Add(rdb["dishID"].ToString(), rdb
                ["dishname"].ToString());
   }
     cmd.Dispose();
     rdb.Dispose();
     conn.Dispose();
4.2 存儲過程
 前臺程序訪問數據庫時,如果是簡單的業務操作,盡量利用一條SQL語句完成;如果是需要多條SQL語句的比較復雜的業務操作,一般認為要通過MySQL的存儲過程來完成,以提高效率[3,5]。存儲過程SP(Stored Procedure)是由一些直接存儲和執行的定制過程或函數組成,有了存儲過程就可以實現復雜的SQL操作,從而可以完成單條(或少量幾條)SQL語句無法完成的業務操作。存儲過程集中完成多條SQL語句,在數據庫端直接執行完成,可以節省數據在網絡上反復傳輸的時間,從而獲得更快的速度,提高業務處理效率。另外,存儲過程可以實現數據庫回滾等操作,提高了數據的安全性和程序的健壯性。餐飲管理系統中有不少復雜的業務,有些操作在失敗的情況下需要進行回滾操作,故本系統在數據庫設計時引入存儲過程。
    例如,清空當天的營業數據,并將其復制到歷史表的存儲過程代碼如下:
    CREATE DEFINER=′root′@′localhost′PROCEDURE

          ′SP_Clear′(out v_msg varchar(1))
     BEGIN
         declare v_error integer default 0;
         declare continue handler for sqlexception set v_error=1;
         set autocommit = 0;
         start transaction;
         insert into tb_history_bill select * from tb_bill;
         delete from tb_bill;
         if v_error = 1 then
            rollback;
          else
              commit;
         end if;  
         set autocommit = 1;
     END;
    本文根據小型餐飲店的實際情況,從教學的需要出發,設計并實現了基于C/S架構的餐飲管理系統。整個系統實現了餐飲業務流程過程中的基本功能,達到設計目的。結合源代碼講解旅游管理信息系統,提高了學生的學習興趣;學生自己動手編程,又進一步鍛煉了編程能力。投入課堂教學4年以來,教學效果良好。
    如今平板電腦等移動設備逐漸用于前臺點菜,而本文中的餐飲管理系統不支持移動設備,所以,今后需要進一步研究在本系統中增加移動設備遠程點菜的功能。
參考文獻
[1] 郭敏文.餐飲部運行與管理[M].北京:旅游教育出版社,2005.
[2] NAGEL C, EVJEN B, GLYNN J. C#高級編程[M].李銘,譯.北京:清華大學出版社,2006.
[3] 王新宇,陳婕. 基于工作過程的“旅游管理軟件開發技術”課程教學設計——以“小型客房管理系統”學習情境
設計為例[J].電子商務,2012(7):78-80.
[4] 陳婕. 酒店管理信息系統中“房態圖”的設計和實現[J].軟件導刊,2011,10(11):122-124.
[5] KOFLER M. MySQL 5權威指南[M].北京:人民郵電出版社,2008.
[6] 唐政.C#項目開發全程實錄[M]. 北京:清華大學出版社,2008.
[7] 李丹,曹小佳.電子病歷信息管理系統的設計與實現[J].微型機與應用, 2013,32(1):11-13.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲欧美综合网| 99国内精品久久| 亚洲激情专区| 国内精品久久久久影院薰衣草| 国产精品久久久久aaaa樱花 | 国产欧美一区二区白浆黑人| 国产精品爱久久久久久久| 欧美日韩国产成人在线| 欧美激情精品久久久六区热门| 麻豆乱码国产一区二区三区| 老司机aⅴ在线精品导航| 另类人畜视频在线| 美国成人直播| 美女精品在线| 欧美护士18xxxxhd| 欧美日韩在线亚洲一区蜜芽| 欧美日韩一区二区高清| 欧美午夜电影在线| 国产精品入口日韩视频大尺度| 国产精品久久久久免费a∨| 国产精品久久久久久久app| 国产精品网站一区| 国产视频综合在线| 狠狠入ady亚洲精品经典电影| 影音先锋亚洲视频| 亚洲精品免费电影| 欧美日本国产精品| 欧美中文字幕精品| 亚洲国产精品美女| 一本色道精品久久一区二区三区 | 欧美日韩在线一二三| 国产精品啊啊啊| 国产色综合天天综合网| 合欧美一区二区三区| 亚洲国内在线| 宅男精品视频| 欧美亚洲视频一区二区| 亚洲激情午夜| 亚洲四色影视在线观看| 欧美亚洲在线视频| 美女视频黄a大片欧美| 欧美日韩国产高清| 国产精品视频一| 国内精品伊人久久久久av影院| 亚洲国产成人精品女人久久久| 亚洲精品在线一区二区| 亚洲自拍电影| 亚洲激情网站| 午夜国产精品视频免费体验区| 久久久久久久欧美精品| 欧美激情在线| 国产女人18毛片水18精品| 精品不卡在线| 夜夜爽夜夜爽精品视频| 欧美一区二区高清| 亚洲精品一区二区在线观看| 午夜精彩视频在线观看不卡 | 美女露胸一区二区三区| 欧美日韩亚洲91| 国产一区二区三区最好精华液| 亚洲欧洲日产国产网站| 亚洲欧美成人一区二区在线电影| 久久精品人人| 亚洲欧美国产制服动漫| 狂野欧美激情性xxxx| 国产精品极品美女粉嫩高清在线| 黄色av成人| 亚洲一区日韩在线| 日韩亚洲综合在线| 久久国产色av| 国产精品xxx在线观看www| 亚洲精品视频免费在线观看| 性欧美大战久久久久久久久| 美国十次成人| 国产欧美日韩视频| 亚洲精品国产精品国自产观看| 午夜精品久久一牛影视| 中文精品一区二区三区| 噜噜爱69成人精品| 国产麻豆午夜三级精品| 亚洲精品国产精品国自产观看浪潮 | 欧美自拍偷拍| 亚洲一区视频在线观看视频| 牛人盗摄一区二区三区视频| 国产美女高潮久久白浆| 99精品欧美一区二区三区综合在线| 欧美综合77777色婷婷| 亚洲综合二区| 欧美日韩国产成人| 亚洲第一精品在线| 久久国产精品99精品国产| 午夜在线播放视频欧美| 欧美日韩美女一区二区| 亚洲国产成人tv| 欧美在线观看www| 性欧美暴力猛交另类hd| 欧美日韩中文字幕精品| 91久久视频| 亚洲国产精品va在线观看黑人| 欧美一区二区三区免费在线看| 欧美日韩一区二区三区高清| 亚洲黄色免费电影| 亚洲国产一区二区精品专区| 欧美一区二区视频97| 国产精品久久久久久户外露出| 亚洲作爱视频| 在线一区二区三区做爰视频网站| 麻豆九一精品爱看视频在线观看免费 | 狠狠色丁香婷婷综合影院| 性做久久久久久免费观看欧美| 午夜精品久久久久久久久久久久久| 欧美日韩一区不卡| 日韩视频在线一区二区| 日韩视频在线观看一区二区| 蜜桃av综合| 在线观看日韩专区| 亚洲激情黄色| 欧美成人黑人xx视频免费观看| 激情婷婷久久| 亚洲二区免费| 美女在线一区二区| 亚洲大胆人体在线| 亚洲黄色性网站| 欧美第十八页| 亚洲精品一区二区三区99| 一区二区高清| 欧美日韩亚洲免费| 亚洲视频999| 香蕉久久国产| 国产亚洲欧美一区| 亚洲国产精品毛片| 欧美激情综合| 一区二区三区四区国产精品| 亚洲一区二区视频在线| 国产精品狼人久久影院观看方式| 亚洲一区精品电影| 欧美诱惑福利视频| 激情久久综艺| 亚洲乱码国产乱码精品精可以看 | 国产女人18毛片水18精品| 午夜国产欧美理论在线播放| 久久精品国产精品| 在线日韩电影| 一区二区久久久久| 国产精品进线69影院| 性一交一乱一区二区洋洋av| 久久亚洲国产成人| 亚洲黄色一区二区三区| 亚洲视频中文字幕| 国产视频丨精品|在线观看| 久久精品色图| 欧美精品久久久久久久免费观看| 99在线观看免费视频精品观看| 亚洲欧美日韩国产一区二区| 国产日韩欧美精品一区| 亚洲国产黄色| 欧美日韩亚洲一区二区| 亚洲影院污污.| 免费成人高清视频| 一区二区三区欧美视频| 久久久精品国产免费观看同学| 亚洲高清网站| 午夜精品久久久久久久99水蜜桃| 国产自产2019最新不卡| 亚洲毛片视频| 国产啪精品视频| 亚洲三级影片| 国产精品蜜臀在线观看| 亚洲第一福利在线观看| 欧美日韩在线综合| 久久超碰97人人做人人爱| 欧美精品激情| 午夜精品福利在线| 欧美老女人xx| 性伦欧美刺激片在线观看| 欧美国产精品日韩| 午夜精品国产更新| 欧美精品尤物在线| 欧美一级在线视频| 欧美日韩亚洲一区三区 | 性做久久久久久久久| 欧美日本在线视频| 性做久久久久久| 欧美色区777第一页| 亚洲国产精品黑人久久久| 国产精品久久毛片a| 亚洲人成毛片在线播放| 国产精品午夜av在线| 一本色道久久综合亚洲91| 国模精品一区二区三区| 亚洲一区二区三| 在线欧美三区| 久久国内精品视频| 亚洲网友自拍| 欧美日本三级| 91久久在线播放| 国产一区二区三区久久| 亚洲综合日韩中文字幕v在线| 亚洲国产精品一区制服丝袜| 久久精品视频免费|