計算機畢業(yè)設(shè)計SSM校園OTO超市系統(tǒng)論文_第1頁
計算機畢業(yè)設(shè)計SSM校園OTO超市系統(tǒng)論文_第2頁
計算機畢業(yè)設(shè)計SSM校園OTO超市系統(tǒng)論文_第3頁
計算機畢業(yè)設(shè)計SSM校園OTO超市系統(tǒng)論文_第4頁
計算機畢業(yè)設(shè)計SSM校園OTO超市系統(tǒng)論文_第5頁
已閱讀5頁,還剩36頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第3章系統(tǒng)分析3.1系統(tǒng)需求分析需求分析主要是對項目做的前期準(zhǔn)備,市場調(diào)查,同時進(jìn)行了全面深入的探討和分析的基礎(chǔ)上進(jìn)行的。在項目開始之前,必須做一個詳細(xì)的需求分析,確定了系統(tǒng)將要設(shè)計的頁面、性能和所要實現(xiàn)的功能。3.1.1性能需求一個系統(tǒng)的性能首先要考慮它的穩(wěn)定性;其次就是系統(tǒng)的速度,速度快了,用戶體驗也就提高了;最后考慮系統(tǒng)的可擴展性,能夠在現(xiàn)有框架不變的情況下對業(yè)務(wù)邏輯進(jìn)行增加,方便進(jìn)行二次開發(fā);系統(tǒng)重點要考慮的就是用戶體驗,所以盡可能的使項目頁面美觀、友好、操作簡單。3.1.2功能需求本系統(tǒng)是針對高校學(xué)生而設(shè)計的網(wǎng)站。針對需求功能的特點,本系統(tǒng)分為前臺用戶部分(買家)和后臺管理員部分(賣家)。前臺用戶部分(買家)根據(jù)對O2O校園超市功能的調(diào)查和研究,前臺主要是用戶對商品的展示和購買,主要實現(xiàn)以下功能:用戶管理模塊:用戶注冊、用戶登錄。商品瀏覽模塊:系統(tǒng)首頁、商品的分類、新品上架、熱銷商品瀏覽。購物車模塊:商品數(shù)量增加,商品的刪除。提交訂單模塊:填寫收貨地址,選擇收貨方式,確認(rèn)商品信息,生成訂單。我的訂單模塊:對所購商品的訂單查看,與后臺的訂單管理是對應(yīng)的,操作狀態(tài)會根據(jù)不同的情況而變化。訂單詳情模塊:查看此次訂單所購商品的詳細(xì)信息。后臺管理員部分(賣家)根據(jù)對O2O校園超市功能的特點,后臺主要是方便對商品的管理和維護(hù),主要實現(xiàn)以下功能:管理員模塊:管理員登錄。發(fā)布商品模塊:對商品進(jìn)行發(fā)布,展示到前臺頁面。商品管理模塊:對前臺商品可進(jìn)行刪除操作。訂單管理模塊:進(jìn)行訂單管理,與前臺的我的訂單是對應(yīng)的。訂單詳情模塊:查看此次訂單商品的詳細(xì)信息。3.2數(shù)據(jù)庫需求分析數(shù)據(jù)庫顧名是存儲數(shù)據(jù)的一個倉庫,在計算機內(nèi)要想對數(shù)據(jù)有組織的,可共享的存儲必然要存儲在數(shù)據(jù)庫當(dāng)中,從而實現(xiàn)數(shù)據(jù)結(jié)構(gòu)化的,無有害的和不必要的冗余,這些數(shù)據(jù)的特點是盡可能的不重復(fù);獨立于應(yīng)用程序的;對數(shù)據(jù)的增刪改查由統(tǒng)一管理和控制的;易于擴展。通過之前的分析和研究,設(shè)計出能夠滿足用戶需求的屬性以及實體之間的聯(lián)系。本系統(tǒng)對數(shù)據(jù)庫中的操作有增加、修改、刪除等。針對本系統(tǒng)設(shè)計出一套優(yōu)越的數(shù)據(jù)庫,使得高效的存儲數(shù)據(jù),數(shù)據(jù)庫設(shè)計如下:用戶信息表:用于存儲用戶信息。商品信息表:用于存儲商品信息。購物車表:用于記錄用戶存放商品的信息。訂單信息父表:用于記錄每一條訂單的信息。訂單子信息子表:用于存儲訂單里的商品信息。地址信息表:用于存儲地址信息。3.3可行性分析3.3.1技術(shù)可行性本系統(tǒng)總體設(shè)計采用了MVC的設(shè)計模式,和面向?qū)ο蟮拈_發(fā)思想,根據(jù)Struts+Sping+Mybatis框架的規(guī)則去劃分視圖,控制器和實體類以及調(diào)用關(guān)系,采用當(dāng)前最流行的Java語言,提供代碼的易維護(hù)性,易讀性,增加類內(nèi)部調(diào)動的靈活性。前臺采用JSP進(jìn)行用戶頁面的編輯、開發(fā)、管理;利用JavaScript腳本語言對頁面進(jìn)行腳本處理,使界面更加友好和完善;數(shù)據(jù)庫采用MySQL,處理速度快高效以滿足系統(tǒng)的性能要求;本系統(tǒng)采用的當(dāng)前流行的開發(fā)工具M(jìn)yeclipse和Tomcat服務(wù)器,節(jié)約了開發(fā)成本。本系統(tǒng)從開發(fā)角度及技術(shù)方面都是可行的。3.3.2經(jīng)濟(jì)可行性所謂系統(tǒng)的經(jīng)濟(jì)可行性就是指為了系統(tǒng)的開發(fā),設(shè)計和維持運行所需要的各項經(jīng)費開支。從而擴大了客戶的需求量,減少不要的步驟,提高工作效率。本系統(tǒng)只需要一臺PC機,應(yīng)用的開發(fā)環(huán)境都是免費的,本系統(tǒng)個人獨立設(shè)計,節(jié)省了許多費用,給網(wǎng)站節(jié)約了成本,該網(wǎng)站充分將成本最低,利益最大化。所以從經(jīng)濟(jì)上是完全可行的。3.3.3操作可行性本系統(tǒng)的操作都是根據(jù)需求分析調(diào)查,從用戶體驗出發(fā),將系統(tǒng)的界面和功能設(shè)計的簡單易懂,符合用戶的操作習(xí)慣。系統(tǒng)在設(shè)計時,充分考慮用戶能夠在短時間內(nèi)熟悉系統(tǒng)各項的功能流程,因而遵循常規(guī)購物網(wǎng)站的流程。本系統(tǒng)是針對是經(jīng)常購物和喜歡購物的用戶,用戶只需懂得操作電腦的流程,就可進(jìn)行購買商品,不需要具備專業(yè)的電腦技術(shù)知識。網(wǎng)站的操作簡單,用戶體驗好充分說明了校園O2O超市系統(tǒng)的操作可行性。3.4本章小結(jié)本章主要是從系統(tǒng)需求、數(shù)據(jù)庫需求和可行性這幾個方面進(jìn)行了分析。首先,通過對市場的調(diào)查進(jìn)行了需求分析,一個好的系統(tǒng)項目,首先要有一定的時間來進(jìn)行需求調(diào)查,最終分析出本系統(tǒng)所要呈現(xiàn)的網(wǎng)站的頁面,設(shè)計需要簡單、頁面友好、操作容易,以及各個模塊相關(guān)功能。詳細(xì)的分析出數(shù)據(jù)庫里面的表與字段,使得能夠高效的輸入、輸出數(shù)據(jù)。最后分析了系統(tǒng)的可行性,主要分析了技術(shù)可行性、經(jīng)濟(jì)可行性和操作可行性,通過以上分析都說明了該系統(tǒng)是可行的,只有進(jìn)行了充分的分析,才能為后面的設(shè)計做好鋪墊。第4章總體設(shè)計總體設(shè)計是對系統(tǒng)進(jìn)行的一個總體而又完善的設(shè)計結(jié)構(gòu),為系統(tǒng)確定整體的框架,進(jìn)一步對系統(tǒng)各階段的總體概貌。4.1系統(tǒng)設(shè)計目標(biāo)作為一個完整的校園O2O超市系統(tǒng),主要分為買家部分和賣家部分。買家部分需要讓用戶瀏覽商品,對自己喜歡的商品可以查看詳細(xì)信息,從而根據(jù)自己的選擇加入購物車,并生成訂單;賣家部分則是需要發(fā)布商品信息,對商品信息進(jìn)行及時更新、更新訂單信息狀態(tài),本系統(tǒng)的主要目的是方便高校學(xué)生選購商品。從實際出發(fā),買家部分主要包括用戶注冊登錄、首頁瀏覽、商品分類瀏覽、商品詳情、加入購物車、購物車列表、訂單生成、我的訂單和訂單詳情;賣家包括管理員登錄、商品管理、訂單管理。用戶注冊登錄:為了提高系統(tǒng)的安全性,登錄后才能進(jìn)行購買。未登錄的用戶只能瀏覽商品,用戶注冊時需填寫手機號、密碼、確認(rèn)密碼,注冊完成之后可登錄;登錄時需填手機號、密碼。網(wǎng)站首頁:網(wǎng)站首頁是用戶進(jìn)入系統(tǒng)后第一個看見的頁面,所以頁面的整體結(jié)構(gòu)非常重要,首先頁面所要呈現(xiàn)的信息量要大,范圍要廣,讓用戶一目了然自己所要的商品該怎么操作。其次,首頁更重要的是頁面的整體要美觀、簡捷大方,用戶體驗提高了,這樣網(wǎng)站才能吸引更多用戶,從而體現(xiàn)了系統(tǒng)的價值。商品展示:首頁中第一個模塊所展示的是商品的分類,商品可以分為方便零食、奶蛋制品、飲料酒水、生活用品、咖啡沖飲、日用百貨、新鮮水果等分類,用戶可以根據(jù)自己所要商品點擊商品分類即可迅速找到自己所要的商品;第二個模塊展示的是新品上架的商品,可以讓用戶了解最近商家展示的新品;第三個模塊展示的熱銷商品,用戶一目了然的知道正在熱銷的商品。購物車:若選擇自己較多所要購買的商品時,可先將該商品放入購物車中,在購物車中可展示商品名稱、商品數(shù)量、商品單價、商品小計及計算出所有商品總價。購物車中用戶可以進(jìn)行自由更改商品數(shù)量及刪除某一商品等。訂單生成:若對自己所要的商品完成后進(jìn)行下單,確認(rèn)信息后可提交訂單,主要是對用戶的收貨地址和商品信息進(jìn)行確認(rèn),收貨地址可以添加、刪除和在現(xiàn)有的選擇操作,最終生成訂單。這樣可以方便賣家對訂單的處理,從而能夠準(zhǔn)確配送。我的訂單:用戶下完訂單可以實時了解訂單的情況和本次購買商品的詳細(xì)信息。用戶可以根據(jù)交易狀態(tài)實時追蹤訂單情況,當(dāng)用戶下單后的首次狀態(tài)是待發(fā)貨;當(dāng)賣家點擊發(fā)貨按鈕,表示商品已經(jīng)發(fā)貨,此時的狀態(tài)就會變成待收貨,操作按鈕也將出現(xiàn)為確認(rèn)收貨;當(dāng)用戶拿到商品時點擊確認(rèn)收貨,此時的狀態(tài)就會變成已完成。表示此次訂單結(jié)束。訂單詳情:用戶可以對自己所購買的商品的訂單進(jìn)行查看訂單詳細(xì)信息,了解自己購買的商品情況,可以查看每次購買商品訂單的收貨地址,商品名稱,商品單價、數(shù)量、小計和總價。前臺商品管理:賣家可以對前臺展示的商品進(jìn)行管理,可添加商品操作,也可刪除商品操作,賣家每添加一個商品,前臺頁面中將對應(yīng)的展示該商品;同時,賣家每刪除一個商品,前臺頁面展示中對應(yīng)的該商品也將刪除。后臺訂單管理:后臺的訂單是由前臺買家訂單提交生成而來的,對訂單的狀態(tài)及時進(jìn)行實時更新,比如,點擊發(fā)貨,買家那邊的訂單就可以看見已發(fā)貨,表示商品已經(jīng)發(fā)貨,買家可以及時看見自己所買商品的狀態(tài)。但是后臺不可以對已經(jīng)生成的訂單中的商品進(jìn)行更改或添加。4.2數(shù)據(jù)庫設(shè)計4.2.1數(shù)據(jù)庫概念結(jié)構(gòu)的設(shè)計設(shè)計數(shù)據(jù)庫的基本步驟包括:1、需求分析階段;2、概念結(jié)構(gòu)設(shè)計階段,關(guān)鍵階段,建立獨立于具體DBMS的概念模型,如E-R方法;3、邏輯結(jié)構(gòu)設(shè)計階段,轉(zhuǎn)成DBMS數(shù)據(jù)模型;4、數(shù)據(jù)庫物理設(shè)計階段;5、數(shù)據(jù)庫實施階段;6、數(shù)據(jù)庫運行和維護(hù)階段。數(shù)據(jù)庫設(shè)計是數(shù)據(jù)庫的核心和基礎(chǔ),可以根據(jù)用戶需求設(shè)計數(shù)據(jù)庫。設(shè)計數(shù)據(jù)庫時一般采用語言化描述,采用E-R模型圖作為描述工具。用戶信息實體屬性圖,主要有用戶ID字段、用戶名字段,手機號碼字段和密碼字段,用戶信息的實體屬性圖如下圖4-1所示。圖4-1用戶信息實體屬性圖商品信息實體屬性圖,主要有商品ID字段、商品名稱字段、商品類別字段、商品價格字段、商品庫存字段、銷量字段、添加時間字段和商品圖片字段,商品信息屬性圖如下圖4-2所示。圖4-2商品信息實體屬性圖購物車信息實體屬性圖,主要有商品ID字段,用戶ID字段,購物車ID字段和庫存字段。購物車信息實體屬性圖如圖4-3所示。圖4-3購物車信息實體屬性圖訂單信息實體屬性圖,主要有價格字段、訂單添加時間字段、訂單ID字段和用戶ID字段,訂單信息實體屬性圖如圖4-4所示。圖4-4訂單信息實體的屬性圖地址信息實體屬性圖,主要有訂單ID字段,用戶ID字段,用戶姓名字段,用戶手機號碼字段,聯(lián)系地址字段,地址信息實體屬性圖如圖4-5所示。圖4-5地址信息實體屬性圖系統(tǒng)的用戶總體E-R圖,確定每個實體之間的聯(lián)系,如圖4-6所示。圖4-6系統(tǒng)用戶的總體E-R圖4.2.2數(shù)據(jù)表的設(shè)計user(用戶信息表)用戶存儲用戶的注冊信息,主要的字段有編號、用戶名、手機號、密碼。該表的結(jié)構(gòu)如下表4-1所示。表4-1user信息表的表結(jié)構(gòu)字段名數(shù)據(jù)類型與長度允許空是否為主鍵說明idint(9)√系統(tǒng)自動編號nicknamevarchar(45)用戶名稱phonevarchar(11)√手機號碼passwordvarchar(255)密碼goods(商品信息表)用于存儲商品的信息,主要的字段有編號、商品名稱、商品類別、商品價格、商品銷量、庫存、上傳圖片、添加時間。該表的結(jié)構(gòu)如下表4-2所示。表4-2goods信息表的表結(jié)構(gòu)字段名數(shù)據(jù)類型與長度允許空是否為主鍵說明idint(9)√系統(tǒng)自動編號namevarchar(225)用戶名稱cataint(2)商品分類priceint(9)商品價格salesumint(9)√商品銷量sumint(9)庫存imgurlvarchar(225)√商品圖片addtimedecimal(16,0)√添加時間cart(購物車信息表)記錄用戶加入購物車的商品信息,主要的字段有編號、商品編號、用戶編號、總價。該表的結(jié)構(gòu)如下4-3所示。表4-3cart信息表的表結(jié)構(gòu)字段名數(shù)據(jù)類型與長度允許空是否為主鍵說明idint(9)√系統(tǒng)自動編號goodidint(9)商品編號uidint(9)√用戶編號sumint(9)√總價order(訂單信息父表)用于記錄訂單信息,主要的字段有編號、商品價格、用戶編號、添加時間、地址編號、狀態(tài)。該表的結(jié)構(gòu)如下4-4所示。表4-4order信息表的表結(jié)構(gòu)字段名數(shù)據(jù)類型與長度允許空是否為主鍵說明idint(9)√系統(tǒng)自動編號priceint(9)商品價格addtimedecimal(16,0)√添加時間useridint(9)√用戶編號addidint(9)√地址編號statusint(2)√狀態(tài)orderext(訂單信息子表)用于存儲訂單里面的商品信息,主要的字段有編號、訂單編號、商品編號、數(shù)量。該表的結(jié)構(gòu)如下4-5所示。表4-5orderext信息表的表結(jié)構(gòu)字段名數(shù)據(jù)類型與長度允許空是否主鍵說明idint(9)√系統(tǒng)自動編號orderidint(9)訂單編號goodidint(9)√商品編號numint(9)√數(shù)量address(地址信息子表)用于存用戶的地址信息,包括字段有編號、用戶編號、名字、手機號碼、地址。該表的結(jié)構(gòu)如下4-6所示。表4-6address信息表的表結(jié)構(gòu)字段名數(shù)據(jù)類型與長度允許空是否主鍵說明idint(9)√系統(tǒng)自動編號useridint(9)√用戶idnamevarchar(45)√名字phonevarchar(11)√手機號碼addressvarchar(255)√地址4.3系統(tǒng)頁面設(shè)計本系統(tǒng)頁面結(jié)合多用戶正常審美觀點,對系統(tǒng)頁面進(jìn)行了整體的設(shè)計??紤]到頁面布局、頁面色彩、頁面優(yōu)化等因素。首先進(jìn)行了UI設(shè)計logo和頁面,擁有了本網(wǎng)站獨特的logo,然后再用webstrom進(jìn)行了網(wǎng)頁制作。根據(jù)頁面分為前臺頁面設(shè)計和后臺頁面設(shè)計,具體介紹如下。4.3.1前臺頁面設(shè)計前臺頁面設(shè)計主要從注冊,登錄,首頁,商品詳情,商品分類,我的購物車,訂單生成,我的訂單,訂單詳情這幾個方面去設(shè)計頁面。注冊登錄頁面,注冊頁面主要有手機號、密碼、確認(rèn)密碼;登錄頁面主要有手機號和密碼;這兩個頁面的背景圖片是一樣的,方便用戶認(rèn)知。首頁,首頁是一個系統(tǒng)的門面,所以對它的是設(shè)計要更加豐富,首頁的內(nèi)容上方分為兩個部分,左邊部分是商品的分類,商品分類主要有方便零食、奶蛋制品、飲料酒水、生活用品、咖啡沖飲、日用百貨、新鮮水果和其他,右邊是系統(tǒng)設(shè)計的banner圖,分別放了3張banner圖,每2000毫秒輪播一次,這體現(xiàn)系統(tǒng)的特色,首頁的下方部分主要展示的是新品上架和熱銷商品,讓用戶可以清楚知道商家店鋪的各種情況,新品上架與熱銷商品在首頁只能展示8個,若想看更多分別點擊對應(yīng)右上方的更多就跳轉(zhuǎn)到商品分類的全部頁。在展示商品時商品名稱超過了指定的寬度則超過的部分將成為省略號,若要看商品詳細(xì)名稱請進(jìn)入商品詳情頁。商品詳情頁面,商品詳情頁主要是對商品的詳細(xì)描述,可以看到本商品的大圖,可以知道商品的詳細(xì)名稱、商品的價格、此商品的對應(yīng)總銷量。下面加入購物車按鈕,在加入購物車按鈕上方有個數(shù)量的變更,點擊減號商品數(shù)量減,點擊加號商品數(shù)量增加,也可直接輸入表單數(shù)字,但是不能超過庫存。商品分類頁面,左邊選擇商品的各種分類,右邊展示分類對應(yīng)的商品;我的購物車頁面,主要是對自己加入購物車的商品進(jìn)行展示,在此頁面中主要是展示商品名稱,單價,數(shù)量和小計。后邊跟著刪除按鈕可以刪除此商品。下方是總價與結(jié)算。訂單生成頁面,主要是展示用戶的地址信息和購買商品信息。地址信息主要展示詳細(xì)地址、收貨人姓名、手機號碼,右上角還有個新增地址可以添加新地址。下面是付款方式,主要是有貨到付款、支付寶和微信支付,最后所購買商品的展示。確認(rèn)完成之后下面有個提交訂單按鈕。我的訂單頁面,展示已經(jīng)下單的商品的情況。主要有商品名稱、單價、數(shù)量、小計、交易狀態(tài)和操作。訂單詳情頁面,展示訂單里面商品的情況。主要有商品名稱,單價,數(shù)量,小計和總價。4.3.2后臺頁面設(shè)計后臺頁面設(shè)計主要從登錄,發(fā)布商品,商品管理,訂單管理這幾個方面去設(shè)計頁面,具體設(shè)計如下:登錄頁,與用戶的登錄頁一致發(fā)布商品頁,這部分是通過表單展示,主要包括是商品類別選擇,商品名稱,商品庫存,商品價格和商品圖片。商品管理頁,主要是對發(fā)布的商品進(jìn)行展示,每條商品最后有一個刪除,表示本條商品可以刪除。訂單管理頁,展示前臺用戶已經(jīng)下的訂單。主要有商品名稱、單價、數(shù)量、小計、交易狀態(tài)和操作。4.4系統(tǒng)功能設(shè)計系統(tǒng)的功能設(shè)計包括前臺實現(xiàn)和后臺實現(xiàn),這兩種模塊的實現(xiàn)功能包括:前臺(買家)實現(xiàn)的功能包括:用戶注冊登錄模塊,按商品分類、新品上架和熱銷商品瀏覽商品模塊,商品詳情模塊,我的購物車模塊,訂單生成模塊,我的訂單模塊,訂單詳情模塊。后臺(賣家)實現(xiàn)的功能包括:管理員登錄模塊,發(fā)布商品模塊,商品管理模塊,訂單管理模塊。4.4.1系統(tǒng)總體圖在校園O2O超市系統(tǒng)中,不同用戶進(jìn)入系統(tǒng)的角色不同,操作不同,流程也不同。根據(jù)上面的需求分析和可行性分析,校園O2O超市系統(tǒng)主要可分成前臺(買家)模塊和后臺(賣家)模塊,前臺買家模塊主要包括用戶注冊登錄模塊、按商品分類、新品上架和熱銷商品瀏覽商品模塊、商品詳情模塊、我的購物車模塊、我的訂單模塊、提交訂單生成模塊和提交訂單模塊;后臺賣家模塊包括發(fā)布商品模塊、商品管理模塊、訂單管理模塊,系統(tǒng)總體模塊如圖4-7所示。圖4-7系統(tǒng)總體模塊圖4.4.2前臺模塊前臺模塊圖主要是展示用戶操作和用戶瀏覽商品兩個部分。用戶進(jìn)入校園O2O超市系統(tǒng)后可以瀏覽商品,但如果想要購買商品,則必須要登錄,如果沒有登錄過本系統(tǒng)需先注冊,必須注冊為本系統(tǒng)用戶后才可登錄購買商品。如果沒有登錄瀏覽商品的用戶稱之為游客,無購買權(quán)限。用戶在此網(wǎng)站可以按商品的分類、新品上架、熱銷商品等瀏覽。圖4-8前臺模塊圖4.4.3用戶注冊和登錄流程用戶登錄和注冊是每個系統(tǒng)不可缺少的。用戶一旦注冊之后,才可以成為本系統(tǒng)的用戶,即可登錄到系統(tǒng)進(jìn)行相關(guān)的購買流程操作,如果沒有注冊,只可以瀏覽商品無購買商品權(quán)限,所以只有注冊成為本系統(tǒng)中的用戶才有購買權(quán)限,其流程圖如圖4-9、圖4-10所示。圖4-9注冊流程圖圖4-10登錄流程圖4.4.4購物流程用戶可將自己所需的商品添加到我的購物車中,并且可以對自己已經(jīng)加入購物車中的商品進(jìn)行數(shù)量的變更,也可進(jìn)行某個商品的刪除。每個購物網(wǎng)站中購物車至關(guān)重要且不可缺少的。如果用戶沒有登錄到本系統(tǒng),則無法將商品加入到購物車中,只有是本系統(tǒng)中的用戶才可添加。用戶將商品進(jìn)入到購物車后,可以進(jìn)行繼續(xù)選購,也可進(jìn)行選擇結(jié)算生成訂單,流程圖如圖4-11所示。圖4-11購物車流程圖4.4.5訂單流程用戶對加入購物車的商品結(jié)算操作后,需填寫訂單信息、確認(rèn)訂單后,才能生成訂單。確認(rèn)訂單頁面包括:收貨地址、收貨人、手機號、購買商品的商品名稱、單價、單個商品的數(shù)量、小計和總價??梢钥吹阶约核徺I商品的商品信息。收貨地址可以添加和刪除。收貨地址主要包括收貨人姓名,收貨人詳細(xì)地址,收貨人手機號碼,如圖4-12所示。圖4-12訂單流程圖4.4.6后臺模塊后臺可通過管理員賬號登錄系統(tǒng)即可,可以對前臺商品管理、用戶購買商品生成的訂單管理、商品發(fā)布等操作,管理顧名就是對各模塊的數(shù)據(jù)進(jìn)行添加、修改和刪除。僅有訂單管理,是由前臺用戶購買商品提交訂單后生成到后臺的,所以只能對訂單管理進(jìn)行修改和刪除操作,如圖4-13所示。圖4-13后臺模塊圖4.5本章小結(jié)本章首先描述了系統(tǒng)的設(shè)計目標(biāo),并對此進(jìn)行了詳細(xì)的介紹。通過實體屬性圖面描述了各功能模塊,有通過系統(tǒng)的總E-R圖,描述了實體之間的聯(lián)系,通過數(shù)據(jù)表以及每張表中的字段和字段類型描述了數(shù)據(jù)庫邏輯結(jié)構(gòu),其后又對系統(tǒng)各模塊功能設(shè)計做了詳細(xì)描述。第5章系統(tǒng)功能實現(xiàn)校園O2O超市系統(tǒng)從功能實現(xiàn)上主要分為前臺(買家)和后臺(賣家),前臺實現(xiàn)的功能主要包括用戶注冊、用戶登錄、商品分類、商品詳情、加入購物車、我的購物車、提交訂單、我的訂單、訂單詳情;后臺主要是對前臺商品發(fā)布、商品管理、訂單管理;以下詳細(xì)說明了各個模塊的功能實現(xiàn)。5.1前臺模塊5.1.1用戶注冊模塊下圖頁面是用戶的注冊頁面,一般進(jìn)入系統(tǒng)未注冊的成為游客,所以游客只有通過注冊頁面注冊成功之后才能成為本系統(tǒng)的用戶,就可進(jìn)行登錄,才可對系統(tǒng)購買商品的流程進(jìn)行一系列操作。為了驗證兩次輸入密碼是否一致,所以對注冊頁面進(jìn)行了密碼輸兩次的確認(rèn),如圖5-1所示。圖5-1用戶注冊圖用戶注冊模塊主要是填寫用戶注冊的基本信息,填寫包括用戶的手機號和密碼,當(dāng)用戶注冊信息填寫成功后,系統(tǒng)將會把剛剛所填寫的正確的注冊信息保存到數(shù)據(jù)庫對應(yīng)的表當(dāng)中。注冊時對注冊的手機號碼進(jìn)行了限制,判斷手機號碼格式是否正確,為了有效的管理用戶信息和防止惡意的注冊。驗證表單中手機號碼是否為空,以及格式是否正確。主要代碼實現(xiàn)如下: if(phone==""){//判斷手機號若為空 res=false; alert("手機號碼不能為空");//彈出“手機號碼不能為空” }else{ varpattern=/^1[34578]\d{9}$/;//手機號輸入的格式匹配 if(!phone.match(pattern)){//判斷手機號格式若錯誤 res=false; alert("手機號碼格式不正確!");//彈出“手機號碼格式不正確” } }5.1.2用戶登錄模塊登錄模塊主要是用戶已經(jīng)注冊完之后,登錄的信息已經(jīng)在數(shù)據(jù)庫中了,用戶只需填寫個人的登錄信息與數(shù)據(jù)庫的所填注冊的信息的字段對比,若一致則登錄成功,否則重新寫登錄。主要填寫的是用戶的手機號碼和密碼,驗證這兩個是否正確,用戶只有成功登錄后才能進(jìn)行瀏覽商品或者將購買商品等等操作。如圖5-2所示,圖5-2用戶登錄圖用戶登錄模塊主要是填寫的是用戶的登錄信息,填寫包括用戶的手機號和密碼,用戶登錄時需要與數(shù)據(jù)庫中的注冊信息進(jìn)行匹配,若一致則登錄成功,否則登錄失敗。驗證部分的主要實現(xiàn)代碼如下: publicStringdologin()throwsException{ Usertemuser=userService.getUserByNameOrPhone(user);//用戶輸入的用戶信息 if(temuser.getPassword().equals(user.getPassword())){//判斷密碼是否一致 ServletActionContext.getRequest().getSession().setAttribute("user",temuser);//獲取temuser對象放入session中 this.json=newByteArrayInputStream("success".getBytes("UTF-8"));//json的值為success }else{ this.json=newByteArrayInputStream("fail".getBytes("UTF-8"));//json的值為fail } return"ajaxjson";//通過ajax返回json的值 }5.1.3購物車模塊1)用戶購買功能在校園O2O超市系統(tǒng)中,購買方式與現(xiàn)實生活購買商品的方式很相似,主要是考慮現(xiàn)實用戶購買商品的習(xí)慣,用現(xiàn)實生活中的“購物車”的方式來模擬,用戶只要將所要購買的商品點擊加入購物車,則自動會加入購物車當(dāng)中,符合現(xiàn)實社會用戶購買商品的流程與習(xí)慣,方便用戶操作,無需接受新方式,簡潔方便。如圖5-3所示。圖5-3購物車圖加入購物車商品主要分為兩種,一種是原來購物車已經(jīng)存在的,還有一種原來購物車沒有的,若已經(jīng)存在的直接修改購物車對應(yīng)的數(shù)據(jù)庫中商品的數(shù)量,若沒有則需要添加到購物車對應(yīng)的數(shù)據(jù)庫中。購物車中商品數(shù)量變化的主要實現(xiàn)代碼: publicintaddCart(Cartcart){ //TODOAuto-generatedmethodstub CarttempCart=cartDao.getCartByGoodid(cart.getGoodid());//取goodid intresult=0; if(tempCart!=null){//判斷是否為空 tempCart.setSum(tempCart.getSum()+cart.getSum());//原來購物車?yán)锏纳唐窋?shù)量加上后來加入購物車的商品數(shù)量 result=cartDao.updataCart(tempCart);//修改購物車對應(yīng)數(shù)據(jù)庫 }else{ result=cartDao.addCartFull(cart);//否則直接添加到購物車中 } returnresult; }2)查看購物車當(dāng)用戶點擊完加入購物車后,怎么才能看到自己已經(jīng)加入購物車中的商品,則可以通過點擊系統(tǒng)頁面右上角的“我的購物車”,可以查看到用戶所加入購物車當(dāng)中的所有商品,如果用戶對所加入的購物車不想買了,可以刪除所不需要的商品;如果想改變商品的數(shù)量,可以在文本框中輸入想要商品數(shù)量的個數(shù),也可以點擊兩邊的加號和減號進(jìn)行更改數(shù)量,當(dāng)商品挑選結(jié)束后可以點擊“結(jié)算”可進(jìn)行確認(rèn)訂單。如圖5-4所示。圖5-4加入購物車商品列表圖刪除商品功能主要是考慮到用戶如果對購物車中的商品不想購買了或者不想在購物車中出現(xiàn),則單擊“刪除”,系統(tǒng)會彈出“確定刪除”彈框,點擊確認(rèn)就可刪除。對商品刪除操作,主要代碼實現(xiàn)如下: //刪除商品 publicStringdelcart()throwsException{ intresult=cartService.deleteCartById(cartId);//從數(shù)據(jù)庫中刪除,返回result,返回1表示刪除成功,0表示未成功 if(result>0){ this.json=newByteArrayInputStream("success".getBytes("UTF-8"));//通過json返回到頁面刪除成功 }else{ this.json=newByteArrayInputStream("fail".getBytes("UTF-8"));//通json返回到頁面刪除失敗 } return"ajaxjson"; }5.1.4訂單生成模塊當(dāng)用戶點擊結(jié)算后跳到的訂單生成頁面,用戶需要填寫自己的訂單信息,方便配送和聯(lián)系。用戶必須選擇收貨地址,也可以添加收貨地址;付款方式可以選擇貨到付款、微信支付、支付寶支付,當(dāng)鼠標(biāo)懸停到微信支付或者支付支付時,對應(yīng)的微信二維碼或者支付寶二維碼就會顯示在下方供用戶掃碼,用戶可以根據(jù)自己的選擇,選擇相應(yīng)的支付方式;最下面是所購買的商品信息。如圖5-5所示。圖5-5訂單生成圖如果用戶需要添加地址,則點擊新增地址出現(xiàn)彈框,彈框中填寫用戶的地址信息,主要有收件人的地址、收件人姓名、手機號;這些都不能為空,填寫時需通過驗證。如圖5-6所示。圖5-6新增收貨地址圖添加地址的主要實現(xiàn)代碼: publicStringaddAddress(){ Useruser=(User)ServletActionContext.getRequest().getSession().getAttribute("user");//獲取的是當(dāng)前用戶的信息 address.setUserid(user.getId());//設(shè)置uid intresult=addressService.addAddresss(address);//調(diào)用service的addAddresss方法,result為1添加成功,否則添加失敗 if(result>0){ SessionUtil.setAlert("添加成功"); }else{ SessionUtil.setAlert("添加失敗"); } actionurl="front_cartAction_confirmCart";//返回提交訂單頁 return"redirect"; }5.1.5我的訂單模塊當(dāng)用戶對自己已經(jīng)下單的商品需要查看時,就可在我的訂單中查看,在我的訂單中可以查看商品名稱、商品單價、數(shù)量、小計、交易狀態(tài)和操作。主要是交易狀態(tài)和操作,用戶可以根據(jù)交易狀態(tài)知道商品的配送情況,交易狀態(tài)主要分成了待收貨、待發(fā)貨和已完成。當(dāng)用戶下單完之后的狀態(tài)為待發(fā)貨;當(dāng)賣家點擊了發(fā)貨按鈕,則買家的狀態(tài)就變成了待收貨;當(dāng)買家收到商品時則就可點擊確認(rèn)訂單按鈕,則交易狀態(tài)就會變成已完成。如圖5-7所示。圖5-7我的訂單圖5.1.6訂單詳情模塊訂單詳情主要是為了讓用戶在對已購買商品的訂單中想詳細(xì)了解,則可點擊訂單詳情,了解所購商品名稱、商品數(shù)量、商品單價、商品小計和商品總價等商品的詳細(xì)信息。如圖5-8所示。圖5-8訂單詳情圖5.2后臺模塊5.2.1管理員管理管理員顧名是管理這個系統(tǒng)的,首先管理員需要登錄才能進(jìn)入后臺管理,才能對系統(tǒng)進(jìn)行管理與維護(hù)本網(wǎng)站。本系統(tǒng)只有一個管理員——賣家。管理員通過登錄驗證,保證了本網(wǎng)站數(shù)據(jù)的安全和隱私。管理員的信息在用戶表里面已經(jīng)設(shè)置好了;管理員控制數(shù)據(jù)庫中的每張表,每張表的字段與管理員的操作是息息相關(guān)的,可以對每張表進(jìn)行增加、刪除和修改。由于訂單是有前臺的用戶購買商品是生成的,所以對訂單管理不可以進(jìn)行刪除和修改。后臺管理員登錄如圖5-9所示。圖5-9管理員登錄5.2.2前臺商品發(fā)布前臺商品的展示都是通過后臺發(fā)布商品才能展示的,通過輸入商品的名稱、價格、庫存和上傳商品的圖片,后臺每添加一個商品則前臺就會對應(yīng)的區(qū)域顯示該商品。如圖5-10所示。圖5-10發(fā)布商品圖在發(fā)布商品時,用戶要了解商品首先是看圖片,所以后臺在上傳圖片的時候?qū)D片格式進(jìn)行了限制,防止惡意上傳,主要格式有:gif、jpg、png。驗證上傳圖片格式主要實現(xiàn)代碼: functionvalidateForm(frmUpload){//檢查是否提交了上傳文件否彈出提示不需要這一功能的刪除即可 if(document.all.uploadFile.value=="")//判斷文件是否為空 { alert("沒有選擇上傳的文件!");//提示選擇上傳文件 frmUpload.uploadFile.focus(); returnfalse; }//截取提交上傳文件的擴展名 varext=frmUpload.uploadFile.value.match(/^(.*)(\.)(.{1,8})$/)[3]; ext=ext.toLowerCase();//設(shè)置允許上傳文件的擴展名 if(ext=="jpg"||ext=="gif"||ext=="png"){ //判斷文件格式(JPG、GIF、PNG) returntrue; }else{ alert("只允許上傳.jpg或gif或png文件,請重新選擇需要上傳的文件!");//否則提示文件上傳格式 returnfalse; } }5.2.3商品管理商品管理主要是對前臺商品進(jìn)行管理,主要是對商品的刪除操作,管理網(wǎng)站者可以通過刪除已經(jīng)下架的商品或者庫存不足的商品,每刪除一個商品,前臺頁面中就會對應(yīng)的刪除該商品的信息,同步數(shù)據(jù)中也對應(yīng)將商品的所有字段信息刪除,從而實時更新商品。如圖5-11所示。圖5-11商品管理圖5.2.4訂單管理訂單主要是對前臺用戶所購買的商品能夠準(zhǔn)確及時通知商品的發(fā)貨情況。主要是對購買商品訂單進(jìn)行操作,比如:前臺用戶購買了商品,后臺管理可以對商品進(jìn)行發(fā)貨操作,此時前臺用戶的訂單狀態(tài)也改變了,表示商品已經(jīng)發(fā)貨了,就能很快跟蹤商品,方便買家和賣家及時跟蹤商品,訂單管理圖如圖所示5-12。圖5-12訂單管理圖5.3本章小結(jié)本章主要介紹了校園O2O超市系統(tǒng)前臺與后臺的所有模塊,各個界面的實現(xiàn)功能。主要對前臺模塊和后臺模塊分別做了詳細(xì)的功能實現(xiàn)及核心代碼解釋,說明了每個模塊的功能和作用。第6章系統(tǒng)測試對本系統(tǒng)做了一個簡單而又全面的測試,校園O2O超市系統(tǒng)采用的是B/S模式,主要是從四個重要方面的進(jìn)行測試,測試用例如下:web表單測試瀏覽器兼容測試手機訪問系統(tǒng)測試系統(tǒng)整體功能測試6.1WEB表單測試WEB表單測試主要是對form表單的驗證,驗證表單填寫格式與填寫的數(shù)據(jù)的字段類型,判斷是否正確。表6-1WEB表單測試測試類型WEB表單測試測試目的驗證表單測試策略(1)測試表單頁面填寫格式是否正確(2)測試表單中數(shù)據(jù)類型是否正確測試結(jié)果正常6.2瀏覽器兼容測試瀏覽器兼容性測試主要是不同的瀏覽器內(nèi)核對網(wǎng)頁編寫語法的解釋不同。主要是通過三種主流而又內(nèi)核不同的瀏覽谷歌、火狐、IE瀏覽器。從這三個方面進(jìn)行測試。表6-2瀏覽器兼容測試測試類型瀏覽器兼容測試測試目的不同的瀏覽器內(nèi)核對網(wǎng)頁編寫語法的解釋不同測試策略IE內(nèi)核:IE8非IE內(nèi)核:Firefox,Chrome測試結(jié)果正常6.3手機訪問系統(tǒng)測試通過不同的手機訪問該系統(tǒng)主要是不同的手機的屏幕大小、內(nèi)核不同,主要是通過按安卓手機、蘋果手機、不同屏幕大小的手機測試。表6-3手機訪問系統(tǒng)測試測試類型瀏覽器兼容測試測試目的不同的手機的屏幕大小、內(nèi)核不同測試策略蘋果:iphone5;iphone6安卓:vivoX6;oppoR9測試結(jié)果正常6.4系統(tǒng)功能測試功能測試主要是對系統(tǒng)進(jìn)行一個全面的測試,檢測功能是否存在尚未實現(xiàn)的以及報錯界面404或者500錯誤等。表6-4系統(tǒng)功能測試測試類型系統(tǒng)功能測試測試目的測試系統(tǒng)的所有功能中是否存在bug測試策略1)測試用戶的注冊、登錄;管理員登錄;2)首頁模塊商品展示樣式測試;3)商品分類模塊測試;點擊不同的分類商品不同測試4)購物車模塊測試;首頁加入購物車測試;詳情頁加入購物車測試;5)商品詳情模塊參數(shù)測試;6)我的購物車模塊測試;檢測商品加入是否正確;7)訂單生成模塊測試;8)地址增刪測試;9)我的訂單測試;10)發(fā)布商品表單測試;上傳圖片格式測試;11)商品管理列表測試;12)訂單管理測試;測試結(jié)果正常6.5本章小結(jié)本章主要是分別從過web表單測試、瀏覽器兼容、手機訪問測試和功能測試等幾個重要的方面進(jìn)行了測試,在測試過程中可能還存在一些小的問題,無任何大問題,測試結(jié)果正常。第7章總結(jié)與展望本文詳細(xì)描述了校園O2O超市系統(tǒng)設(shè)計和實現(xiàn)的全過程。通過已有的研究和分析,已經(jīng)基本完成了所有功能。該平臺web界面簡潔,操作簡單,使用方便。該系統(tǒng)主要分前臺和后臺兩部分,前臺主要實現(xiàn)了用戶的注冊登錄,商品瀏覽,商品分類,商品詳情,用戶購物車,用戶訂單,訂單詳情;后臺主要實現(xiàn)了管理員

溫馨提示

  • 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

提交評論