鴿子外賣配送管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)_第1頁
鴿子外賣配送管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)_第2頁
鴿子外賣配送管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)_第3頁
鴿子外賣配送管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)_第4頁
鴿子外賣配送管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)_第5頁
已閱讀5頁,還剩50頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

目錄

1引言1

1.1項(xiàng)目開發(fā)背景1

1.2開發(fā)技術(shù)簡介1

1.2.1JSP頁面層1

1.2.2Javabeans控制層1

1.2.3MySQL數(shù)據(jù)層2

1.3開發(fā)工具簡介2

1.4項(xiàng)目開發(fā)技術(shù)路線2

2需求分析3

2.1功能需求描述3

2.2非功能需求描述3

2.3需求用例建模3

2.3.1登錄功能模塊的用例4

2.3.2我的餐車功能模塊的用例6

2.3.3配送管理功能模塊的用例7

2.3.4菜單管理功能模塊的用例9

2.3.5菜單類別功能模塊的用例10

3系統(tǒng)概要設(shè)計(jì)12

3.1系統(tǒng)設(shè)計(jì)原則12

3.2系統(tǒng)框架設(shè)計(jì)12

3.3系統(tǒng)功能設(shè)計(jì)12

3.3.1登錄功能模塊設(shè)計(jì)13

3.3.2我的餐車功能模塊設(shè)計(jì)14

3.3.3配送管理功能模塊設(shè)計(jì)15

3.3.4菜單管理功能模塊設(shè)計(jì)16

3.3.5菜單類別管理功能模塊設(shè)計(jì)17

3.4數(shù)據(jù)庫設(shè)計(jì)18

II

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

3.4.1設(shè)計(jì)原則18

3.4.2概念設(shè)計(jì)18

3.4.3邏輯設(shè)計(jì)19

3.4.4數(shù)據(jù)字典20

4系統(tǒng)詳細(xì)設(shè)計(jì)21

4.1登錄功能模塊設(shè)計(jì)21

4.1.1登錄功能模塊說明21

4.1.2登錄功能模塊詳細(xì)設(shè)計(jì)22

4.2我的餐車模塊設(shè)計(jì)23

4.2.1我的餐車模塊說明23

4.2.2我的餐車模塊詳細(xì)設(shè)計(jì)23

4.3配送管理功能模塊設(shè)計(jì)24

4.3.1配送管理功能模塊說明24

4.3.2配送管理功能模塊詳細(xì)設(shè)計(jì)26

4.4菜單管理功能模塊設(shè)計(jì)26

4.4.1菜單管理功能模塊說明26

4.4.2菜單管理功能模塊詳細(xì)設(shè)計(jì)27

4.5菜單類別管理功能模塊設(shè)計(jì)28

4.5.1菜單類別管理功能模塊說明28

4.5.2菜單類別管理功能模塊詳細(xì)設(shè)計(jì)29

5系統(tǒng)實(shí)現(xiàn)30

5.1登錄注冊模塊設(shè)計(jì)30

5.1.1登錄注冊模塊界面設(shè)計(jì)30

5.1.2登錄注冊模塊核心代碼實(shí)現(xiàn)31

5.2我的餐車模塊設(shè)計(jì)32

5.2.1我的餐車模塊界面設(shè)計(jì)32

5.2.2我的餐車模塊核心代碼實(shí)現(xiàn)34

5.3配送管理功能模塊設(shè)計(jì)36

III

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

5.3.1配送管理功能模塊界面設(shè)計(jì)36

5.3.2配送管理功能模塊界面設(shè)計(jì)37

5.4菜單管理模塊設(shè)計(jì)41

5.4.1菜單管理模塊界面設(shè)計(jì)41

5.4.2菜單管理模塊核心代碼實(shí)現(xiàn)42

5.5菜單類別管理功能模塊設(shè)計(jì)44

5.5.1菜單類別管理功能模塊界面設(shè)計(jì)44

5.5.2分類管理模塊核心代碼實(shí)現(xiàn)45

6系統(tǒng)測試46

6.1登錄注冊功能測試46

6.2我的餐車測試46

6.3配送管理功能測試48

6.4菜單管理功能測試49

6.5菜單類別管理功能測試50

7設(shè)計(jì)小結(jié)51

參考資料52

IV

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

鴿子外賣配送管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

1引言

隨著國民經(jīng)濟(jì)和互聯(lián)網(wǎng)新技術(shù)的快速發(fā)展,人民的生活水平不斷提高,外

賣行業(yè)在國內(nèi)逐漸興起,新時代同城即時配送成為了最熱門的新興行業(yè)。然而,

在外賣配送過程中,用戶普遍反映出配操作不便、管理混亂、訂單處理效率低

等問題。為了促進(jìn)外賣行業(yè)的更加健康、快速、可持續(xù)發(fā)展,提升用戶滿意度

和騎手服務(wù)質(zhì)量,需要對傳統(tǒng)的外賣配送進(jìn)行優(yōu)化和創(chuàng)新。

1.1項(xiàng)目開發(fā)背景

為了滿足用戶對于便捷、快速、高效的外賣配送服務(wù)需要,為用戶提供便

捷、高效的送餐服務(wù),提供了優(yōu)化的訂單配送管理服務(wù)。我的畢業(yè)設(shè)計(jì)是一個

鴿子外賣配送管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)。本項(xiàng)目以網(wǎng)上訂餐為基礎(chǔ),結(jié)合訂單配

送信息管理,通過該系統(tǒng)的實(shí)現(xiàn),鴿子外賣配送管理系統(tǒng)希望提高用戶滿意度、

縮短配送時間、降低成本并達(dá)成突破式的業(yè)務(wù)增長。在系統(tǒng)的設(shè)計(jì)中,充分考

慮到了用戶的使用習(xí)慣以及在配送過程中可能遇到的問題。通過鴿子外賣配送

管理系統(tǒng)為用戶提供了更加人性化的配送管理服務(wù)。

1.2開發(fā)技術(shù)簡介

在項(xiàng)目中,JSP+Javabeans+MySQL三層的設(shè)計(jì)架構(gòu),實(shí)現(xiàn)了完整的外賣配送

網(wǎng)站的構(gòu)建。在技術(shù)選擇上,我們采用了開源的JSP語言、MySQL數(shù)據(jù)庫和Javab

eans庫,以提高系統(tǒng)的可維護(hù)性、可擴(kuò)展性、高效性、穩(wěn)定性。同時,我們還

注重對系統(tǒng)的用戶體驗(yàn)和界面美觀度的提升,以便最大限度地實(shí)現(xiàn)系統(tǒng)的價值。

1.2.1JSP頁面層

JSP頁面是用戶和系統(tǒng)交互的接口。在設(shè)計(jì)中,我們采用了一些可重用和易

于維護(hù)的JSP標(biāo)簽,為用戶提供一致、易于理解和易于操作的交互界面。同時,

我們也采用了Bootstrap等開源前端框架,以便實(shí)現(xiàn)頁面的美化和提升用戶體

驗(yàn)。

1.2.2Javabeans控制層

Javabeans層負(fù)責(zé)處理后臺業(yè)務(wù)邏輯。為了提高系統(tǒng)的可維護(hù)性和可擴(kuò)展性,

我們使用了Spring框架,以便實(shí)現(xiàn)松散耦合、分層架構(gòu)和面向?qū)ο蟮拈_發(fā)方式。

1

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

為了降低業(yè)務(wù)邏輯與JSP頁面的耦合度,我們采用自定義標(biāo)簽及EL表達(dá)式等技

術(shù)來實(shí)現(xiàn)前后端分離。

1.2.3MySQL數(shù)據(jù)層

MySQL是世界上最流行的開源數(shù)據(jù)庫之一。在這個項(xiàng)目中,我們選擇使用My

SQL5.6實(shí)現(xiàn)數(shù)據(jù)庫設(shè)計(jì),以便實(shí)現(xiàn)穩(wěn)定、高效和易于維護(hù)的數(shù)據(jù)存儲和管理。

在數(shù)據(jù)層設(shè)計(jì)中,我們采用了邏輯分區(qū)、索引優(yōu)化等技術(shù),以提高數(shù)據(jù)的存儲

和檢索效率。

1.3開發(fā)工具簡介

工具的使用:采用Idea+Mysql

Idea是一款功能豐富的集成開發(fā)環(huán)境,它提供了一個全局庫集成的項(xiàng)目,

方便地將不同模塊的開發(fā)集成到一個項(xiàng)目中進(jìn)行管理和維護(hù)。在Idea的使用過

程中,開發(fā)人員可以快速瀏覽項(xiàng)目中的相關(guān)值,而無需使用調(diào)試接口。Idea還

支持JavaScript調(diào)試,自動更新代碼和界面等功能,并提供了眾多快捷鍵,以

幫助開發(fā)人員更加高效地進(jìn)行開發(fā)。通過使用Idea進(jìn)行開發(fā),開發(fā)人員能夠提

高項(xiàng)目開發(fā)和管理的效率,從而提高代碼質(zhì)量和開發(fā)效率。。

MySQL則是一款開放源代碼的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。在現(xiàn)今的網(wǎng)站開發(fā)中,

MySQL成為最流行的數(shù)據(jù)庫之一,它具有體積小、成本低和高速運(yùn)行等優(yōu)勢,所

以在中小型網(wǎng)站開發(fā)中很多開發(fā)人員都選擇MySQL作為默認(rèn)數(shù)據(jù)庫。MySQL不僅

可以提供出色的性能表現(xiàn),而且還提供了完善的管理和維護(hù)工具。由于MySQL

是一個開源軟件,其代碼可以透明地被訪問和修改,這使得開發(fā)人員可以根據(jù)

自己的需求進(jìn)行二次開發(fā)和優(yōu)化,以更好地滿足業(yè)務(wù)需求。

1.4項(xiàng)目開發(fā)技術(shù)路線

這個項(xiàng)目使用了Java編程語言和相關(guān)技術(shù):Spring框架、MyBatis框架、

SpringMVC框架、Log4j日志框架等。其中,Spring框架是一個全棧的框架,

用于解決企業(yè)級應(yīng)用程序開發(fā)的復(fù)雜性,包括依賴注入、AOP切面編程、事務(wù)控

制等。MyBatis框架是一個數(shù)據(jù)庫訪問框架,映射SQL語句和Java實(shí)體類,提

供CRUD操作,以及高級功能如動態(tài)SQL和緩存等。SpringMVC框架是一個基于

MVC模式的Web框架,處理HTTP請求、視圖渲染等。Log4j日志框架用于記錄

應(yīng)用程序的運(yùn)行狀態(tài)。

2

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

2需求分析

2.1功能需求描述

通過與部分用戶的溝通,外賣配送系統(tǒng)的所需要的功能:

(1)登錄功能:由用戶輸入賬號密碼,然后才可以點(diǎn)餐,查看歷史訂單,

付款等。新用戶可以使用注冊功能注冊賬號密碼。

(2)我的餐車功能:在你登錄賬號以后,可以查看你加入購物車的菜單信

息,可以在此頁面提交訂單。

(3)配送管理功能:在你提交以后,將可以查看外賣訂單的商家公布的配

送信息等。

(4)菜單管理功能:管理員可以查看前臺頁面的菜單和添加將新菜單到首

頁中。

(5)菜單類別管理功能:管理員可以查看菜單類別,添加、修改、刪除菜

單類別。

2.2非功能需求描述

本系統(tǒng)有以下幾個性能要求:

(1)高并發(fā)性能:考慮到餐廳在繁忙時段可能會有很多人同時進(jìn)行點(diǎn)餐和

下單,因此系統(tǒng)需要具有高并發(fā)性能,能夠快速響應(yīng)用戶請求。

(2)數(shù)據(jù)安全性:該系統(tǒng)涉及到用戶敏感信息,如訂單、賬戶等,因此要

求具有高安全性,避免信息被惡意竊取或泄露。

(3)可靠性:該系統(tǒng)需要穩(wěn)定可靠,即使在極端情況下也能繼續(xù)運(yùn)行,用

戶體驗(yàn)不受影響。

(4)數(shù)據(jù)庫性能:該系統(tǒng)需要具有良好的數(shù)據(jù)庫性能,包括快速讀寫、存

儲和查詢能力,尤其是在高并發(fā)場景下,要能夠快速響應(yīng)和處理用戶請求。

2.3需求用例建模

通過對功能需求的分析,創(chuàng)建以下總體用例模型,如圖2-1所示。

3

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

圖2-1鴿子外賣配送管理系統(tǒng)的總體用例模型

2.3.1登錄功能模塊的用例

登錄模塊里包含登錄、注冊等基本操作功能。新用戶進(jìn)行注冊登錄,填寫

必要的信息,交給系統(tǒng)處理,通過后將數(shù)據(jù)存入數(shù)據(jù)庫,注冊登錄成功。

鴿子外賣配送管理系統(tǒng)登錄模塊用例圖如圖2-2所示。

圖2-2登錄功能模塊用例圖

用戶登錄模塊活動圖如圖2-3所示。

4

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

圖2-3用戶登錄功能模塊活動圖

通過對圖2-2用例圖及圖2-3活動圖進(jìn)一步的細(xì)化分析,得到用例的描述

表。登錄功能模塊用例描述如表2-1所示,可以進(jìn)行登錄、注冊等操作。

表2-1登錄功能模塊用例描述

項(xiàng)目描述

用例名稱登錄

用例標(biāo)識號01

參與者用戶/管理員

參與者輸入登錄賬號,以及登陸密碼,系統(tǒng)進(jìn)行驗(yàn)證后,成

簡要說明

功登錄,否則提示賬號或者密碼不正確

前置條件已經(jīng)打開登錄頁面

1.參與者在登錄賬號中輸入賬號

2.參與者在登錄密碼中輸入密碼

基本事件流

3.點(diǎn)擊登錄按鈕,系統(tǒng)驗(yàn)證參與者輸入的賬戶是否存在。

5.符合進(jìn)入系統(tǒng)的首頁。不符合則反饋相應(yīng)錯誤到參與者。

5

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

6.用例結(jié)束

其他事件流在按“登錄”按鈕之前,參與者可以退出該頁面。

異常事件流出現(xiàn)錯誤,提示錯誤信息,參與者確認(rèn)

后置條件進(jìn)入系統(tǒng)首頁,顯示相應(yīng)的數(shù)據(jù)

2.3.2我的餐車功能模塊的用例

對面向?qū)ο筮M(jìn)行需求分析。我的餐車功能模塊用戶角色的具體的用例描述

如圖2-4所示,分別具加入餐車,取消菜單,提交等操作功能。

圖2-4我的餐車模塊用例圖

我的餐車模塊活動圖如圖2-5所示。

圖2-5我的餐車功能模塊活動圖

通過對圖2-4用例圖及圖2-5活動圖進(jìn)一步的細(xì)化分析,得到用例的描述

6

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

表。我的餐車模塊用例描述如表2-2所示,可以進(jìn)行添加菜單,提交,取消菜

單等操作。

表2-2我的餐車模塊用例描述

項(xiàng)目描述

用例名稱我的餐車

用例標(biāo)識號02

參與者用戶

用戶在前臺頁面,選中菜單添加到餐車,從我的餐車提交

簡要說明

訂單或者取消訂單等基本操作。

1.進(jìn)入首頁頁面

2.選著想要購買的菜單,加入購物車

前置條件

3.用戶點(diǎn)擊我的餐車確定菜單,可以提交或取消

4.用例終止

其他事件流在按確認(rèn)之前,可隨時取消

異常事件流添加的菜單不存在

后置條件加載數(shù)據(jù),顯示信息列表

2.3.3配送管理功能模塊的用例

配送管理功能模塊的具體的用例描述如圖2-6所示,主要具有搜索、查詢

未配送的訂單或已經(jīng)配送的訂單的操作功能。

圖2-6配送管理功能模塊用例圖

配送管理模塊活動圖如圖2-7所示。

7

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

圖2-7配送管理功能模塊活動圖

通過對圖2-6用例圖及圖2-7活動圖進(jìn)一步的細(xì)化分析,得到用例的描述

表。配送管理功能模塊用例描述如表2-3所示,可以進(jìn)行搜索菜單,查看已配

送和未配送的訂單信息。

表2-3配送管理模塊用例描述

項(xiàng)目描述

用例名稱配送管理

用例標(biāo)識號03

參與者用戶

點(diǎn)擊配送管理,對用戶自己的訂單搜索、顯示未配送的訂

簡要說明

單、已經(jīng)配送訂單信息和配送時間等操作。

1.進(jìn)入配送管理頁面

2.進(jìn)行想要進(jìn)行的操作

前置條件

3.用戶完成相關(guān)操作

4.用例終止

其他事件流可以按銷售日期查詢

異常事件流搜索的菜單不存在

后置條件顯示用戶的訂單信息列表

8

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

2.3.4菜單管理功能模塊的用例

通過用例圖和活動圖對需求分析進(jìn)行了梳理分析。菜單管理功能的用例描

述如圖2-8所示。

圖2-8菜單管理功能模塊用例圖

菜單管理模塊活動圖如圖2-9所示。

圖2-9菜單管理功能模塊活動圖

通過對圖2-8用例圖及圖2-9活動圖進(jìn)一步的細(xì)化分析,得到用例的描述

表。菜單管理功能模塊用例描述如表2-4所示,可以進(jìn)行添加新菜單,修改菜

單,刪除菜單,查看菜單信息列表等操作。

9

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

表2-4菜單管理模塊用例描述

項(xiàng)目描述

用例名稱菜單管理

用例標(biāo)識號04

參與者管理員

進(jìn)入后臺管理頁面,對菜單進(jìn)行管理菜單、添加和刪除菜

簡要說明

單等操作。

1.進(jìn)入菜單管理頁面

2.點(diǎn)擊想要進(jìn)行的操作

前置條件

3.管理員點(diǎn)擊相關(guān)按鈕完成操作

4.用例終止

其他事件流在按確認(rèn)之前,可隨時取消

異常事件流菜單不存在

后置條件刷新數(shù)據(jù),顯示菜單信息列表

2.3.5菜單類別功能模塊的用例

通過用例圖和活動圖對需求分析進(jìn)行了梳理分析。菜單類別功能的用例描

述如圖2-10所示。

圖2-10菜單類別功能模塊用例圖

菜單類別模塊活動圖如圖2-11所示。

10

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

圖2-11菜單類別功能模塊活動圖

通過對圖2-10用例圖及圖2-11活動圖進(jìn)一步的細(xì)化分析,得到用例的描

述表。菜單類別功能模塊用例描述如表2-5所示,可以進(jìn)行查看菜單類別,添

加菜單類別,修改菜單類別等操作。

表2-5菜單類別模塊用例描述

項(xiàng)目描述

用例名稱菜單類別管理

用例標(biāo)識號05

參與者管理員

進(jìn)入后臺管理頁面,對菜單類別進(jìn)行查看來管理菜單分類、

簡要說明

添加菜單新類別、修改和刪除菜單類別等操作。。

1.進(jìn)入菜單類別管理頁面

2.點(diǎn)擊想要進(jìn)行的操作

前置條件

3.管理員點(diǎn)擊相關(guān)按鈕完成操作

4.用例終止

其他事件流在按確認(rèn)之前,可隨時取消

異常事件流分類不存在

后置條件刷新數(shù)據(jù),顯示分類信息列表

11

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

3系統(tǒng)概要設(shè)計(jì)

3.1系統(tǒng)設(shè)計(jì)原則

外賣配送管理的系統(tǒng)設(shè)計(jì)準(zhǔn)守幾個原則,準(zhǔn)守這些原則能讓系統(tǒng)更加穩(wěn)定,

提高擴(kuò)展性和效率。

(1)用戶和管理員:一般用戶可以在外賣首頁進(jìn)行的信息瀏覽跟添加到餐

車和查看訂單配送信息。管理員可以對菜單的信息進(jìn)行錄入和維護(hù),可以對網(wǎng)

站上的菜單進(jìn)行增加、修改和刪除,可以進(jìn)行將不同的菜單進(jìn)行分類,對新菜

單可添加新的類別等。

(2)命名規(guī)范:即使系統(tǒng)規(guī)模不大,我們也應(yīng)該遵守命名規(guī)范,這樣做有

利于拓展系統(tǒng)并更方便地排查問題。規(guī)范的命名方式也使他人更容易閱讀和理

解代碼,快速了解各個類的主要作用。

3.2系統(tǒng)框架設(shè)計(jì)

根據(jù)系統(tǒng)的需求分析、用例建模分析結(jié)合開發(fā)平臺的特點(diǎn)設(shè)計(jì)該外賣配送

管理系統(tǒng)的系統(tǒng)架構(gòu)模型,如圖3-1所示。

圖3-1鴿子外賣配送管理系統(tǒng)整體架構(gòu)圖

3.3系統(tǒng)功能設(shè)計(jì)

在系統(tǒng)分析階段對各子系統(tǒng)進(jìn)行進(jìn)一步劃分的基礎(chǔ)上,模塊化的系統(tǒng)結(jié)構(gòu)

12

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

設(shè)計(jì)工作將逐層分解這些子系統(tǒng),形成單一、具有獨(dú)立性、大小相同的多個模

塊。這種模塊化的設(shè)計(jì)方式在程序設(shè)計(jì)過程中加強(qiáng)了數(shù)據(jù)庫之間的聯(lián)系,同時

也讓系統(tǒng)更加完善。

在對鴿子外賣配送管理系統(tǒng)進(jìn)行需求分析和用例建模的基礎(chǔ)上,確定了鴿

子外賣配送管理系統(tǒng)的主要模塊,包括登陸、我的餐車和配送管理、添加菜單、

添加菜單類別等。圖3-2顯示了鴿子外賣配送管理系統(tǒng)的結(jié)構(gòu),本系統(tǒng)共有5

個主要模塊。

圖3-2鴿子外賣配送管理系統(tǒng)功能結(jié)構(gòu)圖

3.3.1登錄功能模塊設(shè)計(jì)

針對系統(tǒng)功能結(jié)構(gòu)圖進(jìn)行進(jìn)一步細(xì)化分析,得到各子模塊登錄功能、注冊

號功能描述,功能描述使用功能流程圖描述,登錄功能模塊如下圖3-3。

13

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

圖3-3用戶登錄功能流程圖描述

3.3.2我的餐車功能模塊設(shè)計(jì)

針對系統(tǒng)功能結(jié)構(gòu)圖進(jìn)行進(jìn)一步細(xì)化分析,得到子模塊加入餐車,取消菜

單,提交功能描述,功能描述使用功能流程圖描述,我的餐車功能模塊如下圖

3-4。

14

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

圖3-4我的餐車流程圖描述

3.3.3配送管理功能模塊設(shè)計(jì)

針對系統(tǒng)功能結(jié)構(gòu)圖進(jìn)行進(jìn)一步細(xì)化分析,得到配送管理功能,搜索訂單

功能,查看未配送訂單,查看已配送訂單功能和配送時間描述使用功能流程圖

描述,配送管理功能模塊如下圖3-5。

15

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

圖3-5配送管理功能流程圖描述

3.3.4菜單管理功能模塊設(shè)計(jì)

針對系統(tǒng)功能結(jié)構(gòu)圖進(jìn)行進(jìn)一步細(xì)化分析,得到查看菜單信息,添加菜單,

修改菜單,刪除菜單功能描述,功能描述使用功能流程圖描述,菜單管理模塊

如下圖3-6。

16

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

圖3-6菜單管理功能流程圖描述

3.3.5菜單類別管理功能模塊設(shè)計(jì)

針對系統(tǒng)功能結(jié)構(gòu)圖進(jìn)行進(jìn)一步細(xì)化分析,得到查看菜單類別,添加菜單

新類別,修改菜單類別,刪除菜單類別功能使用功能流程圖描述,菜單類別管

理模塊如下圖3-7。

17

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

圖3-7菜單類別功能流程圖描述

3.4數(shù)據(jù)庫設(shè)計(jì)

數(shù)據(jù)庫設(shè)計(jì)是系統(tǒng)設(shè)計(jì)中的一個核心。設(shè)計(jì)會影響系統(tǒng)的性能和執(zhí)行效率。

3.4.1設(shè)計(jì)原則

為取得良好的設(shè)計(jì)效果,進(jìn)行數(shù)據(jù)庫設(shè)計(jì)需要遵從以下原則:

(1)一致性原則

在進(jìn)行數(shù)據(jù)設(shè)計(jì)時,需協(xié)調(diào)好各數(shù)據(jù)源,以保障數(shù)據(jù)的一致性和有效性。

通過對數(shù)據(jù)進(jìn)行設(shè)計(jì),可確保數(shù)據(jù)采集、存儲和使用的完整性和準(zhǔn)確性。

(2)標(biāo)準(zhǔn)化原則

在數(shù)據(jù)庫設(shè)計(jì)中,我們必須遵循統(tǒng)一的設(shè)計(jì)標(biāo)準(zhǔn)和命名規(guī)范。設(shè)計(jì)數(shù)據(jù)庫

時,通常要求達(dá)到第三范式,支持多對多關(guān)系,盡可能地消除冗余數(shù)據(jù),避免

修改、插入和刪除異常,以滿足關(guān)系規(guī)范化的要求。

3.4.2概念設(shè)計(jì)

E-R圖是用來描述概念數(shù)據(jù)模型的一種高層圖形表示,通常用于表達(dá)實(shí)體聯(lián)

18

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

系模型及其圖形符號。以外賣配送管理系統(tǒng)為例。根據(jù)外賣配送網(wǎng)站系統(tǒng)數(shù)據(jù)

進(jìn)行分析,其E-R圖如下3-8所示。

圖3-8鴿子外賣配送管理系統(tǒng)E-R圖

3.4.3邏輯設(shè)計(jì)

針對ER模型,通過數(shù)據(jù)實(shí)體屬性、實(shí)體間關(guān)系的全面分析,結(jié)合外賣配送

管理系統(tǒng)的實(shí)際需求,根據(jù)E-R圖轉(zhuǎn)化為關(guān)系模式的轉(zhuǎn)換方法,建立起了本系

統(tǒng)的關(guān)系模式,具體轉(zhuǎn)化后的關(guān)系模式如下:

用戶表(用戶Id,用戶名,姓名,手機(jī)號,家庭地址)

我的餐車表(用戶Id,菜單Id,單價,數(shù)量,菜單名稱)

菜單表(菜單Id,菜單名稱,價格,配料,菜單類型)

管理員表(管理員Id,管理員名稱,管理員密碼)

類別表(類別Id,類別名稱)

訂單表(訂單Id,用戶Id,菜單Id,訂單電話,訂購數(shù)量,單價,菜單

名稱,是否配送)

19

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

3.4.4數(shù)據(jù)字典

用戶表如表3-1所示,該表主要用于記錄用戶信息,主要字段為用戶Id、

用戶名、用戶密碼、性別、手機(jī)號。

表3-1用戶表(Users)

字段名稱數(shù)據(jù)類型字段內(nèi)容主鍵設(shè)置非空

IdVarchar用戶Id是是

NameVarchar用戶名否是

PwdVarchar用戶密碼否是

SexVarchar性別否是

PhoneVarchar手機(jī)號否是

菜單表如表3-2所示,該表主要用于記錄菜單信息,主要字段為菜單id、

菜單名稱、菜單價格、菜單數(shù)量。

表3-2菜單表(Menus)

字段名稱數(shù)據(jù)類型字段內(nèi)容主鍵設(shè)置非空

IdInt菜單Id是是

NameVarchar菜單名稱否是

PriceFloat菜單價格否是

SumsInt菜單數(shù)量否是

類別表如表3-3所示,該表主要用于記錄菜單類別信息,主要字段為分類Id

,菜品分類名稱。

表3-3類別表(Styles)

字段名稱數(shù)據(jù)類型字段內(nèi)容主鍵設(shè)置非空

IdInt分類Id是是

NameVarchar菜單類別名稱否是

管理員表如表3-4所示,該表主要用于記錄管理員信息,主要字段有管理

員Id,管理員名稱,管理員密碼。

表3-4管理員表(Admin)

字段名稱數(shù)據(jù)類型字段內(nèi)容主鍵設(shè)置非空

IdInt管理員Id是是

NameVarchar管理員名稱否是

PwdVarchar管理員密碼否是

訂單表如表3-5所示,該表主要用于記錄訂單信息,主要字段有訂單Id,

菜單名稱,單價等。

表3-5訂單表(Orders)

字段名稱數(shù)據(jù)類型字段內(nèi)容主鍵設(shè)置非空

20

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

IdInt訂單Id是是

UseridInt用戶Id否是

MenuidInt菜單Id否是

MenuidInt菜單數(shù)量否是

數(shù)據(jù)庫設(shè)計(jì)總結(jié):鴿子外賣配送管理系統(tǒng)采用關(guān)系型數(shù)據(jù)庫,根據(jù)系統(tǒng)功

能需求設(shè)計(jì)出合理的數(shù)據(jù)庫模型,包括實(shí)體、屬性和關(guān)系等。在數(shù)據(jù)表設(shè)計(jì)中,

應(yīng)符合第三范式的要求,保證數(shù)據(jù)安全性和完整性。并在數(shù)據(jù)表設(shè)計(jì)中避免冗

余數(shù)據(jù)和重復(fù)性信息。表之間的關(guān)系應(yīng)該清晰明了,能夠方便快捷地進(jìn)行數(shù)據(jù)

查詢和操作。

4系統(tǒng)詳細(xì)設(shè)計(jì)

通過與實(shí)際用戶溝通和調(diào)查,我們致力于深入了解外賣配送管理系統(tǒng)的問

題,并解決使用人員反饋的具體缺點(diǎn),從而持續(xù)提高系統(tǒng)的質(zhì)量和滿足使用人

員的需求。

4.1登錄功能模塊設(shè)計(jì)

4.1.1登錄功能模塊說明

與用戶溝通后,了解外賣配送管理的系統(tǒng)問題,希望通過系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)登

錄、注冊功能,如圖4-1所示。

21

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

圖4-1登錄注冊的類圖

4.1.2登錄功能模塊詳細(xì)設(shè)計(jì)

與用戶溝通后,了解在外賣配送管理系統(tǒng)問題,希望通過系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)登

錄、注冊功能。

該子功能模塊相關(guān)類,及方法描述表,如下表4-1所示。

表4-1登錄注冊功能模塊相關(guān)類及方法描述表

類名User

描述用戶類

id、name、pwd、realname、sex、age、card、address、

屬性

phone、email、code、type

方法get()Andset()

類名Login

描述登入類

屬性name、pwd

方法getName()、getPwd()、login()、queryByname()

類名Insert

描述注冊類

22

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

name、pwd、realname、sex、age、card、address、

屬性

Phone、email、code、type

方法Param()Andinsert()

4.2我的餐車模塊設(shè)計(jì)

4.2.1我的餐車模塊說明

在確認(rèn)需求后,希望能實(shí)現(xiàn)加入餐車、取消菜單、提交功能,從而更加方

便管理用戶。

4.2.2我的餐車模塊詳細(xì)設(shè)計(jì)

與用戶溝通后,了解外賣配送管理系統(tǒng)問題,希望通過系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)用戶

管理功能,如圖4-2所示。

23

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

圖4-2我的餐車的類圖

該子功能模塊相關(guān)類,及方法描述表,如下表4-2所示。

表4-2我的餐車功能模塊相關(guān)類及方法描述表

類名order_addshoppingcar

描述加入餐車類

屬性menuId、name、price、sum

方法Param()、insert()

類名order_shoppingcardel

描述取消菜單類

屬性id

方法getParameter()、parseInt()

類名order_addshoppingcartoOrder

描述提交訂單類

屬性userid、menuid、sums、day、delivery

方法quertByname()、getId()、getSums()、format()

4.3配送管理功能模塊設(shè)計(jì)

4.3.1配送管理功能模塊說明

配送管理是外賣配送網(wǎng)站是前臺頁面一個重要的功能模塊,用戶可以通過

這個模塊對自己購買過菜單的訂單信息搜索、查看詳細(xì)信息,外賣是否已配送

24

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

或未配送,因此開發(fā)了此功能,如圖4-3所示。

圖4-3配送管理的類圖

25

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

4.3.2配送管理功能模塊詳細(xì)設(shè)計(jì)

在了解外賣配送管理的系統(tǒng)設(shè)計(jì)問題后,希望通過系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)配送管理

功能。

該子功能模塊相關(guān)類,及方法描述表,如下表4-3所示。

表4-3配送管理功能模塊相關(guān)類及方法描述表

類名ordergetall

描述查看全部訂單信息類

屬性page1、totalCount、currentpages、s、pagess、allpage

方法getParameter()AndpageCount()

類名order_search

描述搜索類

屬性Id、menuname、day1、day、day2

方法getParameter()AndpageListByID()

類名ordergetallbydelivery

描述查看訂單已配送和未配送類

屬性delivery、d

方法getParameter()、parseInt()

4.4菜單管理功能模塊設(shè)計(jì)

4.4.1菜單管理功能模塊說明

菜單管理功能是外賣配送網(wǎng)站后臺管理一個重要功能模塊,管理員可以通

過這個模塊對菜單進(jìn)行查詢、增加、刪除、修改操作,因此開發(fā)了此功能,如

圖4-4所示。

26

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

圖4-4菜單管理的類圖

4.4.2菜單管理功能模塊詳細(xì)設(shè)計(jì)

通過了解外賣配送系統(tǒng)的需求,對系統(tǒng)功能進(jìn)行設(shè)計(jì)。

該子功能模塊相關(guān)類,及方法描述表,如下表4-4所示。

27

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

表4-4菜單管理功能模塊相關(guān)類及方法描述表

類名insert

描述添加新菜單類

屬性menus、img

方法insert()、isEmpty()

類名delete

描述刪除菜單類

屬性Id、menus

方法deleteById()、getRequestDispatcher()

類名update

描述修改菜單類

屬性Menus、id

方法Update()、getRequestDispatcher()

4.5菜單類別管理功能模塊設(shè)計(jì)

4.5.1菜單類別管理功能模塊說明

菜單類別管理功能是外賣配送網(wǎng)站的一項(xiàng)主要功能模塊,管理員可以通過

這個模塊對網(wǎng)站的上菜單的分類進(jìn)行管理操作,如圖4-5所示。

28

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

圖4-5菜單類別的類圖

4.5.2菜單類別管理功能模塊詳細(xì)設(shè)計(jì)

通過了解外賣配送管理系統(tǒng)的需求,對系統(tǒng)功能進(jìn)行設(shè)計(jì)。

該子功能模塊相關(guān)類,及方法描述表,如下表4-5所示。

表4-5菜單類別管理功能模塊相關(guān)類及方法描述表

類名insert

描述添加菜單新類別類

屬性Name、model、id

方法insert()、Types()、queryAll()

類名delete

描述刪除菜單類別類

屬性id、model

29

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

方法delete()、queryAll()

類名update

描述修改菜單類別類

屬性model、id、name

方法update()、queryAll()

5系統(tǒng)實(shí)現(xiàn)

5.1登錄注冊模塊設(shè)計(jì)

5.1.1登錄注冊模塊界面設(shè)計(jì)

用戶登入界面,如圖5-1所示:該界面包括了用戶的登入和用戶的注冊功能。

用戶登錄:如果用戶注冊過,數(shù)據(jù)在數(shù)據(jù)庫存在,可以直接輸入用戶名和

密碼進(jìn)行登錄,如果通過后臺系統(tǒng)的驗(yàn)證則登錄成功,沒有則登錄失敗。

圖5-1登入界面

用戶注冊:用戶點(diǎn)擊注冊,跳轉(zhuǎn)注冊頁面進(jìn)行注冊,輸入用戶名和密碼等

基本信息,點(diǎn)擊注冊,系統(tǒng)驗(yàn)證成功則注冊成功自動登錄跳轉(zhuǎn)首頁,否則注冊

失敗。提示注冊失敗信息,如圖5-2所示。

30

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

圖5-2注冊界面

5.1.2登錄注冊模塊核心代碼實(shí)現(xiàn)

步驟1:登錄

關(guān)鍵代碼:

@RequestMapping("login")

publicStringlogin(Usersuser,HttpServletRequestrequest){

booleanloginType=usersService.login(user.getName(),user.getPwd());

HttpSessionsession=request.getSession();

if(loginType){

session.setAttribute("user_session",usersService.queryById(usersService.queryByname

(user.getName())));

return"redirect:/menus/qiantai/allMenus";

}else{

session.setAttribute("message","用戶名密碼錯誤");

return"qiantai/userLoginFail";

}

}

//登出,地址/users/logout

@RequestMapping("logout")

publicStringlogout(HttpSessionsession){

//清除session

31

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

session.removeAttribute("user_session");

//重定向到登錄頁面的跳轉(zhuǎn)方法

return"redirect:/menus/qiantai/allMenus";

}

步驟2:注冊

關(guān)鍵代碼:

@RequestMapping("insert")

publicStringinsert(@Param("name")Stringname,@Param("pwd")String

pwd,@Param("realname")Stringrealname,@Param("sex")Stringsex,@Param("age")

Integerage,@Param("card")Stringcard,@Param("address")String

address,@Param("Phone")Stringphone,@Param("email")String

email,@Param("code")Stringcode,@Param("type")Integertype){

Usersuser=new

Users(name,pwd,realname,sex,age,card,address,phone,email,code,type);

usersService.insert(user);

return"redirect:../public/qiantai/login.jsp";

}

5.2我的餐車模塊設(shè)計(jì)

5.2.1我的餐車模塊界面設(shè)計(jì)

我的餐車界面,如圖5-3所示:此界面是用戶登入進(jìn)行操作,把菜單放入餐

車,也可以取消菜單,最后提交訂單。

32

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

圖5-3我的餐車界面

33

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

5.2.2我的餐車模塊核心代碼實(shí)現(xiàn)

步驟1:加入餐車

關(guān)鍵代碼:

//放入購物車

@RequestMapping("order_addshoppingcar")

publicStringorder_addshoppingcar(HttpServletRequestrequest){

HttpSessionsession=request.getSession();

StringmenuId=request.getParameter("menuId");

Integerid=Integer.parseInt(menuId);

Integersum=(Integer)session.getAttribute("sum");

if(sum==null){

sum=1;

session.setAttribute("sum",su

溫馨提示

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

評論

0/150

提交評論