白會餐廳訂單管理信息系統(tǒng)_第1頁
白會餐廳訂單管理信息系統(tǒng)_第2頁
白會餐廳訂單管理信息系統(tǒng)_第3頁
白會餐廳訂單管理信息系統(tǒng)_第4頁
白會餐廳訂單管理信息系統(tǒng)_第5頁
已閱讀5頁,還剩51頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

一次訂單的代碼設(shè)計:為了方便對訂單進行管理,把訂單按時間日期編碼,擔(dān)心訂單數(shù)量過多,按時間編碼可能會出現(xiàn)編碼重復(fù),所以在日期精確到分之后添加三位隨機數(shù)防止重復(fù)。2201904160920具體日期123隨機數(shù)(三)數(shù)據(jù)庫設(shè)計設(shè)計數(shù)據(jù)庫系統(tǒng)時應(yīng)該首先充分了解用戶各個方面的需求,實現(xiàn)餐飲行業(yè)日常業(yè)務(wù)的處理,并考慮將來可能進行的功能性的擴展,留有接口,便于下次的優(yōu)化和升級。根據(jù)系統(tǒng)的功能要求,數(shù)據(jù)的存儲不會涉及到很多層次,也不會存儲大量數(shù)據(jù),其數(shù)據(jù)庫hotel創(chuàng)建了餐桌信息表dinnertable、菜信息表food、菜種類表foodtype、訂單表orders、訂單詳細(xì)表orderdetail、員工表employee。餐桌信息表:用于保存餐桌預(yù)定信息。菜信息表:用于保存菜的價格、圖片信息等。菜種類表:用于保存菜的種類信息。訂單表:用于保存顧客下單情況信息。訂單詳細(xì)表:用于保存顧客下單的詳細(xì)情況,包括總價,點的菜等等。員工表:用于保存員工入職時的信息,包括員工號,職位,姓名、電話等等。詳細(xì)表見下表。字段名數(shù)據(jù)類型可否為空字段大小字段含義Id數(shù)字NOTNULL8主鍵TableName文本NOTNULL10餐桌名Tablestatus數(shù)字NOTNULL2餐桌狀態(tài)OrderDate日期NULL無預(yù)定日期Price數(shù)字NOTNULL4 餐桌價格表1.1dinnertable表字段名數(shù)據(jù)類型可否為空字段大小字段含義Id數(shù)字NOTNULL15主鍵Name文本NOTNULL10員工姓名Birth日期NOTNULL無員工出生日期Tel數(shù)字NULL13員工電話Address文本NOTNULL50員工地址Age數(shù)字NOTNULL3員工年齡Sex數(shù)字NOTNULL1員工性別Employeetime日期NOTNULL無雇傭時間Right數(shù)字NOTNULL2權(quán)限表1.2employee表字段名數(shù)據(jù)類型可否為空字段大小字段含義Id數(shù)字NOTNULL11主鍵foodName文本NOTNULL10菜名FoodType_id日期NOTNULL無菜類型主鍵Price數(shù)字NULL13價格Mprice文本NOTNULL50會員價格Remark數(shù)字NOTNULL3評價Img數(shù)字NOTNULL1詳細(xì)圖片表1.3food表字段名數(shù)據(jù)類型可否為空字段大小字段含義Id數(shù)字NOTNULL11主鍵typeName文本NOTNULL10菜類型表1.4foodtype表字段名數(shù)據(jù)類型可否為空字段大小字段含義Id數(shù)字NOTNULL11主鍵OrderId數(shù)字NOTNULL10訂單主鍵food_id數(shù)字NOTNULL10菜主鍵Foodcount數(shù)字NOTNULL3菜數(shù)量表1.5orderdetail表字段名數(shù)據(jù)類型可否為空字段大小字段含義Id數(shù)字NOTNULL14主鍵Table_id數(shù)字NOTNULL10餐桌主鍵orderDate日期NOTNULL無下單日期totalPrice數(shù)字NOTNULL4總價orderStatus數(shù)字NOTNULL1訂單狀態(tài)表1.6orders表(四)輸入輸出設(shè)計系統(tǒng)使用的方便性和安全可靠性的檢驗的一個很重要的屬性就是系統(tǒng)的輸入輸出設(shè)計,系統(tǒng)和用戶需要一個良好的互聯(lián)網(wǎng)交互環(huán)境,這個環(huán)境的好壞取決于系統(tǒng)開發(fā)者對輸入輸出的設(shè)計,輸入設(shè)計指的是用戶鍵入信息數(shù)據(jù)界面效果以及實現(xiàn)方式的設(shè)計,而輸出設(shè)計指的是用戶鍵入信息之后數(shù)據(jù)顯示的統(tǒng)計方式的設(shè)計。1、輸出設(shè)計百餐匯餐廳管理信息系統(tǒng)的輸出設(shè)計主要是從信息查詢、信息輸出的角度出發(fā),為了能夠高效、快速,不讓用戶緩慢等待的情況下查詢到自己的訂單和結(jié)賬信息,本系統(tǒng)采用谷歌瀏覽器進行電腦屏幕輸出,保證整體的可操控,也有利于二次開發(fā)(利用谷歌開發(fā)者工具)2、輸入設(shè)計輸入設(shè)計是一個管理信息系統(tǒng)的開端,是整個系統(tǒng)數(shù)據(jù)流向的起始階段,如果界面過于簡陋,將會對用戶體驗造成極大影響導(dǎo)致系統(tǒng)無法獲取到數(shù)據(jù),系統(tǒng)也就沒有存在的價值了,因此,輸入設(shè)計的界面要盡量顯得高大上一些來吸引用戶,從而獲得更多的訪問量。(1)輸入格式盡量以填寫為主。(2)保證滿足處理要求的前提下使輸入量最小,輸入過程盡量簡約。(3)對于輸入的數(shù)據(jù),具有一定的完整性規(guī)則,如果不能符合要求,系統(tǒng)可以拒絕該數(shù)據(jù)。3、輸入輸出界面設(shè)計谷歌瀏覽器的圖形界面是本系統(tǒng)進行輸入輸出的主要界面,界面開發(fā)美觀、簡潔,擁有對用戶密碼、登錄名的自動填充和其他各種強大的功能,還可以選擇很多種界面背景顏色,保持頁面的觀賞性詳細(xì)輸入輸出設(shè)計界面見下圖:圖2.2員工后臺登錄界面圖2.3登錄后顯示界面圖2.4餐桌管理界面圖2.5菜系管理界面圖2.6菜品管理界面圖2.7員工管理界面圖2.8顧客選餐桌界面圖2.9菜單界面圖2.10查看菜的詳細(xì)信息圖2.11餐車界面圖2.12結(jié)賬界面五、系統(tǒng)實施系統(tǒng)實施是開發(fā)信息系統(tǒng)的最后一個階段,是系統(tǒng)調(diào)查、系統(tǒng)分析、系統(tǒng)設(shè)計的結(jié)果。根據(jù)系統(tǒng)設(shè)計階段設(shè)計的系統(tǒng)結(jié)構(gòu),各個模塊的功能、輸入和輸出,數(shù)據(jù)庫的物理模型,按實施方案完成一個可以運行的信息系統(tǒng)。在系統(tǒng)實施階段既要成功的實現(xiàn)新系統(tǒng),又要取得用戶對系統(tǒng)的信任。(一)系統(tǒng)運行環(huán)境本系統(tǒng)在Windows7操作系統(tǒng)上開發(fā),為了系統(tǒng)的良好運行,對于硬件的配置要求如下:CPU:I5-4300U或更高;硬盤:20GB或更高;內(nèi)存:256MB或更高;考慮到可視化編程、面向?qū)ο蟮某绦蛟O(shè)計、結(jié)構(gòu)化程序設(shè)計、語言事件驅(qū)動和可訪問數(shù)據(jù)庫等方面的因素,最終選用Eclipse4.5.1作為軟件開發(fā)工具。而由于數(shù)據(jù)庫所需要的表不是很多,所有選擇了小而輕量級的Mysql進行后臺數(shù)據(jù)庫的設(shè)計。結(jié)合程序所占硬盤和內(nèi)存的情況及所選用的開發(fā)語言,主要保證以下幾個方面:(1)、高度的可靠性:保證主機、操作系統(tǒng)、網(wǎng)絡(luò)、數(shù)據(jù)庫、應(yīng)用軟件等系統(tǒng)平穩(wěn)運行,最大限度減少停機時間。(2)、易維護和易管理:減少日常管理和維護的工作量,便于性能的調(diào)節(jié)和故障排除。(3)、高度的安全性:嚴(yán)格控制并規(guī)范對系統(tǒng)敏感資源的訪問。(二)程序設(shè)計選擇良好的程序設(shè)計方法和工具是提高程序設(shè)計質(zhì)量的基礎(chǔ)。本系統(tǒng)采用Eclipse、Hbuilder開發(fā)軟件進行系統(tǒng)前臺界面設(shè)計,在其可視化網(wǎng)頁上設(shè)計出各個表格、按鈕等不同類型的標(biāo)簽并為每個標(biāo)簽設(shè)置屬性,為了實現(xiàn)各個標(biāo)簽的功能,需要編寫相關(guān)對象要完成的功能程序,之后才能完整的實現(xiàn)其功能。在具體編程中,采用結(jié)構(gòu)化程序設(shè)計方法,其包括三種基本的邏輯結(jié)構(gòu):順序結(jié)構(gòu)、循環(huán)結(jié)構(gòu)和選擇結(jié)構(gòu)。具體程序流程圖見下圖。圖3.1員工登錄程序流程圖3.2顧客點菜下單程序流程(三)系統(tǒng)調(diào)試系統(tǒng)調(diào)試的目的是發(fā)現(xiàn)程序和系統(tǒng)中可能存在的錯誤并及時予以糾正。完成對百餐匯餐廳點餐下單管理信息系統(tǒng)的每一個模塊及對整個系統(tǒng)的所有功能進行調(diào)試,首先編寫測試數(shù)據(jù)對代碼進行調(diào)試,驗證程序在邏輯上的正確性,之后對系統(tǒng)的程序功能進行測試,先對單個程序進行調(diào)試,再將一個功能內(nèi)的所有程序按次序串聯(lián)起來進行調(diào)試,以保證模塊內(nèi)各個程序間具有正確的控制關(guān)系,最后進行總調(diào),對系統(tǒng)各種可能的使用形態(tài)及其組合在軟件中的流通情況進行測試。通過測試來盡可能的發(fā)現(xiàn)在系統(tǒng)分析、系統(tǒng)設(shè)計中的存在的錯誤。在程序的測試過程中,反復(fù)的調(diào)試,問題也反復(fù)的出現(xiàn),經(jīng)過不斷地對數(shù)據(jù)庫和程序的修改,程序所實現(xiàn)的功能日趨完善,直到問題不再出現(xiàn)為止,到此系統(tǒng)已經(jīng)可以交付使用了。用例名稱操作步驟預(yù)期結(jié)果實際結(jié)果員工登錄依據(jù)員工號進行員工登錄,根據(jù)員工的不同權(quán)限左側(cè)菜單顯示不同無員工號登錄失敗,總經(jīng)理登錄顯示全部菜單,其他員工登錄顯示部分菜單完全實現(xiàn)信息修改修改相應(yīng)的餐桌狀態(tài)、菜名、所屬菜系、員工信息等等修改后信息準(zhǔn)確無誤地顯示完全實現(xiàn)用戶下單用戶選好菜之后在餐車進行下單餐車?yán)镉邢鄳?yīng)的菜列表,菜的價格和總價,下單之后餐桌鎖定完全實現(xiàn)信息刪除對于無用的信息進行刪除刪除離職的員工,下架的菜和菜類型完全實現(xiàn)結(jié)束語此次構(gòu)建百餐匯點餐下單管理系統(tǒng)大概花費了我一個月的時間,首先我從項目功能結(jié)構(gòu)開始分析,俗話說:“萬事開頭難”,因為做出來的系統(tǒng)要貼合顯示餐廳業(yè)務(wù)功能,所以我先去了學(xué)校附近的幾家餐館實地考察了一段時間,發(fā)現(xiàn)餐廳的主要業(yè)務(wù)有:顧客點餐、顧客下單、顧客結(jié)賬等,除了要在前臺提供界面讓顧客進行菜的選擇,還要在后臺提供員工、菜、餐桌的各種信息管理,保證前臺和后臺的數(shù)據(jù)顯示吻合,一個小型的餐廳點餐下單管理系統(tǒng)建模便完成了。雖然構(gòu)建完成,但這只是空想,具體實現(xiàn)便是代碼編寫問題了。在Eclipse建立好項目之后,開始代碼的整體架構(gòu)。此次代碼實現(xiàn)我不打算使用框架,因為項目過小,使用框架倒顯得有些“大材小用”了。我打算只用servlet進行頁面跳轉(zhuǎn),這樣更加簡單快捷,因為可以寫死的東西有很多,配置文件也不用寫很多。至于項目分層,我打算使用傳統(tǒng)的MVC模式,Model層進行數(shù)據(jù)庫的增刪改查,即dao包,Control層進行功能模塊模擬,即service包,View層進行最終的頁面跳轉(zhuǎn),分層結(jié)構(gòu)清晰,代碼也不能寫的過于隨意,是哪個實體類在實體類中寫方法調(diào)用,切忌隨便找一個實體類編寫,這樣不利于后期維護。最后是數(shù)據(jù)表的創(chuàng)建,分析完業(yè)務(wù)流程之后,我建立了六個表,代表實體類,每個表的字段都對應(yīng)了相應(yīng)實體類的屬性。萬事俱備,開始編寫代碼。編寫過程中遇到了很多困難,例如員工登錄過程中的記住密碼,如何在瀏覽器中存放cookie信息,在服務(wù)器中存儲session信息,session和cookie的區(qū)別與聯(lián)系,期間我上網(wǎng)查了很多資料,編程能力得到了極大提升,這對我以后的工作會有很大益處。在寫代碼的過程中我也認(rèn)識到了很多陷阱,比如String實體類使用“==”比較的是內(nèi)存地址的大小,相同的是true,不同的是false。而在實際開發(fā)過程中比較的是內(nèi)容是否匹配,所以不能使用“==”,而要用string類的equals方法。吃一塹長一智,以后這些陷阱要想辦法盡量避免,或者不能再犯。代碼編寫完畢后我又重新回顧了一下,發(fā)現(xiàn)還有一些可以增加的功能,比如顧客留言板提意見、投訴服務(wù)等,以及菜品評選,熱門菜系推薦等等。我還暢想了一下,使用大數(shù)據(jù)檢索顧客的喜好和口味,推薦顧客喜愛的菜,造成更多的盈利,然而這些功能的實現(xiàn)太為復(fù)雜,單憑我自己一個人的能力可能是無法實現(xiàn)了,只能等以后水平到達(dá)了才可以回頭重新更新功能?,F(xiàn)在更重要的事自己的外文文獻翻譯,我在知網(wǎng)上查了很多關(guān)于餐廳計算機信息管理化的文章,最后選了一篇翻譯難度較小的進行翻譯,一開始我的頭都大了,因為我的英文翻譯水平不太高,但是慢慢地,我掌握了一些訣竅,熟能生巧,又參考了一部分百度的翻譯,終于翻譯完成,對于我來說,這次畢業(yè)設(shè)計也是對我英語能力的一個再加強,大有益處,學(xué)習(xí)編程的人英文怎么能不好呢?還要看很多全英的編程文檔,所以此次畢業(yè)設(shè)計對我以后幫助真的很大。這次設(shè)計使我感觸很大,代碼改變世界的確不是一句虛言,如果沒有互聯(lián)網(wǎng),沒有代碼,我們的生活質(zhì)量將會變得很低,通信也會不方便,我立志要寫可以讓千萬人使用的代碼,那是怎樣的一種體驗啊,肯定會很有自豪感的,所以這次畢設(shè)不是我編程的終點,而是一次完美的開始。希望老師可以對我的畢業(yè)設(shè)計提提意見,我會好好改進的,加強自己的業(yè)務(wù)能力,使得這個系統(tǒng)更加完善。我以后也想對這個系統(tǒng)進行改進,使用SSM框架,加入maven插件,采用nginx反向代理,服務(wù)器集群,越想反而越有點興奮了,我要好好學(xué)習(xí)這些知識,使用更多的開發(fā)技術(shù),解決高并發(fā)多線程的問題,加油,我自己一定可以的!參考文獻[1]王珊、薩師煊.數(shù)據(jù)庫系統(tǒng)概論.高等教育出版社.2014[2]李忠尉、陳丹丹.Java程序設(shè)計標(biāo)準(zhǔn)教程.人民郵電出版社.2015[3]鐘德源、林國、程志艷.JSP實用簡明教程.清華大學(xué)出版社.2016[4]李忠尉、陳丹丹、馬文強.Java開發(fā)典型模塊大全.人民郵電出版社.20015[5]趙生慧.Java面向?qū)ο蟪绦蛟O(shè)計.高等教育出版社.2017[6]耿祥義、張躍平.Java2實用教程.清華大學(xué)出版社.2016[7]蔡恒強.MVC模式下餐飲管理系統(tǒng)設(shè)計與實現(xiàn)[J].電腦知識與技術(shù).2014,(06):244-262.[8]羅桂蘭.淺談由SSM實現(xiàn)開發(fā)企業(yè)門戶網(wǎng)站系統(tǒng)的優(yōu)缺點[J].湖北函授大學(xué)學(xué)報.2014,(18):139-140[9]劉朝輝.實體店餐飲管理系統(tǒng)設(shè)計與實現(xiàn)[10]付在霞.中國餐飲業(yè)的電子商務(wù)發(fā)展?fàn)顩r[J].計算機光盤軟件與應(yīng)用.2015,(7):75-75[11]穆星宇.B2C電子商務(wù)網(wǎng)站分析與設(shè)計[D].云南大學(xué),2015.[12]姜峰.基于電子商務(wù)的網(wǎng)站規(guī)劃設(shè)計研究[J].電腦知識與技術(shù),2015,11(16):240-242.[13]甄靚.商務(wù)網(wǎng)站的設(shè)計與構(gòu)建[J].電子世界,2015(10):36-37.[14]朱筱筱.電子商務(wù)網(wǎng)站建設(shè)項目需求分析探析[J].黑龍江對外經(jīng)貿(mào),2015(06):80-82.[15]LanzuekaNE,SenerAR,PoloGC,etal.UncertaintyanalysisintheenvironmentalassessmentofanintegratedmanagementsystemforrestaurantandcateringwasteinSpain[J].InternationalJournalofLifeCycleAssessment.2015,(2):244-262.附錄餐桌部分相應(yīng)代碼:packagecn.itcast.servlet;importjava.io.IOException;importjava.io.PrintWriter;importjava.util.List;importjavax.servlet.ServletException;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importcn.itcast.entity.DinnerTable;importcn.itcast.service.IDinnerTableService;importcn.itcast.service.impl.DinnerTableService;publicclassDinnerTableNoUseextendsHttpServlet{Stringuri; IDinnerTableServicedinneretableservice=newDinnerTableService(); publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{List<DinnerTable>noUse=dinneretableservice.findByNoUse();request.setAttribute("noUse",noUse); uri="/app/index.jsp"; request.getRequestDispatcher(uri).forward(request,response); } publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ request.setCharacterEncoding("UTF-8");response.setContentType("text/html;charset=UTF-8"); doGet(request,response); }}packagecn.itcast.servlet;importjava.io.IOException;importjava.io.PrintWriter;importjava.util.Date;importjava.util.Iterator;importjava.util.List;importjavax.servlet.ServletException;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importcn.itcast.dao.IDinnerTableDao;importcn.itcast.entity.DinnerTable;importcn.itcast.entity.Orders;importcn.itcast.service.IDinnerTableService;importcn.itcast.service.impl.DinnerTableService;publicclassDinnerTableServletextendsHttpServlet{IDinnerTableServicedinnertableservice=newDinnerTableService(); Stringuri; publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ Stringmethod=request.getParameter("method"); request.setCharacterEncoding("UTF-8"); response.setContentType("text/html;charset=UTF-8"); if("addDinnerTable".equals(method)){ addDinnerTable(request,response); }elseif("list".equals(method)){ list(request,response); }elseif("viewUpdate".equals(method)){ viewUpdate(request,response); }elseif("delete".equals(method)){ delete(request,response); }elseif("update".equals(method)){ update(request,response); }elseif("search".equals(method)){ search(request,response); }elseif("tablechange".equals(method)){ tablechange(request,response); }elseif("tablechanges".equals(method)){ tablechanges(request,response); } } privatevoidtablechanges(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ //tableId StringtableId=(String)request.getSession().getAttribute("tableId"); Ordersorders=newOrders(); orders.setTable_id(Integer.parseInt(tableId)); orders.setOrderDate(newDate()); Stringparameter=request.getParameter("pricecount"); orders.setTotalPrice(Integer.parseInt(parameter)); orders.setOrderStatus(0); dinnertableservice.addorders(orders); uri="/OrderServlet?method=listuniquefood"; request.getRequestDispatcher(uri).forward(request,response); } privatevoidtablechange(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ StringtableId=(String)request.getSession().getAttribute("tableId"); if(tableId!=""){ int tableid=Integer.parseInt(tableId); DinnerTabledinnerTable=dinnertableservice.findById(tableid); if(dinnerTable.getTableStatus()==0){ dinnerTable.setTableStatus(1); dinnerTable.setOrderDate(newDate()); } dinnertableservice.update(dinnerTable); } uri="/OrderServlet?method=listuniquefood"; request.getRequestDispatcher(uri).forward(request,response); } privatevoidsearch(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ Stringname=request.getParameter("keyword"); List<DinnerTable>list=dinnertableservice.getAll(name); Iterator<DinnerTable>iterator=list.iterator(); while(iterator.hasNext()){ DinnerTabledinnertable=iterator.next(); if(dinnertable.getTableStatus()==0){ dinnertable.setRealStatus("空閑"); dinnertable.setOption("預(yù)定"); }else{ dinnertable.setRealStatus("預(yù)定"); dinnertable.setOption("退桌"); } } request.setAttribute("list",list); uri="/sys/boardList.jsp"; request.getRequestDispatcher(uri).forward(request,response); } privatevoidupdate(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ Stringid=request.getParameter("id"); DinnerTabledinnerTable=dinnertableservice.findById(Integer.parseInt(id)); if(dinnerTable.getTableStatus()==0){ dinnerTable.setTableStatus(1); dinnerTable.setOrderDate(newDate()); }else{ dinnerTable.setOrderDate(null); dinnerTable.setTableStatus(0); } dinnertableservice.update(dinnerTable); uri="/dinnerTable?method=list"; request.getRequestDispatcher(uri).forward(request,response); } privatevoiddelete(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ Stringid=request.getParameter("id"); dinnertableservice.delete(Integer.parseInt(id)); uri="/dinnerTable?method=list"; request.getRequestDispatcher(uri).forward(request,response); } privatevoidviewUpdate(HttpServletRequestrequest,HttpServletResponseresponse){ //TODOAuto-generatedmethodstub } privatevoidlist(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ //TODOAuto-generatedmethodstub List<DinnerTable>list=dinnertableservice.getAll(); Iterator<DinnerTable>iterator=list.iterator(); while(iterator.hasNext()){ DinnerTabledinnertable=iterator.next(); if(dinnertable.getTableStatus()==0){ dinnertable.setRealStatus("空閑"); dinnertable.setOption("預(yù)定"); }else{ dinnertable.setRealStatus("預(yù)定"); dinnertable.setOption("退桌"); } } request.setAttribute("list",list); uri="/sys/boardList.jsp"; request.getRequestDispatcher(uri).forward(request,response); } privatevoidaddDinnerTable(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ //TODOAuto-generatedmethodstub Stringname=request.getParameter("bName"); DinnerTabledinnertable=newDinnerTable(); dinnertable.setTableStatus(0); dinnertable.setTableName(name); dinnertable.setOrderDate(newDate()); dinnertableservice.save(dinnertable); uri="/dinnerTable?method=list"; request.getRequestDispatcher(uri).forward(request,response); } publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ request.setCharacterEncoding("UTF-8");response.setContentType("text/html;charset=UTF-8"); doGet(request,response); }}菜品部分相應(yīng)代碼:packagecn.itcast.servlet;importjava.io.IOException;importjava.io.PrintWriter;importjava.util.ArrayList;importjava.util.Iterator;importjava.util.List;importjavax.servlet.ServletException;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importjavax.servlet.http.HttpSession;importcn.itcast.entity.DinnerTable;importcn.itcast.entity.Employee;importcn.itcast.entity.Food;importcn.itcast.entity.FoodType;importcn.itcast.entity.OrderDetail;importcn.itcast.entity.Orders;importcn.itcast.service.IDinnerTableService;importcn.itcast.service.IFoodService;importcn.itcast.service.IFoodTypeService;importcn.itcast.service.IOrderDetailService;importcn.itcast.service.impl.DinnerTableService;importcn.itcast.service.impl.FoodService;importcn.itcast.service.impl.FoodTypeService;importcn.itcast.service.impl.OrderDetailService;importcn.itcast.utils.Condition;importcn.itcast.utils.PageBean;publicclassFoodServletextendsHttpServlet{IFoodTypeServicefoodtypeservice=newFoodTypeService(); IFoodServicefoodservice=newFoodService(); IOrderDetailServiceorderdetailservice=newOrderDetailService(); IDinnerTableServicedinnertableservice=newDinnerTableService(); privateStringuri; publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ Stringmethod=request.getParameter("method"); request.setCharacterEncoding("UTF-8"); response.setContentType("text/html;charset=UTF-8"); if("addFood".equals(method)){ addFood(request,response); }elseif("list".equals(method)){ list(request,response); }elseif("viewUpdate".equals(method)){ viewUpdate(request,response); }elseif("delete".equals(method)){ delete(request,response); }elseif("update".equals(method)){ update(request,response); }elseif("search".equals(method)){ search(request,response); }elseif("foodDetail".equals(method)){ foodDetail(request,response); }elseif("fooddetail".equals(method)){ fooddetail(request,response); }elseif("clientCart".equals(method)){ clientCart(request,response); }elseif("deleteuniquefood".equals(method)){ deleteuniquefood(request,response); }elseif("listuniquefood".equals(method)){ listuniquefood(request,response); }elseif("login".equals(method)){ login(request,response); }elseif("clear".equals(method)){ clear(request,response); }elseif("getEmp".equals(method)){ getEmp(request,response); }elseif("searchemp".equals(method)){ searchemp(request,response); }elseif("delemp".equals(method)){ delemp(request,response); }elseif("orderlist".equals(method)){ orderlist(request,response); }elseif("updatestatus".equals(method)){ updatestatus(request,response); } } privatevoidupdatestatus(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ Stringid=request.getParameter("orderid"); Ordersorder=foodservice.getOrderById(Integer.parseInt(id)); foodservice.changorderstatus(order); // request.setAttribute("orderlist",orderlist); uri="/food?method=orderlist"; request.getRequestDispatcher(uri).forward(request,response); } privatevoidorderlist(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ List<Orders>orderlist=foodservice.getOrderList(); for(Ordersorder:orderlist){ DinnerTablefindById=dinnertableservice.findById(order.getTable_id()); order.setTablename(findById.getTableName()); } request.setAttribute("orderlist",orderlist); uri="/sys/orderList.jsp"; request.getRequestDispatcher(uri).forward(request,response); }privatevoidgetEmp(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ List<Employee>emplist=foodservice.getEmp(); request.setAttribute("emplist",emplist); uri="/sys/employee.jsp"; request.getRequestDispatcher(uri).forward(request,response); } privatevoidclear(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ //uri="/dinnerTable?method=list"; //request.getRequestDispatcher(uri).forward(request,response); request.getSession().invalidate(); response.sendRedirect("http://localhost:8080/hotel/sys/index.jsp"); } privatevoidlogin(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ Strings=request.getParameter("employeeid"); Employeee=foodservice.getById(Integer.parseInt(s)); if(e!=null){ request.getSession().setAttribute("employee",e); response.sendRedirect("http://localhost:8080/hotel/sys/index1.jsp"); }else{ response.sendRedirect("http://localhost:8080/hotel/sys/index2.jsp"); } //uri="/dinnerTable?method=list"; //request.getRequestDispatcher(uri).forward(request,response); } privatevoidlistuniquefood(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ List<FoodType>list=foodtypeservice.getAll(); request.setAttribute("listFoodType",list); Strings=(String)request.getSession().getAttribute("tableId"); intid=0; if(s!=""){ id=Integer.parseInt(s); } List<OrderDetail>all=orderdetailservice.getAll(); List<Food>foodlist=newArrayList<Food>(); intpricecount=0; Iterator<OrderDetail>iterator=all.iterator(); while(iterator.hasNext()){ OrderDetailorderDetail2=iterator.next(); intorderId=orderDetail2.getOrderId(); intfood_id=orderDetail2.getFood_id(); if(orderId==id){ Foodfood=foodservice.findById(food_id); foodlist.add(food); pricecount=pricecount+(int)food.getPrice(); } } System.out.println(pricecount); request.setAttribute("pricecount",pricecount); request.setAttribute("uniquefoodlist",foodlist); uri="/app/clientCart.jsp"; request.getRequestDispatcher(uri).forward(request,response); } privatevoiddeleteuniquefood(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ Stringstring=request.getParameter("id"); System.out.println(string); orderdetailservice.delete(Integer.parseInt(string)); uri="/food?method=listuniquefood"; request.getRequestDispatcher(uri).forward(request,response); } privatevoidclientCart(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ Stringuniquefoodid=request.getParameter("id"); Fooduniquefood=foodservice.findById(Integer.parseInt(uniquefoodid)); OrderDetailorderdetail=newOrderDetail(); orderdetail.setFood_id(uniquefood.getId()); orderdetail.setFoodcount(1); Strings=(String)request.getSession().getAttribute("tableId"); if(s!=""){ intid=Integer.parseInt(s); orderdetail.setOrderId(id); } orderdetailservice.save(orderdetail); uri="/food?method=listuniquefood"; request.getRequestDispatcher(uri).forward(request,response); } privatevoidfooddetail(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ Stringid=request.getParameter("id"); Foodfood=foodservice.findById(Integer.parseInt(id)); request.setAttribute("uniquefood",food); List<FoodType>list=foodtypeservice.getAll(); request.setAttribute("listFoodType",list); uri="/app/caixiangxi.jsp"; request.getRequestDispatcher(uri).forward(request,response); } privatevoidfoodDetail(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ HttpSessionsession=request.getSession(); Objectobject=session.getAttribute("tableId"); if(object!=null){ Stringstring=request.getParameter("tableId"); if(string!=null){ session.setAttribute("tableId",""); session.setAttribute("tableId",string); } } if(object==null){ StringtableId=request.getParameter("tableId"); session.setAttribute("tableId",tableId);} PageBeanpb=newPageBean(); StringcurrentPage=request.getParameter("currentPage"); if(currentPage==null||"".equals(currentPage.trim())){ pb.setCurrentPage(1); }else{ pb.setCurrentPage(Integer.parseInt(currentPage)); } Conditioncondition=newCondition(); StringfoodTypeId=request.getParameter("foodTypeId"); if(foodTypeId!=null&&!foodTypeId.isEmpty()){ condition.setTypeId(Integer.parseInt(foodTypeId)); } StringfoodName=request.getParameter("foodName"); if(foodName!=null){ condition.setFoodName(foodName); } pb.setCondition(condition); foodservice.getAll(pb); inttotalCount=foodservice.getTotalCount(pb); pb.setTotalCount(totalCount); pb.getTotalPage(); request.setAttribute("pb",pb); List<FoodType>list=foodtypeservice.getAll(); request.setAttribute("listFoodType",list); uri="/app/caidan.jsp"; request.getRequestDispatcher(uri).forward(request,response); } privatevoidsearch(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ StringfoodName=request.getParameter("keyword"); List<Food>list=foodservice.getAll(foodName); request.setAttribute("list1",list); uri="/sys/foodList.jsp"; request.getRequestDispatcher(uri).forward(request,response); } privatevoidsearchemp(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ request.setCharacterEncoding("utf-8"); StringempName=request.getParameter("keyword"); //StringempName= List<Employee>list=foodservice.getAllEmp(empName); request.setAttribute("emplist",list); uri="/sys/employee.jsp"; request.getRequestDispatcher(uri).forward(request,response); } privatevoiddelemp(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ request.setCharacterEncoding("utf-8"); Stringid=request.getParameter("id"); foodservice.delemp(id); uri="/food?method=getEmp"; request.getRequestDispatcher(uri).forward(request,response); } privatevoidupdate(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ StringfoodType=request.getParameter("cid"); StringfoodName=request.getParameter("foodName"); Stringprice=request.getParameter("price"); Stringmprice=request.getParameter("mprice"); Stringintroduce=request.getParameter("introduce"); Stringid=request.getParameter("id"); Foodf=newFood(); f.setId(Integer.parseInt(id)); f.setFoodName(foodName); f.setPrice(Double.parseDouble(price)); f.setMprice(Double.parseDouble(mprice)); f.setRemark(introduce); inti=foodtypeservice.findByName(foodType); f.setFoodType_id(i); foodservice.update(f); uri="/food?method=list"; request.getRequestDispatcher(uri).forward(request,response); } privatevoiddelete(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ Stringid=request.getParameter("id"); foodservice.delete(Integer.parseInt(id)); uri="/food?method=list"; request.getRequestDispatcher(uri).forward(request,response); } privatevoidviewUpdate(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ Stringid=request.getParameter("id"); Foodfood2=foodservice.findById(Integer.parseInt(id)); FoodTypefoodType=foodtypeservice.findById(food2.getFoodType_id()); food2.setFoodType(foodType); request.setAttribute("food2",food2); uri="/sys/updateFood.jsp"; request.getRequestDispatcher(uri).forward(request,response); } privatevoidaddFood(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ StringfoodType=request.getParameter("selectName"); StringfoodName=request.getParameter("foodName"); Stringprice=request.getParameter("price"); Stringmprice=request.getParameter("mprice"); Stringintroduce=request.getParameter("introduce"); Foodf=newFood(); inti=foodtypeservice.findByName(foodType); f.setFoodType_id(i); f.setFoodName(foodName); f.setPrice(Double.parseDouble(price)); f.setMprice(Double.parseDouble(mprice)); f.setRemark(introduce); foodservice.save(f); uri="/food?method=list"; request.getRequestDispatcher(uri).forward(request,response); } privatevoidlist(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ List<Food>list1=foodservice.getAll(); request.setAttribute("list1",list1); uri="/sys/foodList.jsp"; request.getRequestDispatcher(uri).forward(request,response); } publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ request.setCharacterEncoding("UTF-8"); response.setContentType("text/html;charset=UTF-8"); this.doGet(request,response); }}菜種類部分相應(yīng)代碼:packagecn.itcast.servlet;importjava.io.IOException;importjava.io.PrintWriter;importjava.util.List;importjavax.servlet.ServletException;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importcn.itcast.entity.FoodType;importcn.itcast.factory.BeanFactory;importcn.itcast.service.IFoodTypeService;importcn.itcast.service.impl.FoodTypeService;publicclassFoodTypeServletextendsHttpServlet{privateIFoodTypeServicefoodTypeService=BeanFactory.getInstance("foodTypeService",IFoodTypeService.class);privateStringuri; publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{Stringmethod=request.getParameter("method");request.setCharacterEncoding("UTF-8");response.setContentType("text/html;charset=UTF-8");if("addFoodType".equals(method)){ addFoodType(request,response);}

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論