陳禹航
摘要:網(wǎng)上訂餐系統(tǒng)是實現(xiàn)信息化食堂管理的一個重要環(huán)節(jié)。該文設(shè)計和實現(xiàn)了一個B/S結(jié)構(gòu)的網(wǎng)上訂餐系統(tǒng),著重討論訂餐系統(tǒng)的功能與實現(xiàn)、數(shù)據(jù)流程及存儲。該系統(tǒng)的主要功能包括職工管理、菜單管理、網(wǎng)上訂餐、訂單管理及財務(wù)結(jié)算。該網(wǎng)上訂餐系統(tǒng)基于微軟的.NET FRAMEWORK 4.0開發(fā),采用IIS6.0+SQL SERVER 2005的Windows Server 2003服務(wù)器平臺,前臺使用HTML語言與JAVASCRIPT語言,后臺使用ASP.NET與C# 4.0。
關(guān)鍵詞:網(wǎng)上訂餐系統(tǒng);SQL SERVER 2005;ASP.NET;C#
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2014)21-5136-05
以前,單位職工訂餐采用現(xiàn)場、電話等方式。這些方式都存在一定的缺陷,運營模式比較落后。職工普遍反映菜品單調(diào)、選擇面少及不合口味等。
隨著單位信息化建設(shè)的推進,基于Web的網(wǎng)上訂餐系統(tǒng)應運而生。它的出現(xiàn),完全顛覆了現(xiàn)行的訂餐方式,使訂餐擺脫了空間上和時間上的約束,無論誰,只要能上內(nèi)網(wǎng),都可以坐在電腦前面,方便地進行網(wǎng)上訂餐。相比傳統(tǒng)的訂餐方式,網(wǎng)上訂餐系統(tǒng)的主要優(yōu)點如下:
便捷性。網(wǎng)上訂餐系統(tǒng)使用十分方便,只要能夠上內(nèi)網(wǎng),職工就都能夠輕松訂餐。在以前的訂餐方式中,職工要么是到食堂去,要么打電話給食堂管理員。而使用了網(wǎng)上訂餐系統(tǒng)后,這些問題都不存在了。
可擴展性。如今,網(wǎng)絡(luò)技術(shù)突發(fā)猛進,發(fā)展迅速。網(wǎng)上訂餐系統(tǒng)可以集成到單位的活動目錄中,實現(xiàn)與單位的其他信息系統(tǒng)的融合。所以,可以肯定的說,網(wǎng)上訂餐的前景是十分廣闊的,可擴展性非常好。
因此,開發(fā)一個網(wǎng)上訂餐系統(tǒng)是非常必要的。通過后臺的菜單生成,方便管理員即時發(fā)布新的菜單信息;通過購物車、流程模式實現(xiàn)職工的訂餐功能;通過訂單的管理,實現(xiàn)職工和食堂管理員以不同的視圖進行訂單管理;通過后臺的財務(wù)報表,方便食堂管理人員及時準確掌握食堂的整個經(jīng)濟狀況。
1 系統(tǒng)整體分析
一個網(wǎng)上訂餐系統(tǒng),必須有一個正確的設(shè)計指導思想,通過合理選擇數(shù)據(jù)結(jié)構(gòu)、操作系統(tǒng)及開發(fā)環(huán)境,構(gòu)成一個完善的網(wǎng)絡(luò)體系結(jié)構(gòu),才能充分發(fā)揮網(wǎng)上訂餐系統(tǒng)的優(yōu)勢。本系統(tǒng)的設(shè)計原則為以下幾點:
實用性。本系統(tǒng)以單位的實際情況為出發(fā)點,以方便職工為原則,同時融入先進的管理經(jīng)驗,量身定做了一套先進的網(wǎng)上訂餐系統(tǒng),充分滿足單位的需求。
先進性。本系統(tǒng)充分應用現(xiàn)有成熟的計算機技術(shù)、網(wǎng)絡(luò)技術(shù)、軟件開發(fā)技術(shù),為職工提供高性能系統(tǒng)。系統(tǒng)運用先進的B/S結(jié)構(gòu),采用SQL SERVER 2005數(shù)據(jù)庫,方便系統(tǒng)管理員管理。
可靠性。本系統(tǒng)通過合理與先進的網(wǎng)絡(luò)設(shè)計以及軟、硬件的優(yōu)化選型,可保證網(wǎng)站的可靠性與容錯性。
本文首先進行需求分析,進而分析系統(tǒng)的數(shù)據(jù)要求。
1.1 系統(tǒng)需求分析
根據(jù)單位食堂的運作情況,本系統(tǒng)主要完成的功能如下:
1) 職工界面部分
查看菜單:包括午餐例餐、晚餐例餐及小炒等的菜單;
職工登錄:提高職工登錄接口;
修改個人密碼:可以自行修改個人密碼;
訂單管理:查看歷史已生效訂單,查看、修改及取消未生效訂單;
網(wǎng)上訂餐:包括午餐例餐、晚餐例餐及小炒等的訂餐;
2) 管理界面部分
職工管理:查看、增加、修改和刪除職工;
職工角色管理:查看、增加、修改和刪除職工角色,職工角色包括普通職工、系統(tǒng)管理員及食堂管理人員等;
小炒菜單管理:查看、增加、修改和刪除小炒菜單;
例餐菜單管理:按照星期和餐別查看、增加、修改和刪除例餐菜單;
小炒訂單管理:按照星期和餐別查看所有職工訂單,并以訂單為單位查看當天的已生效訂單的菜品統(tǒng)計以方便食堂管理人員按需購買食材;
例餐訂單管理:按照星期和餐別查看當天的已生效訂單的菜品統(tǒng)計以方便食堂管理人員按需購買食材;按照星期和餐別查看所有職工當天當餐訂單詳情以方便食堂管理人員給職工分配菜品;
財務(wù)報表管理:方便食堂管理人員按月統(tǒng)計所有職工的消費統(tǒng)計和消費詳情。
1.2 數(shù)據(jù)庫需求分析
通過前面對系統(tǒng)功能模塊的分析,總結(jié)出訂餐網(wǎng)的數(shù)據(jù)庫需要以下信息需求:
1) 職工分為普通職工、系統(tǒng)管理員和食堂管理人員;
2) 職工不需要登錄即可瀏覽菜單信息;
3) 職工登錄后可以維護個人信息,實現(xiàn)網(wǎng)上訂餐和訂單管理;
4) 小炒菜單按照菜類劃分,每種菜品都有自己的菜類;
5) 例餐菜單按照星期和餐別劃分;
6) 菜類包括葷菜、素菜、湯和主食;
7) 訂單包括訂單條目和總訂單;
8) 一個職工可以預定多份菜品;
9) 一個職工對應多張訂單;
10) 一張訂單表對應多張訂單條目
綜合上面對訂餐網(wǎng)數(shù)據(jù)庫的需求分析,考慮到未來功能上的擴展,設(shè)計如下的數(shù)據(jù)項和數(shù)據(jù)結(jié)構(gòu):
1) 職工信息包括的數(shù)據(jù)項:賬號、密碼、姓名和角色編號;
2) 職工角色信息包括的數(shù)據(jù)項:角色編號和角色名稱;
3) 小炒菜單信息包括的數(shù)據(jù)項:菜品編號、菜品名稱、價格和菜類編號;
4) 菜分類信息包括的數(shù)據(jù)項:菜類編號和菜類名稱;
5) 例餐菜單信息包括的數(shù)據(jù)項:菜單編號、菜單日期和午餐標識;
6) 例餐菜單項信息包括的數(shù)據(jù)項:菜品編號、菜單編號、菜品名稱、單價和菜類編號;
7) 訂單表信息包括的數(shù)據(jù)項:訂單編號、職工編號、訂餐狀態(tài)、就餐日期、午餐標識、就餐地址、訂餐日期、金額總價和小炒標識;
8) 訂單條目信息包括的數(shù)據(jù)項:訂單條目編號、訂餐編號、菜品名稱、數(shù)量和單價。
1.3 系統(tǒng)流程分析
職工進入網(wǎng)站首頁,瀏覽例餐和小炒菜單信息,當?shù)卿洺晒缶哂行薷膫€人密碼、個人訂單管理及網(wǎng)上訂餐。系統(tǒng)管理員還可管理職工和職工角色,食堂管理人員還可管理菜單、小炒訂單、例餐訂單和財務(wù)報表。系統(tǒng)流程圖如圖1所示。
2 系統(tǒng)設(shè)計
2.1 ASP.NET數(shù)據(jù)庫操作類
一般地,ASP.NET數(shù)據(jù)庫操作可以直接使用ADO.NET類,即每個頁面都需寫連接數(shù)據(jù)庫、存取數(shù)據(jù)庫及關(guān)閉數(shù)據(jù)庫的代碼。該方式存在兩個弊端:一是若你的數(shù)據(jù)庫改變了,你必須一個頁面一個頁面地更改數(shù)據(jù)庫操作代碼;二是代碼冗余,很多代碼都是重復的。
本系統(tǒng)設(shè)計了一個數(shù)據(jù)庫操作類SqlServer,該類對數(shù)據(jù)庫連接、查詢、插入、修改、刪除及關(guān)閉進行重寫。在ASP.NET頁面中只需調(diào)用該SqlServer類,即可直接使用該SqlServer類。
2.2 前臺主要功能設(shè)計
前臺基本功能包括職工登錄、密碼修改、菜單查看、網(wǎng)上訂餐及訂單管理等模塊,這些功能基本滿足了單位的需求。以下主要介紹網(wǎng)上訂餐和訂單管理的設(shè)計實現(xiàn)。
2.2.1 小炒訂餐
小炒訂餐模塊設(shè)計如下:職工先通過小炒菜單表添加菜品到購物車,再在購物車模塊,選擇就餐日期和餐別以完成訂餐。小炒訂餐模塊的最終界面如圖2和圖3所示。
購物車的實現(xiàn)主要是利用ASP.NET的SESSION對象,把所訂購的菜品信息存入Session["Car"]數(shù)組中,通過讀取Session["Car"]數(shù)組的數(shù)據(jù)獲取職工的訂購菜品信息。購物車的主要源代碼如下:
1) 判斷購物車是否為空
4 結(jié)束語
本文介紹了網(wǎng)上訂餐系統(tǒng)開發(fā)的必要性,詳細敘述了系統(tǒng)需求分析、數(shù)據(jù)庫需求分析和系統(tǒng)流程分析,介紹了系統(tǒng)的前臺主要功能設(shè)計和后臺主要功能設(shè)計,重點探討了購物車的實現(xiàn)過程,對設(shè)計開發(fā)網(wǎng)上訂餐系統(tǒng),實現(xiàn)食堂信息化管理具有重要的意義。
參考文獻:
[1] 馬偉.ASP.NET 4權(quán)威指南[M].北京:機械工業(yè)出版社,2010.
[2] 劉勇,劉造新.SQL Server 2005數(shù)據(jù)庫管理[M].北京:清華大學出版社,2012.