黃勇強 鄭英姿


關鍵詞:物流倉儲;前后端分離技術;Jeecg-boot
1 概述
隨著現代信息技術飛速發展,使得國內的經濟得到了快速的發展,倉儲行業技術也得到了提高,倉儲行業發展迅速,凸顯出發展的良好勢頭。但有些倉儲還是以票據來保存數據,容易造成數據丟失、管理困難、工作效率不高等,因此開發一個物流倉儲管理系統,以便更好地提升其運作效率和管理水平[1]。
通過研究和分析,設計出一套基于Jeecg-boot平臺的物流倉儲管理系統的方案。本系統能夠保存大量數據,以便核對數據,避免出現損失等情況,降低出錯率,有效地控制和管理物資,做到及時補充物資,避免出現物資不足的情況,將物流、物資和人員整合到一起,提高工作效率,方便運輸物資,加快物資的流動速度,方便且高效地管理倉儲[2]。通過本系統,能夠帶來更大的便捷和更好的實用性,提高工作效率,改善管理方式,讓倉儲業變得更好。
本文經對物流倉儲管理系統的需求分析,利用Jeecg-boot平臺搭建開發環境,提高開發效率,節省開發時間,使用開發文檔和各種插件,提高整個系統的運行速度,優化系統的整體性能,降低系統的耦合性[3]。
2 系統需求分析
根據用戶提出的需求,確定用戶的需求,制定需求文檔,最終確定要實現登錄、用戶管理、車輛管理、計劃管理、倉庫管理、庫存管理、財務管理、統計報表、系統管理這9個功能模塊。
2.1 登錄
用戶輸入用戶名、密碼和驗證碼后,點擊登錄,驗證成功后進入系統首頁。
2.2 用戶管理
1) 員工管理:管理用戶,分配用戶角色,被凍結的用戶無法登錄系統;
2) 部門設置:管理部門,分配用戶部門;
3) 角色權限:管理系統角色。
2.3 車輛管理
1) 車輛列表:管理車輛,車輛用來運輸物料,維修的車輛無法執行任務;
2) 車輛保險:管理車輛保險,車輛保險過期的前一周,系統將進行信息提醒;
3) 車輛任務:可以查詢往5年期間的該車輛執行過的具體任務。
2.4 計劃管理
1) 計劃列表:管理和制定計劃,對計劃中的物料、人員、車輛進行派單、完單等操作。
2.5 倉庫管理
1) 倉庫設置:管理倉庫,倉庫可以設置許多的庫位;
2) 庫位設置:管理庫位,庫位用來存放物料;
3) 轉移記錄:查看轉移后物料的詳細信息。
2.6 庫存管理
1) 物料管理:管理物料,可以對物料進行增刪改查等操作;
2) 庫存查詢:可以查詢指定倉庫-指定庫位-存儲的物料信息。
2.7 財務管理
1) 計劃結算:對完成的計劃進行結算;
2) 出入庫臺賬:查詢出入庫的記錄;
3) 年度出入庫臺賬:查看近5年每個月物料的出入庫記錄。
2.8 統計報表
1) 出車統計:統計近5年的每個月的車輛執行任務的次數;
2) 人員任務統計:統計近5年中每個月員工執行任務的次數;
3) 物料出入統計:統計倉庫中物料。
2.9 系統管理
1) 消息通知:提醒用戶閱讀消息;
2) 定時任務:自定義定時任務并自動執行;
3) 菜單管理:管理系統的菜單信息;
4) 數據字典:管理系統的數據字典。
3 系統設計
3.1 系統功能設計
物流倉儲管理系統的角色分為管理員和普通用戶,管理員可以訪問的功能模塊有:用戶管理、車輛管理、計劃管理、倉庫管理、庫存管理、財務管理、統計報表和系統管理,普通用戶可以訪問的功能模塊有用戶管理和車輛管理。系統的功能模塊圖如圖1所示。
3.2 數據庫設計
本系統采用MySQL 數據庫對系統所產生的數據進行存儲,使用Navicat 連接MySQL,以此來提高開發效率和方便操作數據[4]。
在項目設計的過程中,合理設計數據庫的結構可以提高系統運行效率以及用戶體驗感。同時E-R圖是能夠清晰體現實體、屬性、聯系之間的關系[5]。
數據庫E-R圖設計:
1) 倉庫-物料實體聯系
一個倉庫擁有多種物料,一種物料可以存入多個倉庫,因此,倉庫和物料的關系之間是多對多的關系。
2) 計劃列表-物料實體聯系
一種計劃存在一種物料,一種物料可以被寫入多個計劃,因此,該系統的物料和計劃列表的關系之間是1對多的關系。
3) 計劃列表-派單實體聯系
一個計劃可以進行多次派單,一次派單對應一個計劃,因此,該系統的計劃列表和派單的關系之間是1對多的關系。
4) 用戶-派單實體聯系
一次派單派遣多個員工,一個員工也是對應多個派單,因此,該系統的派單和用戶的關系之間是多對多的關系。
5) 車輛-派單實體聯系
一次派單派遣多個車輛,一個車輛也是對應多個派單,因此,該系統的派單和車輛的關系之間是多對多的關系。
6) 倉庫-派單實體聯系
一次派單與倉庫交接一次,一個倉庫可以與一次派單交接,因此,該系統的派單和倉庫的關系之間是1對1的關系。
數據庫整體設計E-R圖如圖2所示。
在設計數據表的時候,我們都需要為每張數據表中設計該表的唯一性,來標識唯一的記錄。每個數據庫表對應一個實體邏輯結構[6],本系統的數據庫名叫cable,其包括了12 個數據表,分別為:用戶表(sys_user) ,字典表(sys_dict_item) ,角色表(sys_role) ,系統通告表(sys_announcement) ,車輛表(vehicle) ,車輛保險表(insurance) ,倉庫表(warehouse) ,庫位表(stor?age_location) ,物料表(material) ,計劃列表(plan1) ,派單表(send_orders) ,派單- 車輛- 員工表(send_or?ders_subtabulation) 。
4 系統實現
目前本系統的角色分為管理員和普通用戶,不同的角色擁有不同的權限,系統由24個功能組成,分別是:登錄、首頁、員工管理、部門設置、角色權限、車輛列表、車輛保險、車輛任務、計劃列表、倉庫設置、庫位設置、轉移記錄、物料管理、庫存查詢、計劃結算、出入庫臺賬、年度出入庫臺賬、出車統計、人員任務統計、物料出入統計、定時任務、消息通知、菜單管理、數據字典。
4.1 管理員模塊實現
1) 員工管理
進入員工管理界面(UserList.vue) ,發送查詢所有用戶的請求,調用查詢SQL語句,前端將結果渲染在表格上。輸入搜索條件查找用戶,搜索條件作為key進行模糊查詢,將搜索結果重新渲染在表格上。點擊修改按鈕,彈出修改界面(UserModal.vue) ,表單將請求數據和該行數據進行回顯,修改好內容后,攜帶表單中數據發送保存用戶請求,調用修改SQL語句,如果為true則成功,false為失敗。點擊刪除按鈕,攜帶id發送刪除請求,調用刪除SQL語句,如果為true則成功,false為失敗。點擊添加按鈕,填寫添加用戶信息,發送添加請求,調用插入SQL語句,如果為true則成功,false為失敗。
2) 車輛列表
進入車輛列表界面(VehicleList.vue) ,發送查詢所有車輛的請求,調用查詢SQL語句,前端將結果渲染在表格上。輸入搜索條件查找車輛,搜索條件作為key進行模糊查詢,將搜索結果重新渲染在表格上。點擊修改按鈕,彈出修改界面(VehicleModal.vue) ,表單將該行數據進行回顯,修改好內容后,攜帶表單中數據發送保存車輛請求,調用修改SQL語句,如果為true則成功,false為失敗。點擊刪除按鈕,攜帶id發送刪除請求,調用刪除SQL 語句,如果為true 則成功,false為失敗。點擊新增按鈕,填寫新增車輛信息,發送添加請求,調用插入SQL語句,如果為true則成功,false為失敗。
3) 計劃列表
進入計劃列表界面(Plan1List.vue) ,發送查詢所有計劃的請求,調用查詢SQL語句,前端將結果渲染在表格上。輸入搜索條件查找計劃,搜索條件作為key進行模糊查詢,將搜索結果重新渲染在表格上。點擊詳情按鈕,彈出詳情界面(Plan1Modal.vue) ,表單將請求數據和該行數據進行回顯,修改好內容后,攜帶表單中數據發送保存計劃請求,調用修改SQL語句,如果為true則成功,false為失敗。點擊刪除按鈕,攜帶id發送刪除請求,調用刪除SQL語句,如果為true則成功,false為失敗。點擊新增按鈕,填寫新增計劃信息,發送添加請求,調用插入SQL語句,如果為true則成功,false 為失敗。點擊派單按鈕,彈出派單界面(MergePlanModelPlan1.vue) ,表單將請求數據和該行數據進行回顯,修改好內容后,攜帶表單中數據發送保存派單請求,調用修改SQL語句,如果為true則成功,false為失敗。點擊完單按鈕,彈出完單界面(Com?pletePlan1Model.vue) ,表單將數據和該行數據進行回顯,修改好內容后,攜帶表單中數據發送保存完單請求,調用修改SQL 語句,如果為true 則成功,false 為失敗。
4) 倉庫設置
進入倉庫設置界面(WarehouseList.vue) ,發送查詢所有倉庫的請求,調用查詢SQL語句,前端將結果渲染在表格上。輸入搜索條件查找倉庫,搜索條件作為key進行模糊查詢,將搜索結果重新渲染在表格上。點擊編輯按鈕,彈出編輯界面(WarehouseModal.vue) ,表單將該行數據進行回顯,修改好內容后,攜帶表單中數據發送保存倉庫請求,調用修改SQL語句,如果為true則成功,false為失敗。點擊刪除按鈕,攜帶id發送刪除請求,調用刪除SQL語句,如果為true則成功,false為失敗。點擊新增按鈕,填寫新增倉庫信息,發送添加請求,調用插入SQL語句,如果為true則成功,false為失敗。
5) 物料管理
進入物料管理界面(MaterialList.vue) ,發送查詢所有物料的請求,調用查詢SQL語句,前端將結果渲染在表格上。輸入搜索條件查找物料,搜索條件作為key進行模糊查詢,將搜索結果重新渲染在表格上。點擊編輯按鈕,彈出編輯界面(MaterialModal.vue) ,表單將該行數據進行回顯,修改好內容后,攜帶表單中數據發送保存物料請求,調用修改SQL語句,如果為true則成功,false為失敗。點擊刪除按鈕,攜帶id發送刪除請求,調用刪除SQL 語句,如果為true 則成功,false為失敗。點擊新增按鈕,填寫新增物料信息,發送添加請求,調用插入SQL語句,如果為true則成功,false為失敗。
4.2 普通用戶模塊實現
1) 員工管理
進入員工管理界面(UserList.vue) ,發送查詢所有用戶的請求,調用查詢SQL語句,前端將結果渲染在表格上。輸入搜索條件查找用戶,搜索條件作為key進行模糊查詢,將搜索結果重新渲染在表格上。
2) 車輛列表
進入車輛列表界面(VehicleList.vue) ,發送查詢所有車輛的請求,調用查詢SQL語句,前端將結果渲染在表格上。輸入搜索條件查找車輛,搜索條件作為key進行模糊查詢,將搜索結果重新渲染在表格上。
5 總結
本文研究基于Jeecg-boot 平臺快速搭建開發環境,使用前后端分離技術來開發系統的全過程,該系統設置了管理員和普通用戶這兩種角色,通過各種權限(菜單權限、按鈕權限)實現了不同角色擁有不同的權限,系統包含的功能模塊有:登錄、用戶管理、車輛管理、計劃管理、倉庫管理、庫存管理、財務管理、統計報表和系統管理。按照系統開發的思路,從需求分析、系統設計、系統實現到系統測試的方式最終完成系統開發。
經過測試,本系統開發完成且具備下列優點:
1) 對重復部分封裝成組件,方便維護和使用。
2) 使用前后端分離技術,能夠快速開發,降低系統耦合性。
3) 使用一系列的插件和打包工具,優化系統運行速度。