1 預約點餐系統的設計與實現
1.1 設計目標
食堂預約點餐系統以簡便、易用為設計目標,以所見即所得為設計指導,實現用戶通過移動設備隨時隨地點餐,食堂管理人員對用餐人數、用餐量較準確的的統計,提高用戶的體驗感及食堂的管理水平。
1.2 設計思想
食堂點餐管理系統主要分為前臺點餐頁面、后臺管理兩部分,點餐頁面有訪問權限設置,管理員要事先導入學校教職工信息,并建立個人賬戶,賬戶內存儲著用戶的個人信息和訂單記錄信息。用戶首次點餐時,需輸入個人相關信息和微信號進行綁定,系統自動驗證登錄信息的有效性(可以保存登錄信息,下次直接登錄,提升用戶體驗),然后進行預約點餐,提交點餐請求,若被系統驗證成功則存儲點餐紀錄;后臺管理權限分為:超級管理員、食堂管理員兩個角色,超級管理員擁有所有的權限,食堂管理員只能操作規定范圍內的功能模塊,如:在菜品庫添加菜品,日常配餐,訂單管理,就餐日期、人數、菜品數量的統計等。
食堂預約點餐系統前臺以圖片列表的形式,直觀地顯示就餐日期,不同時間段食堂提供的菜品。用戶登錄后可以點選自己需要的食物,輸入菜品數量,提交自己的預約點餐信息即可,界面非常簡單、便捷、易操作,在點餐期間可以取消或是修改自己的點餐信息(菜品數量)。管理后臺以樹形結構陳列管理功能,操作直觀、簡單、便捷。
1.3 軟硬件配置
本系統需要一臺普通的服務器,安裝 2008操作系統,.6和PHP7。系統基于B/S架構,采用+PHP()[2]+MS 配置。IIS7內置模塊,可以在運行模式的腳本引擎。PHP運行在模式下,是一種最高效和最安全的運行模式,支持大并發量和高負載。PHP7內置模塊能夠緩存PHP的中間代碼,節省編譯時間,優化執行。.6[2]屬于小型數據庫產品,支持絕大多數重要特性,性能完全滿足需求。在PHP中使用PDO接口通過驅動連接MYSQL數據庫。軟件關系如圖1.
1.4 開發框架
本系統開發框架有前端和后端組成。前端開發框架主要面向用戶,提供良好的人機界面,方便用戶使用系統。后端開發框架主要面向程序員,提供良好的編程模型和框架,滿足軟件工程的模塊化、可擴展、可重用、可配置和輕量級等要求,方便編程。本系統基于MVC模型開發,采用國人開發的禪道框架[3],前端框架采用模板[4]。
1.5 系統流程圖
系統流程圖如圖2所示。
1.6 系統組成及功能劃分
預約點餐系統主要包括前臺頁面和后臺頁面兩部分。前臺頁面實現用餐地點、用餐時間的選擇、菜品瀏覽、菜品選擇、用戶登錄、用戶預約信息提交,個人信息維護和用戶歷史訂單查詢等功能。后臺頁面實現用戶管理、菜品庫管理、訂單管理、配餐管理和日志管理等功能。系統主要功能模塊如圖3所示。
1.7 表結構設計[5]
系統總共有5張表,菜品庫表用于存儲食堂所有菜品信息,后臺的配餐模塊是基于菜品庫中的菜品進行選擇配餐的;配餐表用于保存每日每個就餐時間段食堂提供的菜品信息,前臺的界面的瀏覽的菜品信息基于此表;預約表用于存儲用戶某日某個時間段內預約的菜品信息,食堂管理后臺的就餐時間段人數統計、菜品統計,都是基于預約表的信息;用戶信息表用于存儲了用戶個人信息;日志表主要用于存儲用戶的一些操作信息。各個表的字段設計如下:
菜品庫表(菜品id,菜品名,所屬類型,圖片,價格,刪除標志);
配餐表(菜品id,日期,就餐時間段,菜品名,刪除標志);
預約表(預約id,用戶id,下單時間,日期,就餐時間段,菜品名,配餐id,數量,刪除標志);
用戶信息表(用戶類型,用戶姓名,部門,微信id,訪問次數,最后ip,最后登錄時間,角色);
日志表(id,對象類型高校點餐,對象id,操作者,動作,時間,IP,操作內容)
2 系統功能實現的部分截圖
2.1前臺
2.2 后臺
2.4 部分關鍵代碼
配餐管理部分代碼
($menus as $menu) {
if (isset($map[$menu->food])) {
die('dup food');
}
$map[$menu->food] = $menu;
}
//當前選中菜品
$ = array();
($_POST as $id => $v) {
$a = ('_', $id);
if ($a[0] 'food') ;
$ = $a[1];
if (!isset($foods[$])) {
throw new ($this->lang->error->);
}
$[$] = 1;
}
//查找新分配的菜品
($ as $ => $v) {
//未找到,新分配
if (!isset($map[$])) {
$data = new ();
$data->date = $date;
$data->type = $type;
$data->food = $;
$this->dao->()->data($data)
->exec();
$ = $this->dao->();
$this->log->('menu', $, '', $data);
}
}
//查找刪除的菜品
($map as $ => $menu) {
//已分配的菜品未選中,刪除
if (!isset($[$])) {
$food = $foods[$];
//關聯
$row =
$this->dao->('count(*) as num')->from()
->where('')->eq(0)
->('menu')->eq($menu->id)
->fetch();
}
3 結束語
通過高校食堂移動預約點餐系統的開發,滿足了高校用戶通過移動設備實現就餐地點、就餐時間、菜品數量的選擇,就餐人數、就餐食物數量的統計,對于節省人力、提高效率都有顯著效果,并且有利于數據的流動和管理。
參考文獻:
[1] 閆小坤,周濤.微信公眾平臺應用開發從入門到精通[M]. 北京:清華大學出版社,2015.
[2] Brett . PHP&MySQL;實戰手冊[M]. 2版. 北京:中國電力出版社,2014.
[3] 周洪艷,林超,丁頌.基于的點餐系統APP設計[J].長春師范大學學報,2016(12).
[4] 李淑娟,周偉,強宓詠.高校智慧點餐系統的探索與實踐[J].華中師范大學學報:自然科學版高校點餐,2017(S1).
[5] 王欣. 智能電子點菜系統的研究[D]. 北京:北京交通大學,2017.
下一篇:微信商戶平臺有關內容
免責聲明:部分文章信息來源于網絡以及網友投稿,本站只負責對文章進行整理、排版、編輯,出于傳遞更多信息之目的,并不意味著贊同其觀點或證實其內容的真實性,如本站文章和轉稿涉及版權等問題,請作者在及時聯系本站,我們會盡快為您處理。