網(wǎng)站左下角廣告代碼百度瀏覽器網(wǎng)址鏈接
近年來,我國經(jīng)濟和社會發(fā)展迅速,人們物質(zhì)生活水平日漸提高,餐飲行業(yè)更是發(fā)展迅速,人們對于餐飲行業(yè)的認識和要求也越來越高。傳統(tǒng)形式的餐飲行業(yè)都是以人為本,管理起來需要很多人力、物力、財力,既不方便管理者的管理,也不方便顧客實時了解餐廳動態(tài),給傳統(tǒng)餐飲行業(yè)的經(jīng)營和其發(fā)展管理帶來了諸多不便。因此,通過互聯(lián)網(wǎng)來改變傳統(tǒng)餐飲行業(yè)現(xiàn)狀已經(jīng)成為了餐飲行業(yè)發(fā)展的必經(jīng)之路。對此,本文設(shè)計并實現(xiàn)了一個基于微服務(wù)架構(gòu)的餐飲系統(tǒng),采用react 、 ant design pro、TypeScript等前端技術(shù),以及SpringBoot、 Spring Cloud后端框架構(gòu)建的一個管理系統(tǒng)。
本系統(tǒng)包括面向消費者的餐飲系統(tǒng)和面向管理者的管理系統(tǒng)兩部分,前臺餐飲系統(tǒng)主要由用戶登錄、注冊、網(wǎng)站首頁、餐飲資訊、美食菜單、堂食訂單、出餐信息、外賣訂單、配送信息、取消訂單、個人中心等功能組成。后臺管理系統(tǒng)由登錄首頁、網(wǎng)站管理(輪播圖、通知公告)、內(nèi)容管理(餐飲資訊、資訊分類)、人員管理(管理員、普通用戶、餐飲商家)模塊管理(菜品分類、美食菜單、堂食訂單、出餐信息、外賣訂單、配送信息、取消訂單)等功能組成。最終本系統(tǒng)經(jīng)過測試,基本功能全面,操作方便,頁面設(shè)計簡潔美觀,本系統(tǒng)可以滿足用戶使用需求。
關(guān)鍵詞:餐飲系統(tǒng);Java;SpringBoot,Spring Cloud,Mysql數(shù)據(jù)庫
In recent years, China's economy and society have developed rapidly, people's material living standards have improved day by day, and the catering industry has developed rapidly. People's awareness and requirements for the catering industry are also increasing. The traditional form of catering industry is people-oriented, which requires a lot of human, material and financial resources to manage. It is not convenient for managers to manage, nor for customers to understand the restaurant dynamics in real time, which has brought a lot of inconvenience to the operation and development management of the traditional catering industry. Therefore, changing the current situation of the traditional catering industry through the Internet has become the only way for the development of the catering industry. In this regard, this paper designs and implements a catering system based on microservice architecture, which uses the front-end technologies such as react, ant design pro, TypeScript, and a management system built by the back-end frameworks of SpringBoot and Spring Cloud.
This system consists of two parts: a consumer-oriented catering system and a management-oriented management system. The front catering system is mainly composed of user login, registration, website home page, catering information, food menu, dining order, delivery order, delivery order, cancellation order, personal center and other functions. The background management system consists of login home page, website management (rotation chart, notice announcement), content management (catering information, information classification), personnel management (administrators, ordinary users, catering merchants) module management (food classification, food menu, restaurant order, meal information, take-out order, distribution information, cancellation order) and other functions. Finally, after testing, the system has comprehensive basic functions, convenient operation, simple and beautiful page design, and can meet user needs.

Keywords:Catering system; Java; SpringBoot, Spring Cloud, MySQL database
目??錄
摘 ?要 I
ABSTRACT II
第1章 緒論 1
1.1背景及意義 1
1.2 國內(nèi)外研究概況 1
1.3 研究的內(nèi)容 2
第2章 相關(guān)技術(shù) 3
2.1開發(fā)技術(shù) 3
2.2 Java簡介 3
2.3 ?MVVM模式 3
2.4??B/S結(jié)構(gòu) 4
2.5??MySQL數(shù)據(jù)庫 4
2.6 ?SpringBoot框架 4
第3章 系統(tǒng)分析 6
3.1 需求分析 6
3.2 系統(tǒng)可行性分析 6
3.2.1技術(shù)可行性:技術(shù)背景 6
3.2.2經(jīng)濟可行性 7
3.2.3操作可行性: 7
3.3?項目設(shè)計目標與原則 7
3.4系統(tǒng)流程分析 8
3.4.1操作流程 8
3.4.2添加信息流程 9
3.4.3刪除信息流程 10
第4章 系統(tǒng)設(shè)計 11
4.1 系統(tǒng)體系結(jié)構(gòu) 11
4.2系統(tǒng)結(jié)構(gòu)設(shè)計 11
4.3開發(fā)流程設(shè)計 12
4.4 數(shù)據(jù)庫設(shè)計原則 13
4.4 數(shù)據(jù)表 14
第5章 系統(tǒng)詳細設(shè)計 18
5.1管理員功能模塊 18
5.2教師功能模塊 20
5.3學(xué)生功能模塊 22
第6章 ?系統(tǒng)測試 26
6.1系統(tǒng)測試的目的 26
6.2系統(tǒng)測試方法 26
6.3功能測試 27
結(jié) ?論 28
致 ?謝 29
參考文獻 30
第1章 引言
1.1背景及意義
隨著我國市場經(jīng)濟的快速發(fā)展,各行業(yè)都呈現(xiàn)出生機勃勃的發(fā)展景象,其中餐飲業(yè)的發(fā)展尤為突出。近兩年來已呈現(xiàn)出高速發(fā)展的態(tài)勢。但在快速發(fā)展的同時,餐飲業(yè)在日常經(jīng)營管理中仍普遍采用手工管理方式,整體科技含量低。隨著餐飲企業(yè)規(guī)模和數(shù)量的不斷增長,手工管理模式無論是在工作效率、人員成本還是提供決策信息方面都已難以適應(yīng)現(xiàn)代化經(jīng)營管理的要求,因此制約了整個餐飲業(yè)的規(guī)?;l(fā)展和整體服務(wù)水平的提升。有效的管理成為了一個難題,為能有效的解決這些問題提高企業(yè)的經(jīng)濟效益,在這些中小型飯店中采用工作流技術(shù),結(jié)合飯店綠色管理內(nèi)容,實施計算機管理信息系統(tǒng)不視為一條有效的解決途徑。
餐飲業(yè)的蓬勃發(fā)展帶動餐飲投資多元化,大量資本的進入進一步推動了餐飲業(yè)的快速、健康發(fā)展,隨著社會各領(lǐng)域信息化建設(shè)的不斷普及,餐飲業(yè)也開始不斷注入信息化元素,將餐飲業(yè)務(wù)融入計算機管理,既節(jié)省人力資源,也提高了管理效率和工作效率,將餐飲業(yè)提升到一個新的階段。
1.2 國內(nèi)外研究概況
隨著信息化技術(shù)的日益普及,餐飲這樣的傳統(tǒng)行業(yè)也越來越多的采用信息技術(shù)來管理業(yè)務(wù),市場上餐飲管理軟件正處于百花齊放、百家爭鳴的階段。
在國內(nèi),餐飲軟件的發(fā)展也正處于蓬勃發(fā)展的時期,如北京天良軟件,它是一家以軟件開發(fā)、銷售為主營方向的技術(shù)開發(fā)型企業(yè)。天良軟件立足于餐飲及酒店客房管理市場,致力于為客戶提供一流的產(chǎn)品及服務(wù),企業(yè)下設(shè)市場拓展部、產(chǎn)品研發(fā)部、公關(guān)策劃部、客戶服務(wù)部等主要職能部門。
在國外發(fā)展比較成熟的軟件有龍騰觸摸屏點菜系統(tǒng),“ 龍騰餐飲管理系統(tǒng)”軟件采用了獨特的組網(wǎng)技術(shù),以Window 為操作平臺,全32位應(yīng)用軟件系統(tǒng),功能在國內(nèi)處于領(lǐng)先地位。網(wǎng)絡(luò)系統(tǒng)是以Windows搭成的對等網(wǎng)絡(luò),簡單實用、穩(wěn)定可靠,保證企業(yè)非常迅速地把信息傳遞到各個點。這個系統(tǒng)適用于快餐企業(yè)、西餐、火鍋有勾劃式菜單的餐飲企業(yè),中高檔中餐可以配合其他點菜設(shè)備一起 使用這個系統(tǒng)。
1.3 研究的內(nèi)容
本系統(tǒng)從餐飲行業(yè)的實際需要出發(fā),以提高工作效率、節(jié)約時間為目標,設(shè)計開發(fā)了一個基于微服務(wù)的餐飲系統(tǒng),餐飲系統(tǒng)圍繞系統(tǒng)管理員、普通用戶和餐飲商家三種角色,主要功能包括首頁、網(wǎng)站管理(輪播圖、通知公告)、內(nèi)容管理(餐飲資訊、資訊分類)、人員管理(管理員、普通用戶、餐飲商家)模塊管理(菜品分類、美食菜單、堂食訂單、出餐信息、外賣訂單、配送信息、取消訂單)等功能模塊。論文首先介紹了本系統(tǒng)的相關(guān)技術(shù),并進行了需求分析,分別給出了系統(tǒng)Web服務(wù)器端和移動終端的概要設(shè)計、數(shù)據(jù)庫設(shè)計和詳細設(shè)計,實現(xiàn)完成的系統(tǒng)經(jīng)測試上線,運行效果良好。
第2章 相關(guān)技術(shù)
2.1開發(fā)技術(shù)
本系統(tǒng)前端框架采用了比較流行的漸進式JavaScript框架react。結(jié)合ant design pro和TypeScript技術(shù)。后端部分:采用SpringBoot與SpringCloud作為開發(fā)框架,同時集成MyBatis、nacos 、gateway等相關(guān)技術(shù)。
2.2 React框架
React框架是一個用于構(gòu)建用戶界面的JavaScript庫。React是一套UI引擎,是DOM的抽象層,并不是web應(yīng)用的完整解決方案。它遵循組件設(shè)計模式、聲明式編程范式和函數(shù)式編程的概念,使用虛擬DOM有效的操作DOM,并且遵循從高階組件到低階組件的單向數(shù)據(jù)流,從而使前端應(yīng)用程序達到高效。主要特點:1.聲明式設(shè)計,2.?高效性3.?靈活性4.?組件5.?單向數(shù)據(jù)流。具有虛擬DOM加diff算法減少DOM操作提高渲染性能;使用聲明式語法JSX重新定義視圖開發(fā);代碼更加模塊化,復(fù)用率高;單向數(shù)據(jù)流,可預(yù)計可控制;將DOM操作抽象為狀態(tài)的改變等優(yōu)勢。
2.3 ?ant design pro
“Ant Design Pro 是一個企業(yè)級中后臺前端/設(shè)計解決方案,秉承 Ant Design 的設(shè)計價值觀,致力于在設(shè)計規(guī)范和基礎(chǔ)組件的基礎(chǔ)上,繼續(xù)向上構(gòu)建,提煉出典型模板/業(yè)務(wù)組件/配套設(shè)計資源,進一步提升企業(yè)級中后臺產(chǎn)品設(shè)計研發(fā)過程中的『用戶』和『設(shè)計者』的體驗。隨著『設(shè)計者』的不斷反饋,它也將持續(xù)迭代,逐步沉淀和總結(jié)出更多設(shè)計模式和相應(yīng)的代碼實現(xiàn),闡述中后臺產(chǎn)品模板/組件/業(yè)務(wù)場景的最佳實踐。
2.4??TypeScript
TypeScript 起源于使用JavaScript開發(fā)的大型項目 。由于JavaScript語言本身的局限性,難以勝任大型項目的開發(fā)和維護。因此微軟開發(fā)了TypeScript ,使得其能夠勝任大型項目的開發(fā)。TypeScript擴展了JavaScript的語法,所以任何現(xiàn)有的JavaScript程序可以運行在TypeScript環(huán)境中。TypeScript是為大型應(yīng)用的開發(fā)而設(shè)計,并且可以編譯為JavaScript。語法上,TypeScript 很類似于 JScript .NET,另外一個添加了對靜態(tài)類型,經(jīng)典的面向?qū)ο笳Z言特性如類,繼承,接口和命名空間等的支持的 Microsoft 對 ECMAScript 語言標準的實現(xiàn)。
2.5??B/S結(jié)構(gòu)
B/S(Browser/Server)比前身架構(gòu)更為省事的架構(gòu)。它借助Web server完成數(shù)據(jù)的傳遞交流。只需要下載瀏覽器作為客戶端,那么工作就達到“瘦身”效果, 不需要考慮不停裝軟件的問題。
2.6 ?MySQL數(shù)據(jù)庫
Mysql數(shù)據(jù)庫在編程過程中的作用是很廣泛的,為用戶進行數(shù)據(jù)查詢帶來了方便。Mysql數(shù)據(jù)庫的應(yīng)用因其靈活性強,功能強大,所以在實現(xiàn)某功能時只需要一小段代碼,而不像其他程序需要編寫大段代碼??傮w來說,Mysql數(shù)據(jù)庫的語言相對要簡潔很多。
數(shù)據(jù)流程分析主要就是數(shù)據(jù)存儲的儲藏室,它是在計算機上進行的,而不是現(xiàn)實中的儲藏室。數(shù)據(jù)的存放是按固定格式,而不是無序的,其定義就是:長期有固定格式,可以共享的存儲在計算機存儲器上。數(shù)據(jù)庫管理主要是數(shù)據(jù)存儲、修改和增加以及數(shù)據(jù)表的建立。為了保證系統(tǒng)數(shù)據(jù)的正常運行,一些有能力的處理者可以進行管理而不需要專業(yè)的人來處理。數(shù)據(jù)表的建立,可以對數(shù)據(jù)表中的數(shù)據(jù)進行調(diào)整,數(shù)據(jù)的重新組合及重新構(gòu)造,保證數(shù)據(jù)的安全性。介于數(shù)據(jù)庫的功能強大等特點,本系統(tǒng)的開發(fā)主要應(yīng)用了Mysql進行對數(shù)據(jù)的管理。
?2.7??SpringBoot框架
2.8??SpringCloud框架
SpringCloud框架五大組件分別為Eureka,Ribbon,Hystrix ,Zuul,Config。Eureka作用:實現(xiàn)服務(wù)治理(服務(wù)注冊與發(fā)現(xiàn))簡介:Spring Cloud Eureka是Spring Cloud Netflix項目下的服務(wù)治理模塊。由兩個組件組成:Eureka服務(wù)端和Eureka客戶端。Eureka服務(wù)端用作服務(wù)注冊中心。支持集群部署。Eureka客戶端是一個java客戶端,用來處理服務(wù)注冊與發(fā)現(xiàn)。在應(yīng)用啟動時,Eureka客戶端向服務(wù)端注冊自己的服務(wù)信息,同時將服務(wù)端的服務(wù)信息緩存到本地。客戶端會和服務(wù)端周期性的進行心跳交互,以更新服務(wù)租約和服務(wù)信息。
Ribbon主要提供客戶側(cè)的軟件負載均衡算法。簡介:Spring Cloud Ribbon是一個基于HTTP和TCP的客戶端負載均衡工具,它基于Netflix Ribbon實現(xiàn)。通過Spring Cloud的封裝,可以讓我們輕松地將面向服務(wù)的REST模版請求自動轉(zhuǎn)換成客戶端負載均衡的服務(wù)調(diào)用。關(guān)鍵點就是將外界的rest調(diào)用,根據(jù)負載均衡策略轉(zhuǎn)換為微服務(wù)調(diào)用。Ribbon有比較多的負載均衡策略。
Hystrix作用:斷路器,保護系統(tǒng),控制故障范圍。簡介:為了保證其高可用,單個服務(wù)通常會集群部署。由于網(wǎng)絡(luò)原因或者自身的原因,服務(wù)并不能保證100%可用,如果單個服務(wù)出現(xiàn)問題,調(diào)用這個服務(wù)就會出現(xiàn)線程阻塞,此時若有大量的請求涌入,Servlet容器的線程資源會被消耗完畢,導(dǎo)致服務(wù)癱瘓。服務(wù)與服務(wù)之間的依賴性,故障會傳播,會對整個微服務(wù)系統(tǒng)造成災(zāi)難性的嚴重后果,這就是服務(wù)故障的“雪崩”效應(yīng)。
Zuul作用:api網(wǎng)關(guān),路由,負載均衡等多種作用。簡介:類似nginx,反向代理的功能,不過netflix自己增加了一些配合其他組件的特性。在微服務(wù)架構(gòu)中,后端服務(wù)往往不直接開放給調(diào)用端,而是通過一個API網(wǎng)關(guān)根據(jù)請求的url,路由到相應(yīng)的服務(wù)。當添加API網(wǎng)關(guān)后,在第三方調(diào)用端和服務(wù)提供方之間就創(chuàng)建了一面墻,這面墻直接與調(diào)用方通信進行權(quán)限控制,后將請求均衡分發(fā)給后臺服務(wù)端。
第3章 系統(tǒng)分析
3.1 需求分析
系統(tǒng)所要實現(xiàn)的功能分析,對于現(xiàn)在網(wǎng)絡(luò)方便的管理,系統(tǒng)要實現(xiàn)用戶可以直接在平臺上進行查看所有數(shù)據(jù)信息,根據(jù)需求可以進行在線添加,刪除或修改信息,這樣既能節(jié)省時間,不用像傳統(tǒng)的方式耽誤時間。所以餐飲系統(tǒng)的開發(fā)不僅僅是能滿足用戶的需求,還能提高操作人員的工作效率,減少不必要的工作量。
3.2 系統(tǒng)可行性分析
3.2.1技術(shù)可行性:技術(shù)背景
該系統(tǒng)在Windows操作系統(tǒng)中進行開發(fā),并且目前PC機的性能已經(jīng)可以勝任普通網(wǎng)站的web服務(wù)器。系統(tǒng)開發(fā)所使用的技術(shù)也都是自身所具有的,也是當下廣泛應(yīng)用的技術(shù)之一。
系統(tǒng)的開發(fā)環(huán)境和配置都是可以自行安裝的,系統(tǒng)使用react等開發(fā)工具,使用比較成熟的Mysql數(shù)據(jù)庫進行對系統(tǒng)前臺及后臺的數(shù)據(jù)交互,根據(jù)技術(shù)語言對數(shù)據(jù)庫,結(jié)合需求進行修改維護,可以使得網(wǎng)站運行更具有穩(wěn)定性和安全性,從而完成實現(xiàn)網(wǎng)站的開發(fā)。
(1)硬件可行性分析
基于微服務(wù)架構(gòu)的餐飲系統(tǒng)及信息分析的設(shè)計對于所使用的計算機沒有什么硬性的要求,計算機只要可以正常的使用進行代碼的編寫及頁面設(shè)計就可行,主要是對于服務(wù)器有些要求,對于平臺搭建完成要上傳的服務(wù)器是有一定的要求的,服務(wù)器必須選擇安全性比較高的,然后就是在打開網(wǎng)站必須順暢,不能停頓太長時間;性價比高;安全性高。
(2)軟件可行性分析
開發(fā)整個系統(tǒng)使用的是云計算,流量的可擴展性和基于流量的智能調(diào)整云計算的優(yōu)點就是流量的可擴展性和基于流量的智能調(diào)整,保障系統(tǒng)的安全及數(shù)據(jù)信息的及時備份。
因此,我們從兩個方面進行了可行性研究,可以看出系統(tǒng)的開發(fā)沒有問題。
3.2.2經(jīng)濟可行性
基于微服務(wù)架構(gòu)的餐飲系統(tǒng)開發(fā)之前所做的市場調(diào)研及相關(guān)的管理系統(tǒng),都是沒有任何費用的,都是通過開發(fā)者自己的努力,所有的工作的都是自己親力親為,在碰到自己比較難以解決的問題,大多是通過同學(xué)和指導(dǎo)老師的幫助進行相關(guān)信息的解決,所以對于餐飲系統(tǒng)的開發(fā)在經(jīng)濟上是完全可行的,沒有任何費用支出的。
使用比較成熟的技術(shù),所以系統(tǒng)在開發(fā)人力、財力要求不高,具有經(jīng)濟可行性。
3.2.3操作可行性:?
可操作性主要是對基于微服務(wù)架構(gòu)的餐飲系統(tǒng)設(shè)計完成后,用戶的使用體驗度,以及管理員可以通過系統(tǒng)隨時管理相關(guān)的數(shù)據(jù)信息,并且對于系統(tǒng)管理員、普通用戶、餐飲商家三種角色,都可以簡單明了的進入到自己的系統(tǒng)界面,通過界面導(dǎo)航菜單可以簡單明了地操作功能模塊,方便用戶信息的操作需求和管理員管理數(shù)據(jù)信息,對于系統(tǒng)的操作,不需要專業(yè)人員都可以直接進行功能模塊的操作管理,所以在系統(tǒng)的可操作性是完全可以的。本系統(tǒng)的操作使用的也是界面窗口進行登錄,所以操作人員只要會簡單的電腦操作就完全可以的。
3.3?項目設(shè)計目標與原則
1、關(guān)于餐飲系統(tǒng)的基本要求
(1)功能要求:主要功能包括首頁、網(wǎng)站管理(輪播圖、通知公告)、內(nèi)容管理(餐飲資訊、資訊分類)、人員管理(管理員、普通用戶、餐飲商家)模塊管理(菜品分類、美食菜單、堂食訂單、出餐信息、外賣訂單、配送信息、取消訂單)等功能模塊。
(2)性能:在不同操作系統(tǒng)上均能無差錯實現(xiàn)在不同類型的用戶登入相應(yīng)界面后能不出差錯、方便地進行預(yù)期操作。
(3)安全與保密要求:用戶都必須通過身份驗證才能進入系統(tǒng),并且用戶的權(quán)限也需要根據(jù)用戶的類型進行限定。
(4)環(huán)境要求:支持多種平臺,可在Windows系列、Vista系統(tǒng)等多種操作系統(tǒng)下使用。
2、開發(fā)目標
餐飲系統(tǒng)的主要開發(fā)目標如下:
(1)實現(xiàn)管理系統(tǒng)信息關(guān)系的系統(tǒng)化、規(guī)范化和自動化;
(2)減少維護人員的工作量以及實現(xiàn)用戶對信息的控制和管理。
(3)方便查詢信息及管理信息等;
(4)通過網(wǎng)絡(luò)操作,改善處理問題的效率,提高操作人員利用率;
(5)考慮到用戶多樣性特點,要求界面簡單,操作簡便。
3、設(shè)計原則
本系統(tǒng)采用react、ant design pro、TypeScript等技術(shù),Mysql數(shù)據(jù)庫開發(fā),充分保證了系統(tǒng)穩(wěn)定性、完整性。
餐飲系統(tǒng)的設(shè)計思想如下:
- 操作簡單方便、系統(tǒng)界面安全良、簡單明了的頁面布局、方便查詢相關(guān)信息。
2、即時可見:對餐飲系統(tǒng)信息的處理將可以實時查詢到,從而實現(xiàn)“即時發(fā)布、即時見效”的系統(tǒng)功能。
3、功能的完善性:擁有包括用戶管理,培養(yǎng)項目管理,課表管理,學(xué)習(xí)成果,人才培養(yǎng)方案等功能等模塊的修改維護操作。
3.4系統(tǒng)流程分析
3.4.1操作流程

圖3-1登錄流程圖
3.4.2添加信息流程
添加信息流程圖,如圖所示:

圖3-2添加信息流程圖
3.4.3刪除信息流程
刪除信息流程圖,如圖所示:

圖3-3刪除信息流程圖
第4章 系統(tǒng)設(shè)計
4.1 系統(tǒng)體系結(jié)構(gòu)
本系統(tǒng)選擇B/S結(jié)構(gòu)(Browser/Server,瀏覽器/服務(wù)器結(jié)構(gòu))和基于Web服務(wù)兩種模式。適合在互聯(lián)網(wǎng)上進行操作,只要用戶能連網(wǎng),任何時間、任何地點都可以進行系統(tǒng)的操作使用。系統(tǒng)工作原理圖如圖4-1所示:

圖4-1 系統(tǒng)工作原理圖
4.2系統(tǒng)結(jié)構(gòu)設(shè)計
整個系統(tǒng)是由多個功能模塊組合而成的,要將所有的功能模塊都一一列舉出來,然后進行逐個的功能設(shè)計,使得每一個模塊都有相對應(yīng)的功能設(shè)計,然后進行系統(tǒng)整體的設(shè)計。
本系統(tǒng)結(jié)構(gòu)圖如圖4-2所示。

圖4-2 系統(tǒng)功能結(jié)構(gòu)圖
4.3開發(fā)流程設(shè)計
系統(tǒng)流程的分析是通過調(diào)查系統(tǒng)所涉及問題的識別、可行性、可操作性、系統(tǒng)分析處理能力等具體環(huán)節(jié)來調(diào)節(jié)、整理系統(tǒng)的設(shè)計方案以確保系統(tǒng)能達到理想的狀態(tài)。這些操作都要從注冊、登錄處著眼進行一系列的流程測試保證數(shù)據(jù)庫的完整,從而把控系統(tǒng)所涉及信息管理的安全、保證信息輸入、輸出正常轉(zhuǎn)換。然后,通過實際操作完成流程圖的繪制工作。
餐飲系統(tǒng)的開發(fā)對管理模塊和系統(tǒng)使用的數(shù)據(jù)庫進行分析,編寫代碼,系統(tǒng)測試,如圖4-4所示。

圖4-4開發(fā)系統(tǒng)流程圖
4.4 數(shù)據(jù)庫設(shè)計原則
學(xué)習(xí)編程,我們都知道數(shù)據(jù)庫設(shè)計是基于需要設(shè)計的系統(tǒng)功能,我們需要建立一個數(shù)據(jù)庫關(guān)系模型,用于存儲數(shù)據(jù)信息,這樣當我們在程序中時,就沒有必要為程序頁面添加數(shù)據(jù),從而提高系統(tǒng)的效率。數(shù)據(jù)庫存儲了很多信息,可以說是信息管理系統(tǒng)的核心和基礎(chǔ),數(shù)據(jù)庫還提供了添加、刪除、修改和檢查,使系統(tǒng)能夠快速找到自己想要的信息,而不是在程序代碼中找到。數(shù)據(jù)庫中信息表的每個部分根據(jù)一定的關(guān)系精確地組合,排列和組合成數(shù)據(jù)表。
通過餐飲系統(tǒng)的功能進行規(guī)劃分成幾個實體信息,實體信息將通過ER圖進行說明,本系統(tǒng)的主要實體圖如下:
管理員信息屬性圖如圖4-5所示。

圖4-5 管理員信息實體屬性圖
4.4 數(shù)據(jù)表
將數(shù)據(jù)庫概念設(shè)計的E-R圖轉(zhuǎn)換為關(guān)系數(shù)據(jù)庫。在關(guān)系數(shù)據(jù)庫中,數(shù)據(jù)關(guān)系由數(shù)據(jù)表組成,但是表的結(jié)構(gòu)表現(xiàn)在表的字段上。
表access_token (登陸訪問時長)
編號 | 名稱 | 數(shù)據(jù)類型 | 長度 | 小數(shù)位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | token_id | int | 10 | 0 | N | Y | 臨時訪問牌ID | |
2 | token | varchar | 64 | 0 | Y | N | 臨時訪問牌 | |
3 | info | text | 65535 | 0 | Y | N | ||
4 | maxage | int | 10 | 0 | N | N | 2 | 最大壽命:默認2小時 |
5 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創(chuàng)建時間: |
6 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間: |
7 | user_id | int | 10 | 0 | N | N | 0 | 用戶編號: |
表article (文章:用于內(nèi)容管理系統(tǒng)的文章)
編號 | 名稱 | 數(shù)據(jù)類型 | 長度 | 小數(shù)位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | article_id | mediumint | 8 | 0 | N | Y | 文章id:[0,8388607] | |
2 | title | varchar | 125 | 0 | N | Y | 標題:[0,125]用于文章和html的title標簽中 | |
3 | type | varchar | 64 | 0 | N | N | 0 | 文章分類:[0,1000]用來搜索指定類型的文章 |
4 | hits | int | 10 | 0 | N | N | 0 | 點擊數(shù):[0,1000000000]訪問這篇文章的人次 |
5 | praise_len | int | 10 | 0 | N | N | 0 | 點贊數(shù) |
6 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創(chuàng)建時間: |
7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間: |
8 | source | varchar | 255 | 0 | Y | N | 來源:[0,255]文章的出處 | |
9 | url | varchar | 255 | 0 | Y | N | 來源地址:[0,255]用于跳轉(zhuǎn)到發(fā)布該文章的網(wǎng)站 | |
10 | tag | varchar | 255 | 0 | Y | N | 標簽:[0,255]用于標注文章所屬相關(guān)內(nèi)容,多個標簽用空格隔開 | |
11 | content | longtext | 2147483647 | 0 | Y | N | 正文:文章的主體內(nèi)容 | |
12 | img | varchar | 255 | 0 | Y | N | 封面圖 | |
13 | description | text | 65535 | 0 | Y | N | 文章描述 |
表article_type (文章分類)
編號 | 名稱 | 數(shù)據(jù)類型 | 長度 | 小數(shù)位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | type_id | smallint | 5 | 0 | N | Y | 分類ID:[0,10000] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 顯示順序:[0,1000]決定分類顯示的先后順序 |
3 | name | varchar | 16 | 0 | N | N | 分類名稱:[2,16] | |
4 | father_id | smallint | 5 | 0 | N | N | 0 | 上級分類ID:[0,32767] |
5 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述該分類的作用 | |
6 | icon | text | 65535 | 0 | Y | N | 分類圖標: | |
7 | url | varchar | 255 | 0 | Y | N | 外鏈地址:[0,255]如果該分類是跳轉(zhuǎn)到其他網(wǎng)站的情況下,就在該URL上設(shè)置 | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創(chuàng)建時間: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間: |
表auth (用戶權(quán)限管理)
編號 | 名稱 | 數(shù)據(jù)類型 | 長度 | 小數(shù)位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | auth_id | int | 10 | 0 | N | Y | 授權(quán)ID: | |
2 | user_group | varchar | 64 | 0 | Y | N | 用戶組: | |
3 | mod_name | varchar | 64 | 0 | Y | N | 模塊名: | |
4 | table_name | varchar | 64 | 0 | Y | N | 表名: | |
5 | page_title | varchar | 255 | 0 | Y | N | 頁面標題: | |
6 | path | varchar | 255 | 0 | Y | N | 路由路徑: | |
7 | position | varchar | 32 | 0 | Y | N | 位置: | |
8 | mode | varchar | 32 | 0 | N | N | _blank | 跳轉(zhuǎn)方式: |
9 | add | tinyint | 3 | 0 | N | N | 1 | 是否可增加: |
10 | del | tinyint | 3 | 0 | N | N | 1 | 是否可刪除: |
11 | set | tinyint | 3 | 0 | N | N | 1 | 是否可修改: |
12 | get | tinyint | 3 | 0 | N | N | 1 | 是否可查看: |
13 | field_add | varchar | 500 | 0 | Y | N | 添加字段: | |
14 | field_set | varchar | 500 | 0 | Y | N | 修改字段: | |
15 | field_get | varchar | 500 | 0 | Y | N | 查詢字段: | |
16 | table_nav_name | varchar | 500 | 0 | Y | N | 跨表導(dǎo)航名稱: | |
17 | table_nav | varchar | 500 | 0 | Y | N | 跨表導(dǎo)航: | |
18 | option | text | 65535 | 0 | Y | N | 配置: | |
19 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創(chuàng)建時間: |
20 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間: |
表cancellation_of_order (取消訂單)
編號 | 名稱 | 數(shù)據(jù)類型 | 長度 | 小數(shù)位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | cancellation_of_order_id | int | 10 | 0 | N | Y | 取消訂單ID | |
2 | order_no | varchar | 64 | 0 | Y | N | 訂單編號 | |
3 | name_of_dishes | varchar | 64 | 0 | Y | N | 菜品名稱 | |
4 | price_of_dishes | int | 10 | 0 | Y | N | 0 | 菜品價格 |
5 | catering_merchants | int | 10 | 0 | Y | N | 0 | 餐飲商家 |
6 | store_name | varchar | 64 | 0 | Y | N | 店鋪名稱 | |
7 | purchase_quantity | int | 10 | 0 | Y | N | 0 | 購買數(shù)量 |
8 | total_price | varchar | 64 | 0 | Y | N | 合計總價 | |
9 | purchase_user | int | 10 | 0 | Y | N | 0 | 購買用戶 |
10 | user_name | varchar | 64 | 0 | Y | N | 用戶姓名 | |
11 | chargeback_reason | text | 65535 | 0 | Y | N | 退單原由 | |
12 | examine_state | varchar | 16 | 0 | N | N | 未審核 | 審核狀態(tài) |
13 | recommend | int | 10 | 0 | N | N | 0 | 智能推薦 |
14 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創(chuàng)建時間 |
15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間 |
表categorization_of_dishes (菜品分類)
編號 | 名稱 | 數(shù)據(jù)類型 | 長度 | 小數(shù)位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | categorization_of_dishes_id | int | 10 | 0 | N | Y | 菜品分類ID | |
2 | categorization_of_dishes | varchar | 64 | 0 | Y | N | 菜品分類 | |
3 | recommend | int | 10 | 0 | N | N | 0 | 智能推薦 |
4 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創(chuàng)建時間 |
5 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間 |
表catering_merchants (餐飲商家)
編號 | 名稱 | 數(shù)據(jù)類型 | 長度 | 小數(shù)位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | catering_merchants_id | int | 10 | 0 | N | Y | 餐飲商家ID | |
2 | store_name | varchar | 64 | 0 | Y | N | 店鋪名稱 | |
3 | store_location | varchar | 64 | 0 | Y | N | 店鋪位置 | |
4 | examine_state | varchar | 16 | 0 | N | N | 已通過 | 審核狀態(tài) |
5 | recommend | int | 10 | 0 | N | N | 0 | 智能推薦 |
6 | user_id | int | 10 | 0 | N | N | 0 | 用戶ID |
7 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創(chuàng)建時間 |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間 |
表collect (收藏)
編號 | 名稱 | 數(shù)據(jù)類型 | 長度 | 小數(shù)位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | collect_id | int | 10 | 0 | N | Y | 收藏ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 收藏人ID: |
3 | source_table | varchar | 255 | 0 | Y | N | 來源表: | |
4 | source_field | varchar | 255 | 0 | Y | N | 來源字段: | |
5 | source_id | int | 10 | 0 | N | N | 0 | 來源ID: |
6 | title | varchar | 255 | 0 | Y | N | 標題: | |
7 | img | varchar | 255 | 0 | Y | N | 封面: | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創(chuàng)建時間: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間: |
表comment (評論)
編號 | 名稱 | 數(shù)據(jù)類型 | 長度 | 小數(shù)位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | comment_id | int | 10 | 0 | N | Y | 評論ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 評論人ID: |
3 | reply_to_id | int | 10 | 0 | N | N | 0 | 回復(fù)評論ID:空為0 |
4 | content | longtext | 2147483647 | 0 | Y | N | 內(nèi)容: | |
5 | nickname | varchar | 255 | 0 | Y | N | 昵稱: | |
6 | avatar | varchar | 255 | 0 | Y | N | 頭像地址:[0,255] | |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創(chuàng)建時間: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間: |
9 | source_table | varchar | 255 | 0 | Y | N | 來源表: | |
10 | source_field | varchar | 255 | 0 | Y | N | 來源字段: | |
11 | source_id | int | 10 | 0 | N | N | 0 | 來源ID: |
表delivery_information (配送信息)
編號 | 名稱 | 數(shù)據(jù)類型 | 長度 | 小數(shù)位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | delivery_information_id | int | 10 | 0 | N | Y | 配送信息ID | |
2 | order_no | varchar | 64 | 0 | Y | N | 訂單編號 | |
3 | name_of_dishes | varchar | 64 | 0 | Y | N | 菜品名稱 | |
4 | purchase_quantity | int | 10 | 0 | Y | N | 0 | 購買數(shù)量 |
5 | catering_merchants | int | 10 | 0 | Y | N | 0 | 餐飲商家 |
6 | store_name | varchar | 64 | 0 | Y | N | 店鋪名稱 | |
7 | receiving_address | varchar | 64 | 0 | Y | N | 收餐地址 | |
8 | purchase_user | int | 10 | 0 | Y | N | 0 | 購買用戶 |
9 | user_name | varchar | 64 | 0 | Y | N | 用戶姓名 | |
10 | contact_number | varchar | 64 | 0 | Y | N | 聯(lián)系電話 | |
11 | delivery_progress | varchar | 64 | 0 | Y | N | 配送進度 | |
12 | estimated_time | datetime | 19 | 0 | Y | N | 預(yù)計時間 | |
13 | recommend | int | 10 | 0 | N | N | 0 | 智能推薦 |
14 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創(chuàng)建時間 |
15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間 |
表dining_information (出餐信息)
編號 | 名稱 | 數(shù)據(jù)類型 | 長度 | 小數(shù)位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | dining_information_id | int | 10 | 0 | N | Y | 出餐信息ID | |
2 | order_no | varchar | 64 | 0 | Y | N | 訂單編號 | |
3 | name_of_dishes | varchar | 64 | 0 | Y | N | 菜品名稱 | |
4 | purchase_quantity | int | 10 | 0 | Y | N | 0 | 購買數(shù)量 |
5 | catering_merchants | int | 10 | 0 | Y | N | 0 | 餐飲商家 |
6 | store_name | varchar | 64 | 0 | Y | N | 店鋪名稱 | |
7 | table_number | varchar | 64 | 0 | Y | N | 就餐桌號 | |
8 | purchase_user | int | 10 | 0 | Y | N | 0 | 購買用戶 |
9 | user_name | varchar | 64 | 0 | Y | N | 用戶姓名 | |
10 | dining_progress | varchar | 64 | 0 | Y | N | 出餐進度 | |
11 | estimated_time | datetime | 19 | 0 | Y | N | 預(yù)計時間 | |
12 | number_of_people_queuing | int | 10 | 0 | Y | N | 0 | 排隊人數(shù) |
13 | recommend | int | 10 | 0 | N | N | 0 | 智能推薦 |
14 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創(chuàng)建時間 |
15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間 |
表dining_order (堂食訂單)
編號 | 名稱 | 數(shù)據(jù)類型 | 長度 | 小數(shù)位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | dining_order_id | int | 10 | 0 | N | Y | 堂食訂單ID | |
2 | order_no | varchar | 64 | 0 | Y | N | 訂單編號 | |
3 | name_of_dishes | varchar | 64 | 0 | Y | N | 菜品名稱 | |
4 | price_of_dishes | int | 10 | 0 | Y | N | 0 | 菜品價格 |
5 | catering_merchants | int | 10 | 0 | Y | N | 0 | 餐飲商家 |
6 | store_name | varchar | 64 | 0 | Y | N | 店鋪名稱 | |
7 | purchase_quantity | int | 10 | 0 | Y | N | 0 | 購買數(shù)量 |
8 | total_price | varchar | 64 | 0 | Y | N | 合計總價 | |
9 | table_number | varchar | 64 | 0 | Y | N | 就餐桌號 | |
10 | purchase_user | int | 10 | 0 | Y | N | 0 | 購買用戶 |
11 | user_name | varchar | 64 | 0 | Y | N | 用戶姓名 | |
12 | pay_state | varchar | 16 | 0 | N | N | 未支付 | 支付狀態(tài) |
13 | pay_type | varchar | 16 | 0 | Y | N | 支付類型: 微信、支付寶、網(wǎng)銀 | |
14 | recommend | int | 10 | 0 | N | N | 0 | 智能推薦 |
15 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創(chuàng)建時間 |
16 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間 |
表food_menu (美食菜單)
編號 | 名稱 | 數(shù)據(jù)類型 | 長度 | 小數(shù)位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | food_menu_id | int | 10 | 0 | N | Y | 美食菜單ID | |
2 | name_of_dishes | varchar | 64 | 0 | Y | N | 菜品名稱 | |
3 | dish_no | varchar | 64 | 0 | Y | N | 菜品編號 | |
4 | categorization_of_dishes | varchar | 64 | 0 | Y | N | 菜品分類 | |
5 | price_of_dishes | int | 10 | 0 | Y | N | 0 | 菜品價格 |
6 | catering_merchants | int | 10 | 0 | Y | N | 0 | 餐飲商家 |
7 | store_name | varchar | 64 | 0 | Y | N | 店鋪名稱 | |
8 | store_location | varchar | 64 | 0 | Y | N | 店鋪位置 | |
9 | cover_photo | varchar | 255 | 0 | Y | N | 封面圖片 | |
10 | introduction_to_dishes | text | 65535 | 0 | Y | N | 菜品簡介 | |
11 | hits | int | 10 | 0 | N | N | 0 | 點擊數(shù) |
12 | praise_len | int | 10 | 0 | N | N | 0 | 點贊數(shù) |
13 | recommend | int | 10 | 0 | N | N | 0 | 智能推薦 |
14 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創(chuàng)建時間 |
15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間 |
表hits (用戶點擊)
編號 | 名稱 | 數(shù)據(jù)類型 | 長度 | 小數(shù)位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | hits_id | int | 10 | 0 | N | Y | 點贊ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 點贊人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創(chuàng)建時間: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間: |
5 | source_table | varchar | 255 | 0 | Y | N | 來源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 來源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 來源ID: |
表notice (公告)
編號 | 名稱 | 數(shù)據(jù)類型 | 長度 | 小數(shù)位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | notice_id | mediumint | 8 | 0 | N | Y | 公告id: | |
2 | title | varchar | 125 | 0 | N | N | 標題: | |
3 | content | longtext | 2147483647 | 0 | Y | N | 正文: | |
4 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創(chuàng)建時間: |
5 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間: |
表ordinary_users (普通用戶)
編號 | 名稱 | 數(shù)據(jù)類型 | 長度 | 小數(shù)位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | ordinary_users_id | int | 10 | 0 | N | Y | 普通用戶ID | |
2 | user_name | varchar | 64 | 0 | Y | N | 用戶姓名 | |
3 | user_gender | varchar | 64 | 0 | Y | N | 用戶性別 | |
4 | examine_state | varchar | 16 | 0 | N | N | 已通過 | 審核狀態(tài) |
5 | recommend | int | 10 | 0 | N | N | 0 | 智能推薦 |
6 | user_id | int | 10 | 0 | N | N | 0 | 用戶ID |
7 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創(chuàng)建時間 |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間 |
表praise (點贊)
編號 | 名稱 | 數(shù)據(jù)類型 | 長度 | 小數(shù)位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | praise_id | int | 10 | 0 | N | Y | 點贊ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 點贊人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創(chuàng)建時間: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間: |
5 | source_table | varchar | 255 | 0 | Y | N | 來源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 來源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 來源ID: |
8 | status | bit | 1 | 0 | N | N | 1 | 點贊狀態(tài):1為點贊,0已取消 |
表slides (輪播圖)
編號 | 名稱 | 數(shù)據(jù)類型 | 長度 | 小數(shù)位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | slides_id | int | 10 | 0 | N | Y | 輪播圖ID: | |
2 | title | varchar | 64 | 0 | Y | N | 標題: | |
3 | content | varchar | 255 | 0 | Y | N | 內(nèi)容: | |
4 | url | varchar | 255 | 0 | Y | N | 鏈接: | |
5 | img | varchar | 255 | 0 | Y | N | 輪播圖: | |
6 | hits | int | 10 | 0 | N | N | 0 | 點擊量: |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創(chuàng)建時間: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間: |
表takeout_order (外賣訂單)
編號 | 名稱 | 數(shù)據(jù)類型 | 長度 | 小數(shù)位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | takeout_order_id | int | 10 | 0 | N | Y | 外賣訂單ID | |
2 | order_no | varchar | 64 | 0 | Y | N | 訂單編號 | |
3 | name_of_dishes | varchar | 64 | 0 | Y | N | 菜品名稱 | |
4 | price_of_dishes | int | 10 | 0 | Y | N | 0 | 菜品價格 |
5 | catering_merchants | int | 10 | 0 | Y | N | 0 | 餐飲商家 |
6 | store_name | varchar | 64 | 0 | Y | N | 店鋪名稱 | |
7 | purchase_quantity | int | 10 | 0 | Y | N | 0 | 購買數(shù)量 |
8 | total_price | varchar | 64 | 0 | Y | N | 合計總價 | |
9 | receiving_address | varchar | 64 | 0 | Y | N | 收餐地址 | |
10 | purchase_user | int | 10 | 0 | Y | N | 0 | 購買用戶 |
11 | user_name | varchar | 64 | 0 | Y | N | 用戶姓名 | |
12 | contact_number | varchar | 64 | 0 | Y | N | 聯(lián)系電話 | |
13 | pay_state | varchar | 16 | 0 | N | N | 未支付 | 支付狀態(tài) |
14 | pay_type | varchar | 16 | 0 | Y | N | 支付類型: 微信、支付寶、網(wǎng)銀 | |
15 | recommend | int | 10 | 0 | N | N | 0 | 智能推薦 |
16 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創(chuàng)建時間 |
17 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間 |
表upload (文件上傳)
編號 | 名稱 | 數(shù)據(jù)類型 | 長度 | 小數(shù)位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | upload_id | int | 10 | 0 | N | Y | 上傳ID | |
2 | name | varchar | 64 | 0 | Y | N | 文件名 | |
3 | path | varchar | 255 | 0 | Y | N | 訪問路徑 | |
4 | file | varchar | 255 | 0 | Y | N | 文件路徑 | |
5 | display | varchar | 255 | 0 | Y | N | 顯示順序 | |
6 | father_id | int | 10 | 0 | Y | N | 0 | 父級ID |
7 | dir | varchar | 255 | 0 | Y | N | 文件夾 | |
8 | type | varchar | 32 | 0 | Y | N | 文件類型 |
表user (用戶賬戶:用于保存用戶登錄信息)
編號 | 名稱 | 數(shù)據(jù)類型 | 長度 | 小數(shù)位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | user_id | mediumint | 8 | 0 | N | Y | 用戶ID:[0,8388607]用戶獲取其他與用戶相關(guān)的數(shù)據(jù) | |
2 | state | smallint | 5 | 0 | N | N | 1 | 賬戶狀態(tài):[0,10](1可用|2異常|3已凍結(jié)|4已注銷) |
3 | user_group | varchar | 32 | 0 | Y | N | 所在用戶組:[0,32767]決定用戶身份和權(quán)限 | |
4 | login_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 上次登錄時間: |
5 | phone | varchar | 11 | 0 | Y | N | 手機號碼:[0,11]用戶的手機號碼,用于找回密碼時或登錄時 | |
6 | phone_state | smallint | 5 | 0 | N | N | 0 | 手機認證:[0,1](0未認證|1審核中|2已認證) |
7 | username | varchar | 16 | 0 | N | N | 用戶名:[0,16]用戶登錄時所用的賬戶名稱 | |
8 | nickname | varchar | 16 | 0 | Y | N | 昵稱:[0,16] | |
9 | password | varchar | 64 | 0 | N | N | 密碼:[0,32]用戶登錄所需的密碼,由6-16位數(shù)字或英文組成 | |
10 | | varchar | 64 | 0 | Y | N | 郵箱:[0,64]用戶的郵箱,用于找回密碼時或登錄時 | |
11 | email_state | smallint | 5 | 0 | N | N | 0 | 郵箱認證:[0,1](0未認證|1審核中|2已認證) |
12 | avatar | varchar | 255 | 0 | Y | N | 頭像地址:[0,255] | |
13 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創(chuàng)建時間: |
表user_group (用戶組:用于用戶前端身份和鑒權(quán))
編號 | 名稱 | 數(shù)據(jù)類型 | 長度 | 小數(shù)位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | group_id | mediumint | 8 | 0 | N | Y | 用戶組ID:[0,8388607] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 顯示順序:[0,1000] |
3 | name | varchar | 16 | 0 | N | N | 名稱:[0,16] | |
4 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述該用戶組的特點或權(quán)限范圍 | |
5 | source_table | varchar | 255 | 0 | Y | N | 來源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 來源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 來源ID: |
8 | register | smallint | 5 | 0 | Y | N | 0 | 注冊位置: |
9 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創(chuàng)建時間: |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間: |
第5章 系統(tǒng)詳細設(shè)計
5.1系統(tǒng)管理員功能模塊
系統(tǒng)管理員登錄餐飲系統(tǒng),在登錄頁面輸入用戶名、密碼進行登錄,如圖5-1所示。

圖5-1系統(tǒng)管理員登錄界面圖
??????
????系統(tǒng)管理員進入系統(tǒng)后臺可以查看:首頁、網(wǎng)站管理(輪播圖、通知公告)、內(nèi)容管理(餐飲資訊、資訊分類)、人員管理(管理員、普通用戶、餐飲商家)模塊管理(菜品分類、美食菜單、堂食訂單、出餐信息、外賣訂單、配送信息、取消訂單)等功能模塊。如圖5-2所示。

圖5-2系統(tǒng)管理員功能界面圖
人員管理,在人員管理頁面可以查看用戶姓名,用戶性別,昵稱、用戶權(quán)限等內(nèi)容,可以進行通過輸入用戶ID,用戶名,用戶密碼和選擇角色添加用戶。如圖5-3所示。

圖5-3添加用戶界面圖
5.2用戶功能模塊
用戶注冊,在用戶注冊頁面通過填寫賬戶、設(shè)置密碼、確認密碼、昵稱、郵箱、手機號、身份等信息完成用戶注冊,如圖5-4所示。在登錄頁面通過填寫用戶名、密碼、滑動滑塊進行登錄驗證等操作,如圖5-5所示。

圖5-4用戶注冊界面圖

圖5-5登錄界面圖 ?
個人信息:用戶進入系統(tǒng)可以在個人信息這一欄可對頭像、昵稱、密碼進行修改,如圖5-6所示:

圖5-6個人信息界面圖
????
???
餐飲資訊:用戶進入系統(tǒng)可以搜索查看管理員發(fā)布的餐飲資訊信息,對喜歡的文章可進行收藏、點贊、評論等操作,如圖5-7所示。

圖5-7餐飲資訊界面圖
第6章 ?系統(tǒng)測試
6.1系統(tǒng)測試的目的
程序設(shè)計不能保證沒有錯誤,這是一個開發(fā)過程,在錯誤或錯誤的過程中都是難以避免的。雖然這是不可避免的,但我們不能使這些錯誤始終存在于系統(tǒng)中,錯誤可能會造成無法估量的后果,如系統(tǒng)崩潰,安全信息泄露,系統(tǒng)無法正常啟動等,為了避免這些問題,我們需要測試程序,再測試過程中發(fā)現(xiàn)問題,并糾正它們,從而使系統(tǒng)更長時間穩(wěn)定成熟。本章的作用是發(fā)現(xiàn)這些問題,并對其進行修改,雖然耗時費力,但對于長期使用而言是非常重要和必要系統(tǒng)的開發(fā)。
軟件在設(shè)計后必須進行測試,調(diào)試過程中使用的方法是軟件測試方法。在開發(fā)新軟件時,系統(tǒng)測試是檢查軟件是否合格的關(guān)鍵步驟,以及是否符合設(shè)計目標的參考。測試主要是查看軟件中數(shù)據(jù)的準確性,正確的操作與否,以及操作的結(jié)果,還有哪些方面需要改進。
餐飲系統(tǒng)的實現(xiàn),對于系統(tǒng)中功能模塊的實現(xiàn)及操作都必須通過測試進行來評判系統(tǒng)是否可以準確的實現(xiàn)。在餐飲系統(tǒng)正式上傳使用之前必須做的一步就是系統(tǒng)測試,對于測試發(fā)現(xiàn)的錯誤及時修改處理,保證系統(tǒng)準確無誤的供給用戶使用。
6.2系統(tǒng)測試方法
在對餐飲系統(tǒng)進行測試的時候在找到問題的情況下必須在第一時間找到解決問題的辦法,不要存在僥幸的心理,這樣才能讓餐飲系統(tǒng)開發(fā)的質(zhì)量可以過關(guān),并且開發(fā)的周期會大大縮短,還有就是在測試時,不要出現(xiàn)重復(fù)性的錯誤,遇到一個錯誤問題,要將整個餐飲系統(tǒng)開發(fā)所牽扯的該問題都必須一一解決,提高餐飲系統(tǒng)平臺的安全性、穩(wěn)定性。
白盒測試與黑盒測試是測試中比較常用的兩種方法。
①結(jié)構(gòu)測試俗稱白盒測試:這種測試是在對程序的處理過程與結(jié)構(gòu)都有詳盡諒解的前提下,順從程序內(nèi)部的邏輯而完成的系統(tǒng)測試,以確定系統(tǒng)中所有的通路都能夠遵照設(shè)計要求正常工作,不出現(xiàn)任何偏差。
②功能測試又成黑盒測試:主要是針對程序功能能夠按照設(shè)計正常實現(xiàn)的一種檢測,在程序接口處進行,檢測程序手法數(shù)據(jù)是否正常,與外部信息的交換是否完整。
6.3功能測試
用戶登錄測試:
模塊名稱 | 測試用例 | 預(yù)期結(jié)果 | 實際結(jié)果 | 是否通過 |
登錄模塊 | 用戶名:admin ??密碼:123 ? | 彈出錯誤提示,提示密碼錯誤 | 彈出錯誤提示,提示密碼錯誤 | 通過 |
登錄模塊 | 用戶名:123 ?? 密碼:admin ?? | 彈出錯誤提示,提示用戶名錯誤 | 彈出錯誤提示,提示用戶名錯誤 | 通過 |
登錄模塊 | 用戶名:admin ?? 密碼:admin ?? | 管理員登錄成功 | 管理員登錄成功 | 通過 |
修改密碼測試:
模塊名稱 | 測試用例 | 預(yù)期結(jié)果 | 實際結(jié)果 | 是否通過 |
修改密碼模塊 | 原密碼:666 新密碼:123 確認密碼:123 ? | 彈出錯誤提示,提示原密碼錯誤 | 彈出錯誤提示,提示原密碼錯誤 | 通過 |
修改密碼模塊 | 原密碼:admin ??新密碼:123 確認密碼:333 ? | 彈出錯誤提示,提示確認密碼不一致 | 彈出錯誤提示,提示確認密碼不一致 | 通過 |
修改密碼模塊 | 原密碼:admin ??新密碼:123 確認密碼:123 ? | 密碼修改成功 | 密碼修改成功 | 通過 |
通過對功能的測試,餐飲系統(tǒng)的基本功能都是可行的,不管是系統(tǒng)里面的功能,還是界面的設(shè)計都是可值得推廣宣傳的。
此時項目已經(jīng)完成,即使實施的時間不是很長,但是這個過程中需要準備很長的一段時間去對系統(tǒng)設(shè)計開發(fā)所相關(guān)技術(shù)進行學(xué)習(xí)。在學(xué)習(xí)的過程中,我逐漸認識得到了我自身存在的一些不足。從該系統(tǒng)中,系統(tǒng)的分析和設(shè)計的調(diào)查數(shù)據(jù),并且已經(jīng)經(jīng)歷和努力了幾個月,最終完成了系統(tǒng)。很顯然,該系統(tǒng)仍有很多不成熟的地方,在系統(tǒng)設(shè)計過程中有許多技術(shù)缺陷存在。在設(shè)計的過程中也涉及到了很多自己無法解決的問題,主要通過咨詢老師解決這些問題,對于畢業(yè)設(shè)計的圓滿完成,需要感謝老師們的指導(dǎo)。系統(tǒng)的開發(fā)環(huán)境和配置都是可以自行安裝的,結(jié)合需求進行修改維護,可以使得系統(tǒng)運行更具有穩(wěn)定性和安全性,從而完成實現(xiàn)系統(tǒng)的開發(fā)。
回顧畢業(yè)設(shè)計的整個過程,既付出汗水也收獲了很多。雖然經(jīng)歷了各種各樣的困難,自己的不斷研究探索,系統(tǒng)的實現(xiàn)仍有不足之處。
在以后的學(xué)習(xí)及工作中,我仍然繼續(xù)學(xué)習(xí)計算機方面的技術(shù),讓我在后期的平臺開發(fā)中可以更好更快的實現(xiàn)需求功能。我相信我可以讓更多的好工作,做出更大的貢獻。
餐飲系統(tǒng)的完成,如何實現(xiàn)的更好,其中付出的努力是很大的,這段時光將會終身難忘。
首先要感謝我的指導(dǎo)老師,謝謝您在設(shè)計和論文中給我的指導(dǎo)。在您的細心指導(dǎo)下我才能快速的掌握系統(tǒng)的相關(guān)功能,在您的大力幫助下我才能將課本上的知識與自己的項目結(jié)合,真正的做到學(xué)以致用。感謝您經(jīng)常犧牲自己的休息時間,利用其豐富的教學(xué)和項目經(jīng)驗對我進行指導(dǎo)。
感謝所有教過我的老師,為我傾注了大量的心血,正是你們的諄諄教誨、嚴謹教學(xué)才使我能順利的完成學(xué)業(yè),再此向你們表示深深的感謝。
感謝我的同學(xué)們,對我的大力支持及幫助,正是你們不斷的幫助、鼓勵,給我?guī)砹藰O大的動力,最終系統(tǒng)可以順利的運行。我們在交流、談?wù)摰倪@段時間,將是我未來的財富,我要深深地感謝你們!
畢業(yè)在即,在今后的工作和生活中,我會銘記師長們的教誨、同學(xué)們的幫助,繼續(xù)不懈努力和追求,來報答所有支持和幫助過我的人!
參考文獻
[1]Yu Hao. Retraction Note: Platform Design of Sports Meeting Management System for Regular Colleges and Universities Based on B/S Structure[J]. Wireless Personal Communications,2022,128(2).
[2]楊天一. 論微服務(wù)架構(gòu)的優(yōu)勢與劣勢[C]//.第三十六屆中國(天津)2022’IT、網(wǎng)絡(luò)、信息技術(shù)、電子、儀器儀表創(chuàng)新學(xué)術(shù)會議論文集.[出版者不詳],2022:294-297.DOI:10.26914/c.cnkihy.2022.015048.
[3]吳封斌,李笑瑜,蒲睿強,張量,岳洪吉.Istio:微服務(wù)架構(gòu)服務(wù)治理升級研究[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2022(07):1-2.
[4]李思毅,馬詩雨,崔麗月,張圣林,孫永謙,張玉志.微服務(wù)架構(gòu)下的根因定位方法綜述[J].數(shù)據(jù)與計算發(fā)展前沿,2022,4(03):78-89.
[5]唐春燕. 基于微服務(wù)的智慧餐飲系統(tǒng)的設(shè)計與實現(xiàn)[D].華東師范大學(xué),2022.DOI:10.27149/d.cnki.ghdsu.2022.002129.
[6]郭蕊,趙元蘇.Web前端框架技術(shù)綜述[J].北京工業(yè)職業(yè)技術(shù)學(xué)院學(xué)報,2021,20(03):24-27.
[7]Li Yunyun,Chen Lulu,Yu Dengchen,Gao Renhao. Research and Developing of Evaluation Information System Using B/S Structure and SQL Server Technology[J]. Journal of Physics: Conference Series,2021,1952(4).
[8]張健.餐飲系統(tǒng)的設(shè)計與實現(xiàn)[J].信息與電腦(理論版),2021,33(08):135-138.
[9]Dinghua He. Design and Implementation of Resource Information Management Based on B/S Structure[J]. Journal of Physics: Conference Series,2019,1345(5).
[10]陸郁. 中小型酒店餐飲管理系統(tǒng)的設(shè)計與實現(xiàn)[D].華北理工大學(xué),2018.
[11]陸覺明. 融合線上線下功能的餐飲系統(tǒng)設(shè)計和實現(xiàn)[D].中國科學(xué)院大學(xué)(中國科學(xué)院工程管理與信息技術(shù)學(xué)院),2017.
[12]夏霨.“農(nóng)家樂”餐飲管理系統(tǒng)的設(shè)計與實現(xiàn)[J].科技廣場,2017(09):62-65.DOI:10.13838/j.cnki.kjgc.2017.09.013.
[13]熊文杰.試談餐飲信息管理系統(tǒng)設(shè)計與實現(xiàn)[J].電腦編程技巧與維護,2017(18):61-62+65.DOI:10.16184/j.cnki.comprg.2017.18.020.
[14]程鵬. 餐飲云平臺系統(tǒng)的設(shè)計與實現(xiàn)[D].北京交通大學(xué),2017.
[15]李敏兒. 餐飲企業(yè)外賣訂餐系統(tǒng)的設(shè)計與實現(xiàn)[D].華南理工大學(xué),2016.
[16]帥勇,陳使明,段云,方麗.基于C/S架構(gòu)的餐飲管理系統(tǒng)設(shè)計與實現(xiàn)[J].福建電腦,2015,31(01):83-84.DOI:10.16707/j.cnki.fjpc.2015.01.056.
[17]王小敏.分析餐飲管理系統(tǒng)設(shè)計與實現(xiàn)[J].吉林廣播電視大學(xué)學(xué)報,2014(08):53-54.
[18]許明波. 餐飲管理系統(tǒng)的設(shè)計與實現(xiàn)[D].廈門大學(xué),2013.
[19]楊瑞. 中小型餐飲消費管理系統(tǒng)的設(shè)計與實現(xiàn)[D].華東師范大學(xué),2011.
[20]夏劍軍. 餐飲管理信息系統(tǒng)的設(shè)計與實現(xiàn)[D].廣東工業(yè)大學(xué),2005.
免費領(lǐng)源碼,麻煩一鍵三連,私信博主。謝謝。
.