《基于JAVA的超市物流配送管理系統(tǒng)設計與實現(xiàn)》14000字(論文)_第1頁
《基于JAVA的超市物流配送管理系統(tǒng)設計與實現(xiàn)》14000字(論文)_第2頁
《基于JAVA的超市物流配送管理系統(tǒng)設計與實現(xiàn)》14000字(論文)_第3頁
《基于JAVA的超市物流配送管理系統(tǒng)設計與實現(xiàn)》14000字(論文)_第4頁
《基于JAVA的超市物流配送管理系統(tǒng)設計與實現(xiàn)》14000字(論文)_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

基于JAVA的超市物流配送管理系統(tǒng)設計與實現(xiàn)目錄TOC\o"1-3"\h\u215221.緒論 摘要:隨著信息化的發(fā)展,它給諸多行業(yè)賦能,提升了生產水平。為了促使超市管理水平的提升,可以將信息化手段引入超市管理中,以提升超市運營效率。系統(tǒng)的功能包括訂單配送管理、訂單取消管理、商品管理、用戶管理、權限管理等,其中訂單配送管理是系統(tǒng)的重要功能,訂單配送的流程是一般用戶先選擇商品進行下單,系統(tǒng)管理人員對訂單進行管控,包括安排訂單的配送和確保訂單送達。本文基于系統(tǒng)需求,在充分考慮了技術、經濟等可行性的基礎之上,著手對系統(tǒng)進行設計,分別從核心功能和基礎功能兩方面入手開始設計,并對數據庫進行了規(guī)劃和設計。系統(tǒng)后臺選用Java開發(fā),前臺采用Jsp、JavaScript等技術進行開發(fā),在開發(fā)完成后,系統(tǒng)經過了功能測試,經測試,系統(tǒng)完全實現(xiàn)了系統(tǒng)最初的系統(tǒng)功能和需求,達到系統(tǒng)建設的目標,通過了系統(tǒng)測試,充分驗證了系統(tǒng)可用性。關鍵詞:配送;超市供應;供應鏈管理緒論課題背景隨著數字化經濟的發(fā)展,各行各業(yè)都引入了信息化并提升了行業(yè)運營效率,從重工業(yè)、社交、交通到教育、培訓等。超市在人們的日常生活中有很重要的作用,滿足人們的衣食等購物需求,超市如果引入信息化手段能進一步提升運行效率,方便超市運營,也給人們日常生活帶來便利。超市在我們的經濟生活中隨處可見,小型超市和大型超市承擔了民眾日常生活用品供應的任務。小型超市由于其分布廣泛,幾乎隨處可見,這使得購物非常便捷,因此小型超市為民眾的日常生活提供了便利。但是,小型超市由于經營范圍較小、投入資本偏低,因此在日常的運行中,小型超市幾乎都很少引入信息化手段。隨著我國互聯(lián)網飛速的發(fā)展和普及,我國已經由信息時代大跨越到目前的智聯(lián)網時代,在此進程中,大型企業(yè),比如淘寶、京東等都紛紛擁抱技術,不僅利用信息手段提升了企業(yè)運行效率,甚至還成立技術輸出的科技公司。而反觀小型供應商和小型超市,依然在使用一些傳統(tǒng)的方式運行著,比如采用手工記賬的方式,這使得超市的運行效率跟不上時代的要求,從而錯過客流,難以吸引顧客。為了提升小型超市的運行效率,可以借助大型企業(yè)的思路,引入信息化手段,規(guī)范小型超市內部和外部的流程和管理,提升管理水平和盈利能力。引入信息化手段,可以從用戶管理、貨物管理、供應商管理等多個維度提升小型超市的運行效率。以商品配送管理為例,可以方便購買者對要購進的商品進行輸入下單,然后后臺可以看到商品下單信息之后進行發(fā)貨,經過運輸和配送之后就可以達到購買者手中,等待商品配送完成之后,后臺可以關閉這個訂單,完成這個配送過程。本系統(tǒng)的初衷是讓超市進貨可以實現(xiàn)自動化,超市下單之后,后臺人員就可以安排給超市進行配送商品,提升超市的運行效率。但是本系統(tǒng)還可以被超市用使用,這樣可以方便超市附近的居民下單從超市進行購物,而超市進行配送。本文后續(xù)不再嚴格區(qū)分這兩種使用場景,而是將主要精力集中在商品的管理、訂單管理、用戶管理、退單管理等具體的商品配送細節(jié)中,以提升系統(tǒng)本身的可用性和易用性。研究意義小型超市管理系統(tǒng)可以大幅提升超市的運行水平。對超市來說,可以提升其內部管理水平和外部管理水平。內部可以提升內部人員的管理水平,還可以提升超市內貨物的管理水平,外部可以提升和供應商之間的管理水平,提升和供應商的溝通效率[2]。本人也可以通過對小型超市管理系統(tǒng)的調研、分析、設計和實現(xiàn)來提升我個人的信息化技術水平,使得大學四年來所有專業(yè)知識得以應用,同時提升工程能力,為以后的工作積累項目經驗。對社會來說,經濟社會中的小型超市數量巨大,如果每一個超市都可以提升其運行效率,那就可以為顧客節(jié)省時間,為員工謀取更大福利,從而提升整個社會的經濟運行效率。國內外的發(fā)展現(xiàn)狀隨著經濟發(fā)展和人們生活水平的提高,市場的形勢也發(fā)生了變化。人們的生活需求不再滿足于衣食無憂的低要求。近年來,很多人不僅僅是因為他們在新興產業(yè)中表現(xiàn)出色?,F(xiàn)代化的市場管理和便利的購物吸引了無數的顧客[4]。國外的超市信息化水平整體比我國起步早一些,尤其是大型超市的信息化水平很高,以沃爾瑪為代表的一些巨頭超市早就利用信息手段提升超市運營水平[7]。而國內的一些大型超市雖然引入信息化比國外發(fā)達國家遲一些,但是也將信息化引入了。國外信息技術發(fā)展較早,尤其是在發(fā)達國家,這些國家很早就將信息技術引入了超市管理中,比如沃爾瑪等國外超市巨頭,在整個超市的供應鏈管理中引入了信息化系統(tǒng),用來管理上游供應商,以保證超市供應需求的穩(wěn)定[13];在超市的營業(yè)系統(tǒng)中,也引入了信息化系統(tǒng),從而可以完成超市的營業(yè)活動[2];在超市的客戶管理中也引入了信息化手段,比如可以按照客戶的消費積累一定的積分,然后換成其他商品,這可以增加客戶的忠誠度[8]??傊?,在外國的超市管理中,大量引入了信息化系統(tǒng)和手段提升超市運作效率,并最終提升超市盈利水平。課題實現(xiàn)的主要目標(1)系統(tǒng)要對進行售賣的商品進行管理,包括商品的錄入和商品的刪除以及商品的修改等。(2)系統(tǒng)要對訂單進行管理,這些訂單就是用戶打算購買進行下單的,下單的內容主要包括要購買的商品、商品的價格、下單者的聯(lián)系方式等信息,這樣就可以管理購買商品的訂單了,包括訂單的創(chuàng)建、狀態(tài)變更和取消等。(3)系統(tǒng)還要支持退單管理,如果用戶進行了下單,但是由于某種原因需要取消訂單,系統(tǒng)需要進行支持,可以支持已經下單的商品的取消。(4)系統(tǒng)需要對用戶進行管理,這樣就可以規(guī)范用戶,還要給用戶提供修改相關信息的功能。本文主要工作和結構安排第1章,本章介紹了超市商品配送系統(tǒng)開發(fā)的課題背景,以及此課題的研究價值和現(xiàn)實意義,以及超市商品配送的國內外發(fā)展現(xiàn)狀,和此課題將要實現(xiàn)的主要目標。第2章,本章介紹了超市商品配送系統(tǒng)開發(fā)所使用的相關技術及其特點,并介紹了此系統(tǒng)的各種開發(fā)工具。第3章,本章介紹了超市商品配送系統(tǒng)的各方面可行性分析,以及系統(tǒng)具體的需求分析,詳細闡述了超市商品配送的各種功能性需求和其他非功能性需求。第4章,本章介紹了超市商品配送系統(tǒng)的概要設計,從架構層面對系統(tǒng)進行規(guī)劃和設計。第5章,本章是超市商品配送系統(tǒng)的詳細設計和實現(xiàn)部分,對每一個具體模塊進行細化。本章小結本章主要介紹了超市商品配送系統(tǒng)的課題背景,首先分析了課題背景并提出本課題,然后通過文獻閱讀和分析的方式對國內外的發(fā)展現(xiàn)狀進行綜述,接著闡述了課題實現(xiàn)的主要目標,最后對全文的框架和內容安排進行了敘述。

系統(tǒng)相關概念和技術開發(fā)語言系統(tǒng)前臺主要使用HTM和CSS開發(fā)。HTML一種靜態(tài)的網頁生成語言,其中文名稱是超文本標記語言,對于網站的開發(fā)一般都會使用HTML語言,目前其已經發(fā)展了多個版本最新的HTML版本是HTML5,在靜態(tài)網頁的開發(fā)和動態(tài)網頁的開發(fā)中都會使用HTML語言,究其原因是容易學習和使用,語法相對較簡單。一般HTML文件的后綴名是.html.可以直接使用瀏覽器打開,預覽相關的功能[6]。在網站的開發(fā)經常會涉及到調網頁的樣式,以保證網站的頁面精美,簡潔。所以在開發(fā)網站中經常會使用CSS樣式控制表來制定統(tǒng)一的網站樣式[5]。比如:想要控制整個完整的文字大小,可以在CSS樣式中進行控制,你所具備的功能應當是滿足不同網頁的需求,CSS控制網頁的主要方法是使用HTML的屬性進行樣式的控制。以保證網頁精美漂亮。系統(tǒng)后臺擬采用Java開發(fā),Java語言是當前最后廣大碼農歡迎的一門語言。Java可以通過虛擬機使得其有良好的跨平臺能力,在移植方面也有很大優(yōu)勢,因此,本文選擇Java開發(fā)。由于Java語言的生態(tài)較好,因此還可以選擇一些優(yōu)秀的開源框架作為系統(tǒng)的基礎軟件,從而可以提升開發(fā)效率。開發(fā)架構介紹以MVC架構作為小型超市管理的框架。MVC是一個常用的設計模式,這種設計模式旨在降低各個模塊或者邏輯模塊之間的耦合度,這樣可以使得一個模塊的變動不會影響另一個模塊,可以降低模塊之間的依賴程度,從而大幅提升系統(tǒng)的設計靈活度和可擴展性,是一個成熟的設計模式[12]。MVC是由三個英文單詞的首字組成,這些單詞分別是Model、View、Controller,其中Model就是模型,它是系統(tǒng)中的數據本身,而View是給客戶展示的視圖樣式,Controller是控制請求和回應的策略關系的,也就是一個請求應該給返回哪一個頁面視圖。實現(xiàn)了MVC設計模式的框架系統(tǒng)有很多,但是當前最流行的框架莫過于SpringMVC,在SpringMVC中,Controller一般是通過配置系統(tǒng)的映射實現(xiàn)的,也就是前臺可以發(fā)起某一個請求,而Controller負責接受這個請求,并將請求轉發(fā)給對應的邏輯處理代碼,Controller后面一般還有一個Service層和一個Dao層,其中Service是程序的業(yè)務邏輯,而Dao是程序的數據庫持久層。在SpringMVC中,View是指配置將后臺的數據如何映射到前臺的某一個頁面中過程,通過這個映射,會將模型中的數據按照View層的具體要求展示出來。在實際的開發(fā)中,我們首先需要選擇的是View層,我們常用的選項有JSP、Html等;其次,Controller層是可以采用Spring提供的注解@Controller實現(xiàn),在Controller內部有Service和Dao,分別負責業(yè)務邏輯和業(yè)務數據處理;而Model一般就是指我們封裝的數據本身,這些數據可以使用相應的數據格式存儲和轉發(fā)。圖2-1展示了MVC架構。圖2-1MVC架構示意圖Web服務器Web服務器是連接瀏覽器和后臺服務的紐帶,Tomcat是當前應用廣泛的服務器。Tomcat的主要功能是將前臺瀏覽器的請求處理一下,然后根據瀏覽器的請求找到對應的資源,這些資源一般分為靜態(tài)網頁和動態(tài)Servlet,檔Tomcat找對對應資源的時候,會以合理方式轉給前臺,前臺通過瀏覽器就可以正常顯示了。相比于Tomcat,還有其他些服務器產品,比如Oracle旗下的Weblogic也是一種服務器。但由于Weblogic的使用需要授權,這導致軟件成本急速攀升,因此,導致了Tomcat的盛行。MySQL數據庫簡介在開發(fā)系統(tǒng)的過程中必須要存儲數據,存儲數據要依據系統(tǒng)面向的現(xiàn)實模型進行數據庫類型的選擇,比如如果要存儲普系圖可以選擇層次模型數據庫,要存儲知識圖譜相關信息,可以選擇圖數據庫[14],而本文的現(xiàn)實需要是基于面對對象方法對現(xiàn)實世界建模,并利用關系型數據模型對系統(tǒng)的業(yè)務邏輯進行分析,因此選用關系型數據庫。Mysql數據庫作為當前最熱門的關系型數據庫之一,具有免費、安裝快捷、使用方便等特點,可以支持關系型數據庫的選擇、投影等操作,完全可以滿足本系統(tǒng)的需求。此外,在使用Java開發(fā)后臺的過程中,Mysql還有Mybatis的支持,Mybatis是一套支持數據庫連接的組件,可以方便諸如Mysql、Oracle數據庫的Java等語言的開發(fā),并且具有很快的開發(fā)速度,在開發(fā)的過程中可以有“Java代碼即SQL語句”的柑橘,十分方便和好用,因此,本文采用Mysql作為系統(tǒng)持久層。本章小結本章主要介紹了超市商品系統(tǒng)開發(fā)的各種開發(fā)工具的,還有采用了哪些框架,了解了相關開發(fā)技術的特點和優(yōu)勢,以及在此網站開發(fā)中的作用。

需求分析超市商品培訓哦那個系統(tǒng)主要用來管理超市的商品供應,需要支持商品的錄入、修改和刪除。然后,需要對商品供應進行管理,這就需要訂單管理,訂單管理需要支持訂單錄入、訂單的修改和訂單的狀態(tài)修改,訂單的狀態(tài)是已經下單、配送中、完成,分別代表商品已經下單、商品開始配送和商品配送完成三種行為。如果訂單由于某種原因不再需要,可以支持取消訂單的功能。先對系統(tǒng)進行需求分析,然后對整個系統(tǒng)的可行性進行分析,可行性是整個系統(tǒng)的奠基部分,只有通過可行性分析,系統(tǒng)才可以開展。需求分析分為功能性和非功能性兩方面進行敘述。功能性需求需求分析是軟件工程設計中的一個關鍵過程。在這個過程中,需要確定此系統(tǒng)用戶的需要。只有了解了這些需要之后,才能對系統(tǒng)進行分析并尋求建立解決方案。需求分析階段的主要目標是確定軟件系統(tǒng)將要實現(xiàn)哪些功能。如果分析師在需求分析過程中未能正確識別客戶的需求,那么最終的軟件就無法真正達到客戶的滿意程度,或者軟件無法在規(guī)定的時間里完工[13]。通過分析,超市商品配送系統(tǒng)網站的主要功能是提供用戶管理、訂單管理、退單管理、商品管理、權限管理等功能。系統(tǒng)的核心功能包括小型超市的訂單管理,商品管理、退單管理,用戶管理是保證系統(tǒng)正常運行的前提。權限管理是對用戶權限進行約束和控制的重要功能。訂單管理系統(tǒng)可以滿足用戶下單的需求,用戶可以選擇自己想要購買的商品以及數量,然后確定之后,就可以進行下單。下單完成之后,系統(tǒng)管理人員就可以看到用戶的下單信息,然后組織人員進行裝配,等待商品送達,整個配送過程就結束。商品管理系統(tǒng)要讓用戶可以下單,則必須要對用戶打算購買的商品進行上架和管理,系統(tǒng)管理人員可以將想要對外售賣的商品進行上架,如果售賣的過程中發(fā)現(xiàn)商品比較熱銷,或者供應商成本上漲,都可以將商品的價格進行上調,也就是需要滿足商品修改的需求。如果商品已經過時,或者停產從而導致不能繼續(xù)售賣,可以將商品刪除下架。退單管理如果用戶購買了商品,但是由于某種原因打算反悔,可以支持用戶取消訂單。用戶管理用戶包括系統(tǒng)的所有使用用戶,這些用戶有系統(tǒng)的管理人員、系統(tǒng)的最終使用用戶以及系統(tǒng)的一般使用用戶。系統(tǒng)的管理人員是整個系統(tǒng)的負責人,他要對系統(tǒng)整體負責,可以進行系統(tǒng)的權限控制,而普通用戶一般是指超市員工,他可以對用戶的下單信息進行閱讀和處理,而最終用戶指的是通過系統(tǒng)進行下單購買商品的人。權限管理為例保證合適的權限被合適的人所有用,系統(tǒng)將具有某一個或者某一些權限的一組功能授予一個角色,如果用戶具有對應的角色,就會擁有這個角色下面的所有權限。從而可以保證系統(tǒng)的權限合理被使用。有些用戶可以下單,但是卻不能確認訂單的完成,這樣就可以保證系統(tǒng)合規(guī)、合理、正常運行。權限管理就是指將這些功能權限或者功能角色進行管控的一個行為。超市商品配送的整體功能如圖3-1所示。圖3-1系統(tǒng)整體功能非功能性需求超市商品配送系統(tǒng)是基于Windows10平臺進行開發(fā)的,以MVC為架構,以MySQL為數據和數據庫中的管理系統(tǒng)來管理后臺人員。為了提升系統(tǒng)的易用性、可用性和穩(wěn)定行,本系統(tǒng)開發(fā)需要參考如下要求進行設計和開發(fā)。功能完備在超市商品配送系統(tǒng)開發(fā)初期,本人閱讀了大量關于管理信息系統(tǒng)和客戶管理系統(tǒng)方面的資料,并學習了開發(fā)類似系統(tǒng)所需要的所有技術知識,包括前端技術和后端知識以及數據庫相關的知識。在經過對小型超市老板的調研和對相關開源系統(tǒng)的源碼閱讀,確定滿足需求分析的基本模塊,并根據系統(tǒng)的設計對系統(tǒng)的模塊進行具體劃分,系統(tǒng)主要包含:訂單管理信息,取消訂單,用戶管理,商品管理,權限管理系統(tǒng)等5個模塊。界面友好界面可以滿足用戶的便捷使用,可以給用戶提供合理的導航,確??蛻艨梢园凑漳骋粋€次序和方式正常操作,異常的操作會給用戶提示,或者對不能操作的按鈕置灰從而提升系統(tǒng)的可用性和友好性。該系統(tǒng)是自適應的,導航欄的設計可以指導用戶更方便,快捷地執(zhí)行各種合理的操作。導航清晰一個好的系統(tǒng)可以天然地為用戶提供合理導航功能,即使一個未曾使用過系統(tǒng)的人員,也可以正確使用系統(tǒng),而不會出現(xiàn)因為錯誤地操作引發(fā)系統(tǒng)使用事故的問題。在軟件行業(yè)中,合理的界面控制也是軟件行業(yè)中安全生產的重要指標和要求。必須通過界面的合理引導和控制,確保用戶可以按照正確的思路和流程使用系統(tǒng)??尚行苑治觯?)經濟可行性超市的規(guī)模和形式千差萬別,有大型電商、有小型商店,本文系統(tǒng)的建設目標主要是針對中小型超市,給他們提供商品配送功能,也可以給他們的客戶提供商品配送功能。基于開源軟件的發(fā)展,基礎軟件的獲取省時省力,可以零成本獲取,這為系統(tǒng)開發(fā)降低了成本,大幅提升了系統(tǒng)的經濟可行性。基于小型超市的商品配送系統(tǒng),只要有網絡和IP,就可以對外提供服務,而費用相對較少,這使得小型超市幾乎花費很少成本就可以搭建系統(tǒng)。隨著云計算平臺的興起和企業(yè)上云的趨勢流行,可以采用租用云主機ECS和云數據庫RDS等云計算產品對超市商品配送系統(tǒng)進行部署,從而大大降低成本,滿足超市商品配送的管理人員的成本預算并提升超市的運行效率。(2)時間可行性時間可行性指從時間維度考慮系統(tǒng)的執(zhí)行的可能性,一個軟件系統(tǒng)的軟件過程包括系統(tǒng)的前期調研、系統(tǒng)分析、系統(tǒng)設計、編碼、測試等等程,基于對本系統(tǒng)的調研和功能分析,家政服務培訓系統(tǒng)的功能不是非常復雜,采用一些開源軟件可以加速軟件開發(fā)周期,并且此系統(tǒng)使用的技術都是學習過的,所以完全可以在畢業(yè)設計要求的時間內完成系統(tǒng)開發(fā)和論文撰寫。(3)技術可行性本系統(tǒng)主要采用了Java作為后臺編程語言,JSP、HTML5、javaScript、CSS等作為前臺編程語言。技術的可行性意味著在當前技術條件下,計算機軟硬件的發(fā)展能夠滿足開發(fā)需求。由于Java語言簡單易學,對硬件條件要求不是很高,只要安裝相應虛擬機即可運行。而MySQl數據庫由于占用內存相對較少,本系統(tǒng)的數據量不大,硬盤也可以滿足MySQL的存儲要求,所以使用Mysql作為系統(tǒng)數據庫是可行的。本系統(tǒng)采用以上技術可以有效的保證系統(tǒng)成功及高效地開發(fā)。綜上所述,使用以上技術完全可以滿足系統(tǒng)的技術需求。本章小結本章對此系統(tǒng)的建立的經濟,時間,技術,操作等可行性進行了分析,并且證明的系統(tǒng)確實具有可行性。系統(tǒng)的需求分析(包括功能和非功能需求)詳述了系統(tǒng)需要滿足的各種需求。

系統(tǒng)設計系統(tǒng)設計目標概述超市商品配送系統(tǒng)設計的建設目標就是為超市擁有者和超市的用戶之間建立一個橋梁,可以方便用戶下單,超市也可以應用信息化手段提升訂單,既滿足了用戶需求,又提升了超市效益。本系統(tǒng)的設計的第一目標主要是滿足需求分析中提出的所有功能。第二目標是盡可能使得開發(fā)速度大幅提升,這樣可以降低開發(fā)難度,縮短開發(fā)周期。第三目標是及時系統(tǒng)有調整,也可以基于當前架構進行迅速迭代和升級。系統(tǒng)技術架構設計基于系統(tǒng)設計的目標,并考慮現(xiàn)實因素,超市商品配送擬系統(tǒng)采用MVC框架,首先,采用MVC進行架構設計,可以有效減少代碼維護量,它將系統(tǒng)分為三層,出現(xiàn)問題時不必全部修改,只需找到相應層次。其次控制層可以滿足不同模型不同視圖提出的不同請求,所以對于用戶的請求可以全面有效的進行處理。所以系統(tǒng)采用MVC框架是非常實用的。在選用具體的技術的時候,擬采用SpringMVC架構,因為SpringMVC可以避免一些重復行的工作,支持自動掃描和注入,可以大幅提升開發(fā)效率。數據庫連接采用MyBatis,因為Mybatis幾乎不用寫sql語句就可以實現(xiàn)CRUD的需求,非常使用和快捷。架構設計目標軟件架構設計的目標是把系統(tǒng)分為幾個模塊來實現(xiàn),設計目標設定的是否合理決定著整個系統(tǒng)的實現(xiàn)是否穩(wěn)定。在這個過程中,架構的設計必須明確定義。合格的系統(tǒng)架構設計目標可以使系統(tǒng)平穩(wěn)流暢運行,操作簡單高效。家政服務培訓系統(tǒng)的架構的設計應達到以下幾個目標:(1)安全性。本系統(tǒng)對家政服務人員進行了人臉識別,可以有效防治他人冒名頂替培訓和考試。(2)可定制化。系統(tǒng)管理人員可以根據自己的需求定制開發(fā)各種培訓課程和評測內容。(3)可維護性。系統(tǒng)采用MVC架構,前后端分離,因此便于前端開發(fā)人員和后端開發(fā)人員的前后端分離維護,也便于維護人員查找定位相關代碼,可維護性高。系統(tǒng)功能架構本系統(tǒng)的功能根據重要程度和面向用戶的應用層次,分為基礎功能和核心功能?;A功能是指滿足系統(tǒng)運行的一些基本功能,這些功能并不能直接給系統(tǒng)帶來收益,也不能直接應用,但是是系統(tǒng)必須的部分,為系統(tǒng)的核心系統(tǒng)進行服務?;A功能包括權限管理、用戶管理和商品管理,而核心功能包括訂單管理和退單管理。(1)核心功能:訂單管理:用戶可以對喜愛的商品進行下單,然后選擇中意的商品進行下單,下單后,后臺人員就可以看到這個訂單,然后組織發(fā)貨和配送,如果配送完成,就可以將訂單關閉。退單管理:如果用戶對購買的商品不滿意,或者想返回,可以進行退單。(2)基礎功能:用戶管理模塊:用戶可以登錄個人后臺對自己的信息進行相應操作,如修改,查詢等。權限管理模塊:權限管理是指用戶擁有的權限的管理,可以給用戶進行賦權和收權。商品管理模塊:商品管理是指對商品進行上架和下架的管理。系統(tǒng)的整體功能架構如圖4-1所示。圖4-1功能架構圖數據庫設計數據庫的設計過程及遵循的原則數據庫保存了系統(tǒng)的重要數字信息資產,是這個系統(tǒng)賴以生成的基礎。一個設計良好的數據庫不僅便于實現(xiàn)功能,可以支撐業(yè)務,還易于擴展,可以方便維護。數據庫的設計有一定的原則,本系統(tǒng)選用關系型數據庫作為數據底座,關系型數據庫設計的一般規(guī)則是要符合業(yè)務需求,設計合理的表和表之間的關系,然后進行數據庫的建立。數據庫的基本規(guī)則如下。(1)保持數據的完整性保持數據的完整性是指數據的字段長度要比正常情況長一些,這樣在保證數據正確的情況下才能使得數據更加完整,使得數據庫數據更完善。數據表要具有關聯(lián)性各個數據表之間既是相互獨立的也應該互相關聯(lián),因為實體間有多對多的關系,如果表之間相互獨立的話,就得建立相關的表將數據耦合在一起,造成了數據庫的負擔,所以各個表之間應該具有一定的關聯(lián)性。數據的獨立性數據如果不是相互獨立的,那么在數據庫表結構在發(fā)生改變時,數據將不能保持完整,會隨著結構的改變而改變,造成數據庫的混亂,所以數據應具有獨立性。(4)減少數據冗余數據庫中有大量數據表,若數據冗余過多,會對數據庫造成一定的壓力,使得數據庫運行變得緩慢,影響整個系統(tǒng)的效率。本系統(tǒng)的數據采用實體-關系分析方法進行建模和分析,建模分析后的ER圖如圖4-2所示。圖4-2本系統(tǒng)E-R圖數據庫的詳細設計根據對超市商品配送系統(tǒng)的需求分析,架構設計等分析,此系統(tǒng)的功能主要分為核心功能和基礎功能,核心功能中主要包括訂單管理和退單管理,基礎功能包括商品管理、用戶管理和權限管理。核心功能中的主要功能有訂單管理、退單管理,以及訂單管理中衍生的評論信息。對應的會建立訂單表、退單表、評論表和訂單詳情表?;A功能中的用戶管理主要涉及用戶表,而權限管理涉及到系統(tǒng)菜單表和系統(tǒng)權限表,商品管理主要涉及的表有商品表。在進行表結構設計之前,制定一些通用規(guī)則,表的主鍵盡量采用序列,序列為Number型,而且盡量所有Number型的序列都有統(tǒng)一位數,時間都采用格式“4位年-2位月-2位日2位24小時計時法的時:2位分:2位秒”。數據庫中的表名和字段是大小寫不敏感的,但是本文盡量都使用大寫字母表示,字段命名采用下劃線分割方式命名,比如ORDER_ID,是由“ORDER”和“ID”組合而成,代表的是訂單的序列。用戶信息表,用來儲存用戶ID、用戶類型、用戶密碼、用戶聯(lián)系方式和用戶電子郵箱。具體內容如表4-1所示。表4-1用戶表序號字段名稱字段類型字段長度允許為空備注1USER_IDNUMBER4否用戶ID,主鍵2USER_TYPENUMBER4否用戶類型,1買家,2賣家3USER_PASSWDVARCHAR210否用戶密碼4USER_PHONEVARCHAR2100是用戶聯(lián)系方式5USER_EMAILVARCHR2100是用戶電子郵箱商品信息表用來儲存商品ID、商品名稱、商品價格和商品狀態(tài)等信息。具體內容如表4-2所示。表4-2商品表序號字段名稱字段類型字段長度允許為空備注1COMM_IDNUMBER4否商品ID,主鍵2COMM_NAMEVARCHAR240否商品名稱3COMM_STATEVARCHAR210否商品狀態(tài)4COMM_PRICENUMBER4是商品價格訂單信息表用來儲存訂單ID、商品ID。買家ID、支付狀態(tài)、發(fā)貨狀態(tài)、評論狀態(tài)等信息。具體內容如表4-3所示。表4-3ORDER訂單表序號字段名稱字段類型字段長度允許為空備注1ORDER_IDNUMBER4否訂單ID,主鍵2DETAIL_ORDER_IDNUMBER4否子訂單ID3USER_IDNUMBER4否買家ID4STATEVARCHAR24否狀態(tài)5PRICENUMBER4否訂單總價格6ADDRESSVARCHAR24是發(fā)貨地址7USERIDNUMBER4否用戶ID訂單子表用來儲存對訂單詳情,這里會記錄一個總的訂單對應的子訂單的所有商品信息,一個商品是一個子訂單。具體內容如表4-4所示。表4-4訂單子表序號字段名稱字段類型字段長度允許為空備注1DETAIL_ORDER_IDNUMBER4否子訂單ID,主鍵2ORDER_IDNUMBER4否訂單ID3COMM_IDNUMBER4否商品ID4PRICENUMBER4否價格評論表用來儲存評論過程中還產生得評論ID、訂單ID、評論文字等信息。具體內容如表4-4所示。表4-5評論表序號字段名稱字段類型字段長度允許為空備注1COMMENT_IDNUMBER4否評論ID,主鍵2ORDER_IDNUMBER4否訂單ID,外鍵3COMMENT_CONTENTVARCHAR24是評論文字3COMMENT_TYPEVARCHAR24否評論類型4COMMENT_STARVARCHAR24是評論星級ID菜單表用來儲存系統(tǒng)的所有菜單,菜單一般包括菜單的名稱、菜單的URL、菜單的上級菜單等等。菜單是采用樹狀結構進行組織的,一個菜單可以有若干個子菜單,這些菜單在表中表現(xiàn)出來就是子樹。表4-6表示了菜單表結構。表4-6菜單表結構序號字段名稱字段類型字段長度允許為空備注1MENU_IDNUMBER4否菜單ID,主鍵2PARENT_MENU_IDNUMBER4否父菜單3MENU_NAMEVARCHAR220是菜單名稱4URLVARCHAR220是菜單URL角色表用來記錄角色信息,目前系統(tǒng)分三種角色,分別是管理員、普通用戶和一般用戶。角色表的表結構如表4-7所示。表4-7角色表序號字段名稱字段類型字段長度允許為空備注1ROLE_IDNUMBER4否角色ID2ROLE_NAMEVARCHAR220否角色名稱退單表是記錄用戶退單信息的表,包括退單ID、訂單ID、用戶ID、退單時間和退單備注等信息。表4-8是退單表說明。表4-8退單表序號字段名稱字段類型字段長度允許為空備注1BACK_IDNUMBER4否退單ID,主鍵2ORDER_IDNUMBER4否訂單ID3USER_IDVARCHAR220是用戶ID4BACK_DATEVARCHAR220是退單日期5COMMENTVARCHAR220是退單備注本章小結本章主要介紹了此系統(tǒng)的各種架構設計和功能分析,詳細闡述了系統(tǒng)前后臺分別要實現(xiàn)哪些功能。分析了系統(tǒng)的各種實體之間的關系。設計了系統(tǒng)的數據庫,數據庫具體需要那些數據表以及各個表中具體字段以及類型,還在表中描述了表的外鍵關系。系統(tǒng)詳細設計與實現(xiàn)核心功能設計訂單管理訂單管理是系統(tǒng)的重要功能,系統(tǒng)的訂單管理就是按照一定的計劃從供應商那里訂貨的一個過程。訂單的下單過程流程如下圖5-1所示。圖5-1訂單下單流程圖訂單的主要功能是下單和管理員安排配送。訂單管理的主要功能是商品選擇,核心代碼如下:<divid="addDialog"style="padding:10px;"> <tableid="selected-product-datagrid"class="easyui-datagrid"style="width:655px;height:420px"toolbar="#select-product-btn"> <thead> <tr> <thfield="product_id"width="130px">商品ID</th> <thfield="product_name"width="130px">商品名稱</th> <thfield="product_place"width="130px">商品產地</th> <thfield="product_price"width="130px">商品價格</th> <thfield="productNum"width="130px"editor="{type:'numberbox',options:{min:1,precision:0}}">商品數量</th> </tr> </thead> </table> <divid="select-product-btn"> <ahref="#"class="easyui-linkbutton"iconCls="icon-add"plain="true"onclick="selectProduct()">添加商品</a> <ahref="#"class="easyui-linkbutton"iconCls="icon-remove"plain="true"onclick="removeProduct()">刪除</a> </div> </div>當訂單完成之后,用戶可以對這個訂單進行評價,評價的過程就是先選中之前自己下單的那個單子,然后填入評價信息,發(fā)布評價內容。評價的流程如圖5-2所示。圖5-2評價流程評論的代碼展示如下所示。<body> <!--數據列表--> <tableid="dataList"cellspacing="0"cellpadding="0"> </table> <!--工具欄--> <divid="toolbar"> <%@includefile="../common/menus.jsp"%> <divstyle="float:left;margin-top:2px;"> 訂單Id:<inputid="search-productorder_id"class="easyui-textbox"/> </div> <div> <aid="search-btn"href="javascript:;"class="easyui-linkbutton"data-options="iconCls:'icon-search',plain:true">搜索</a> </div> </div> <!--添加窗口--> <divid="addDialog"style="padding:10px;"> <formid="addForm"method="post"> <tableid="addTable"cellpadding="8"> <tr> <td>訂單Id:</td> <td> <inputid="add_productorder_id"class="easyui-textbox"style="width:200px;height:30px;"type="text"name="productorder_id"data-options="required:true,missingMessage:'請?zhí)顚懖少徲唵蜪d'"/> </td> </tr> <tr> <td>評論等級:</td> <td> <selectid="add_comment_level"class="easyui-combobox"style="width:200px;"name="comment_level"data-options="required:true,missingMessage:'請選擇評論等級'"> <optionvalue="0">1星</option> <optionvalue="1">2星</option> <optionvalue="2">3星</option> <optionvalue="3">4星</option> <optionvalue="4">5星</option> </select> </td> </tr> <tr> <td>評論:</td> <td> <inputid="add_comment_text"class="easyui-textbox"style="width:200px;height:30px;"type="text"name="comment_text"data-options="required:true,missingMessage:'請?zhí)顚懺u論'"/> </td></tr> </table></form> </div></body>退單管理如果用戶購買的商品不滿意,就可以申請退單。退單流程如下圖5-3所示。圖5-3退單流程退單的流程就是選中要退的單子,然后進行退單,用戶退單之后,系統(tǒng)后臺就可以看到這個退單信息,如果審核通過,退單就完成,否則退單會失敗。退單的審核是退單的核心功能。退單審核的主要代碼如下所示。<divid="toolbar"> <%@includefile="../common/menus.jsp"%> <divstyle="float:left;margin-top:2px;"> 采購訂單Id:<inputid="search-returnorder_id"class="easyui-textbox"/> </div> <div> <aid="search-btn"href="javascript:;"class="easyui-linkbutton"data-options="iconCls:'icon-search',plain:true">搜索</a> </div> </div> <!--添加窗口--> <divid="addDialog"style="padding:10px;"> <formid="addForm"method="post"> <tableid="addTable"cellpadding="8"> <tr> <td>訂單Id:</td> <td> <inputid="add_productorder_id"class="easyui-textbox"style="width:200px;height:30px;"type="text"name="productorder_id"data-options="required:true,missingMessage:'請?zhí)顚懖少徲唵蜪d'"/> </td> </tr> <tr> <td>備注:</td> <td> <inputid="add_returnorder_remarks"class="easyui-textbox"style="width:200px;height:30px;"type="text"name="returnorder_remarks"data-options="required:true,missingMessage:'請?zhí)顚憘渥?"/> </td> </tr> </table> </form> </div> <!--修改窗口--> <divid="editDialog"style="padding:10px"> <formid="editForm"method="post"> <inputtype="hidden"name="returnorder_id"id="edit-returnorder_id"> <tableid="editTable"border=0cellpadding="8"> <tr> <td>退單狀態(tài):</td> <td> <selectid="edit_returnorder_status"class="easyui-combobox"style="width:200px;"name="returnorder_status"data-options="required:true,missingMessage:'請選擇狀態(tài)'"> <optionvalue="0">退單中</option> <optionvalue="1">退單失敗</option> <optionvalue="2">退單成功</option> <optionvalue="3">取消退單</option> </select> </td></tr></table> </form>基礎功能設計用戶管理基礎功能中的重要功能就是用戶管理,用戶管理的主要功能是用戶登錄了,用戶登錄的邏輯是,輸入用戶名和密碼,選擇用戶類型,系統(tǒng)按照用戶類型進行相應的用戶名和密碼匹配,如果匹配成功,就登錄成果,并轉到對應頁面,否則就登錄失敗,需要重新填寫登錄信息。登錄的流程圖如圖5-4所示。圖5-4登錄流程登錄的代碼如下所示。<divclass="table"> <divclass="wel">超市物流配送管理系統(tǒng)</div> <divclass="wel1">SupermarketLogisticsDistributionManagementSystem</div> <divclass="user"> <divid="yonghu"style=""><imgsrc="../login/img/yhm.png"/></div> <inputid="loginusername"type="text"name="username"placeholder="請輸入賬戶"/> </div> <divclass="password"> <divid="yonghu"><imgsrc="../login/img/mm.png"/></div> <inputid="loginpassword"type="password"name="password"placeholder="請輸入密碼"/> </div> <divclass="cpacha"> <divid="yonghu"><imgsrc="../login/img/cpacha.png"/></div> <inputid="logincpacha"type="text"name="密碼"placeholder="請輸入驗證碼"/> <imgid="cpacha-img"title="點擊切換驗證碼"style="cursor:pointer;"src="get_cpacha?vl=4&w=150&h=50"width="110px"height="30px"onclick="changeCpacha()"> </div> <inputclass="login-button"type="button"name="登錄"value="登錄"/></div>商品管理商品管理是指對上的上架和下架,其中上架是新增一個商品,而下架就是選中商品然后直接進行刪除。圖5-5是商品上架流程。圖5-5商品上架流程系統(tǒng)實現(xiàn)系統(tǒng)登錄首先,輸入賬戶、密碼和驗證碼進行判斷是否為空,使用JavaScript腳本語言編寫的changCpacha函數對輸入的信息進行判斷,根據不同的輸入框彈出不同的提示并刷新驗證碼,當都符合的條件進行ajax前后端交互,通過后端從數據庫取出的數據進行判斷是否存在,返回json字符串給前端,如果錯誤就彈出不同的提示并刷新驗證碼,否則就進去系統(tǒng)。圖5-1展示了登錄系統(tǒng)界面。圖5-1登錄系統(tǒng)權限管理進入系統(tǒng)后,先對用戶進行權限的判斷,后端從數據庫獲取用戶權限,把數據存在Session中,根據后臺傳來的數據,通過C標簽遍歷出不同的菜單與按鈕操作。在進行權限的編輯時,先對菜單管理進行添加,最多為二級目錄,只能在二級目錄添加或刪除按鈕,然后對角色進行權限編輯,來達到權限管理。權限的管理首先要對菜單進行編輯,菜單編輯提供了增刪改查功能,具體操作頁面如圖5-2所示。圖5-2菜單編輯菜單編輯完成之后,可以對角色進行編輯,每個角色擁有什么權限就給展示什么頁面,編輯權限可以采用勾選菜單的方式,如果某一個菜單是需要的,就進行勾選,否則取消勾選就可以。菜單的編輯如圖5-2所示。圖5-3權限編輯攔截器和個人信息管理管理的實現(xiàn)攔截器,顧名思義就是起到了攔截作用,在用戶登入之前,除登入界面和靜態(tài)資源,其他頁面都是不能訪問的,防止未登入就進入了系統(tǒng),通過類實現(xiàn)HandlerInterceptor接口,再在配置springmvc.xml文件所需要攔截的請求即可實現(xiàn)攔截器的功能,在登入系統(tǒng)的之前,在賬戶、密碼和驗證碼正確的情況進入系統(tǒng),會保存用戶到Session中,通過判斷Session中是否存在用戶,如果沒有就進行攔截,重新登入。個人信息管理則獲取Session中用戶來進行查詢信息,并可以對個人信息修改,除了角色不可修改。商品管理在進入商品管理時,后端從數據庫取出數據轉化為json數據傳入前端,通過DataGrid控件生成表格,可對數據進行排序,在進行條件查詢中,通過mybatis模糊查詢進行查詢,通過后端傳來的數據刷新DataGrid控件重新生成表格,在添加商品過程中,先對填寫的相關信息進行判斷,然后通過ajax前后端交互返回結果,前端彈出提示框,在修改數據中,要選擇一項數據,然后通過JavaScript獲取當前選擇的數據,然后編輯的彈框獲取數據并修改自己的數據,最后對填寫的相關信息進行判斷,然后通過ajax前后端交互,根據數據id對數據庫中編輯數據,如果多選就會返回前端提示只能選一項,刪除功能則多選數據,JavaScript獲取當前選擇的數據id,然后通過ajax前后端交互,在數據庫中刪除數據。商品管理的操作就是增加商品、編輯商品、刪除商品。增加商品的操作中需要填寫商品的信息,而編輯商品是對這些信息進行編輯,刪除商品是直接選擇某一條商品信息,直接進行刪除操作。商品管理的界面如圖5-4所示。圖5-4商品管理界面用戶管理進入用戶信息管理頁面時,后端從數據庫取出數據轉化為json數據傳入前端,通過DataGrid控件生成表格,可對數據進行排序,在用戶名與角色多條件查詢中,通過mybatis模糊查詢進行查詢,通過后端傳來的數據刷新DataGrid控件重新生成表格,在添加用戶的過程中,先對填寫的相關信息進行判斷,其中頭像的上傳路徑是本項目的upload文件中,保存路徑,然后通過ajax前后端交互,把數據加入到數據庫中,在修改數據中,要選擇一項數據,然后通過JavaScript獲取當前選擇的數據,然后編輯的彈框獲取數據并修改自己的數據,最后對填寫的相關信息進行判斷,然后通過ajax前后端交互,對數據庫中編輯數據,如果多選就提示只能選一項,刪除功能則多選數據,JavaScript獲取當前選擇的數據id,然后通過ajax前后端交互,在數據庫中刪除數據。用戶管理包括新增用戶、用戶編輯和用戶注銷,其操作界面如圖5-5所示。圖5-5用戶管理界面訂單管理(也叫物流配送訂單管理)進入訂單管理頁面時,后端從數據庫取出數據轉化為json數據傳入前端,通過DataGrid控件生成表格,可對數據進行排序,通過mybatis模糊查詢進行訂單查詢,通過后端傳來的數據刷新DataGrid控件重新生成表格,在添加物流配送管理的過程中,先對商品的選擇,然后進行數量的修改,最后再對彈出一個窗口,填寫的相關信息進行判斷,添加成功后,會對相應的商品的存庫進行修改。配送狀態(tài)對訂單的配送情況進行修改。訂單管理的操作流程是,首先,用戶進行下單,下單前先選擇增加商品,然后選擇商品。下單頁面展示如圖5-6所示。圖5-6下單界面訂單下單完成之后,系統(tǒng)管理員或者具有管理權限的員工就可以從后臺看到對應的訂單,然后可以對訂單進行操作。具有訂單管理權限的員工對訂單可以操作的動作有修改訂單的狀態(tài),實際業(yè)務場景就是訂單的實際配送狀態(tài)變化,如果配送送到了就點擊配送完成的按鈕,表示訂單送達了。對訂單的狀態(tài)管理主要有已下單、配送中和已完成三個狀態(tài)管理。這三個狀態(tài)是有順序的,先是已下單、然后是配送中,最后是完成狀態(tài)。對訂單操作的界面如圖5-7所示。圖5-7訂單管理界面物流退單管理進入物流退單管理頁面時,后端從數據庫取出數據轉化為json數據傳入前端,通過DataGrid控件生成表格,可對數據進行排序,通過mybatis模糊查詢進行訂單查詢,通過后端傳來的數據刷新DataGrid控件重新生成表格,在添加物流退單的過程中,填寫的相關信息進行判斷,后端會對物流配送訂單進行判斷是否存在。退單審批是對退單訂單的退單情況進行修改,如果退單成功,會對相應的商品的存庫進行修改。取消訂單也是是對退單訂單的退單情況進行修改。取消退單的流程是先輸入對應的訂單編碼,然后開始退單,退單之后進行退單審核。填寫退單的操作如界面5-8所示。圖5-8退單填寫退單填寫完成之后,就開始到了退單流程,退單流程中,系統(tǒng)管理人員可以選擇退單的狀態(tài),可以審批通過或者不通過。對退單的審批如圖5-9所示。圖5-9退單審批用戶評論管理進入物流退單管理頁面時,后端從數據庫取出數據轉化為json數據傳入前端,通過DataGrid控件生成表格,可對數據進行排序,通過mybatis模糊查詢進行訂單查詢,通過后端傳來的數據刷新DataGrid控件重新生成表格,在添加物流退單的過程中,填寫的相關信息進行判斷,后端會

溫馨提示

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

評論

0/150

提交評論