黃妍,朱信忠,趙建民,徐慧英
?
基于SSH2框架的電子商務(wù)平臺(tái)倉(cāng)儲(chǔ)管理子系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
黃妍,朱信忠,趙建民,徐慧英
摘 要:對(duì)電子商務(wù)平臺(tái)倉(cāng)儲(chǔ)管理子系統(tǒng)的現(xiàn)狀及問(wèn)題進(jìn)行分析研究,提出了開發(fā)該子系統(tǒng)的重要性。采用B/S模式,結(jié)合J2EE開發(fā)環(huán)境,整合Struts2、Spring、Hibernate 3種框架進(jìn)行系統(tǒng)搭建,利用MySQL數(shù)據(jù)庫(kù)技術(shù),共同開發(fā)設(shè)計(jì)實(shí)現(xiàn)電子商務(wù)平臺(tái)倉(cāng)儲(chǔ)管理子系統(tǒng)。該系統(tǒng)可以實(shí)現(xiàn)產(chǎn)品的入庫(kù)、出庫(kù)、調(diào)貨、盤點(diǎn)等功能,提升企業(yè)倉(cāng)儲(chǔ)管理效率。
關(guān)鍵詞:電子商務(wù);倉(cāng)儲(chǔ)系統(tǒng);SSH2
如今許多電子商務(wù)企業(yè)意識(shí)到倉(cāng)儲(chǔ)管理子系統(tǒng)對(duì)于電子商務(wù)平臺(tái)運(yùn)作的重要性①。但目前企業(yè)對(duì)于該子系統(tǒng)的認(rèn)知還是淺薄的,大多停留在人工管理層面上的,例如,供應(yīng)商的倉(cāng)儲(chǔ)申請(qǐng)是否可以被快速處理,并且快速得到回應(yīng);分銷商在產(chǎn)品錄入后從分銷授權(quán)到分銷平臺(tái)所要等待的響應(yīng)時(shí)長(zhǎng)等。目前雖然當(dāng)前有較多的倉(cāng)儲(chǔ)系統(tǒng),但這些倉(cāng)儲(chǔ)系統(tǒng)沒(méi)有與電子商務(wù)平臺(tái)結(jié)合起來(lái),沒(méi)有作為一個(gè)子系統(tǒng)對(duì)倉(cāng)儲(chǔ)進(jìn)行全面管理,而僅僅是產(chǎn)品交易之后,產(chǎn)品出入倉(cāng)庫(kù)業(yè)務(wù)的管理系統(tǒng)。倉(cāng)儲(chǔ)管理子系統(tǒng)可以完成存儲(chǔ)、打單、揀貨、驗(yàn)貨、稱重、入庫(kù)、出庫(kù)、質(zhì)檢等業(yè)務(wù),可以提高電子商務(wù)平臺(tái)倉(cāng)儲(chǔ)的運(yùn)作效率,可見(jiàn)倉(cāng)儲(chǔ)管理子系統(tǒng)是電子商務(wù)平臺(tái)的一個(gè)重要環(huán)節(jié)。
電子商務(wù)平臺(tái)倉(cāng)儲(chǔ)管理子系統(tǒng)的操作由不同角色的用戶來(lái)執(zhí)行,本系統(tǒng)的用戶角色為倉(cāng)庫(kù)管理員、供應(yīng)商和分銷商。不同的用戶角色在業(yè)務(wù)操作方面并不相同。其中倉(cāng)庫(kù)管理員主要完成倉(cāng)庫(kù)信息管理,其中包含產(chǎn)品出入庫(kù)管理等;供應(yīng)商主要完成產(chǎn)品上架信息管理、分銷授權(quán)信息管理以及產(chǎn)品的采購(gòu)、補(bǔ)貨、調(diào)撥信息管理等;分銷商則完成產(chǎn)品鋪貨信息管理、產(chǎn)品分銷訂單信息管理以及售后信息管理等。
根據(jù)企業(yè)的實(shí)際調(diào)研,將倉(cāng)儲(chǔ)管理子系統(tǒng)的需求分析整合,分為以下幾個(gè)階段。
(1)角色提出倉(cāng)儲(chǔ)管理申請(qǐng)業(yè)務(wù)流程
不同角色提出倉(cāng)儲(chǔ)管理申請(qǐng),此時(shí)需要由供應(yīng)商提供所需的產(chǎn)品;提供貨物進(jìn)入倉(cāng)庫(kù)前,需得到倉(cāng)庫(kù)管理員的審核;審核通過(guò)后,倉(cāng)庫(kù)管理員對(duì)其進(jìn)行庫(kù)房指派。
(2)新產(chǎn)品分銷倉(cāng)儲(chǔ)業(yè)務(wù)流程
供應(yīng)商提供一批新產(chǎn)品進(jìn)行銷售。首先倉(cāng)庫(kù)管理員將新產(chǎn)品錄入系統(tǒng),其次供應(yīng)商對(duì)分銷產(chǎn)品進(jìn)行分銷授權(quán),將該產(chǎn)品銷售權(quán)利分配給分銷商;接著倉(cāng)庫(kù)管理員對(duì)這些產(chǎn)品進(jìn)行打單、揀貨等倉(cāng)庫(kù)處理,最后出庫(kù)。
(3)已有產(chǎn)品倉(cāng)儲(chǔ)業(yè)務(wù)流程
供應(yīng)商對(duì)已有產(chǎn)品進(jìn)行采購(gòu)、補(bǔ)貨、調(diào)撥,對(duì)產(chǎn)品進(jìn)行入庫(kù)操作。倉(cāng)庫(kù)管理員登入系統(tǒng),進(jìn)行產(chǎn)品入庫(kù)操作。除去已經(jīng)操作過(guò)的分銷授權(quán),同新產(chǎn)品分銷倉(cāng)儲(chǔ)業(yè)務(wù)流程一樣,對(duì)入庫(kù)產(chǎn)品進(jìn)行處理。
(4)產(chǎn)品售后倉(cāng)儲(chǔ)業(yè)務(wù)流程
少部分的產(chǎn)品由于質(zhì)量問(wèn)題、顧客心態(tài)問(wèn)題等原因被延遲收貨,這期間顧客會(huì)找客服對(duì)產(chǎn)品問(wèn)題進(jìn)行交談,這個(gè)過(guò)程就是產(chǎn)品出庫(kù)后可能會(huì)遇到的下一個(gè)流程—售后。顧客與客服進(jìn)行交流后,會(huì)進(jìn)行退款或退貨等處理方式,這里討論的售后倉(cāng)儲(chǔ)業(yè)務(wù)流程是針對(duì)產(chǎn)品退貨的業(yè)務(wù)流程。顧客退貨后,要進(jìn)行收貨、質(zhì)檢、入庫(kù)的倉(cāng)庫(kù)處理流程,以確保退回的產(chǎn)品可以進(jìn)行二次銷售或報(bào)廢,售后倉(cāng)儲(chǔ)業(yè)務(wù)流程的最后,也是整個(gè)倉(cāng)儲(chǔ)管理子系統(tǒng)業(yè)務(wù)流程的最后,是進(jìn)行費(fèi)用結(jié)算。
綜上所述,本系統(tǒng)最為重要的環(huán)節(jié)為產(chǎn)品的出入庫(kù)處理,這里給出的電子商務(wù)平臺(tái)倉(cāng)儲(chǔ)管理子系統(tǒng)出入庫(kù)業(yè)務(wù)流程圖如圖1所示:

圖1 倉(cāng)儲(chǔ)管理子系統(tǒng)出入庫(kù)業(yè)務(wù)流程圖
2.1 倉(cāng)儲(chǔ)管理子系統(tǒng)架構(gòu)設(shè)計(jì)
SSH2框架是典型的3層架構(gòu),分為界面層、業(yè)務(wù)層與數(shù)據(jù)層②。SSH2框架與3層架構(gòu)的不同之處在于SSH2的每一層都是獨(dú)立的框架。根據(jù)上一節(jié)的需求分析,系統(tǒng)架構(gòu)圖如圖2所示:

圖2 倉(cāng)儲(chǔ)管理子系統(tǒng)系統(tǒng)架構(gòu)圖
2.2 倉(cāng)儲(chǔ)管理子系統(tǒng)功能模塊設(shè)計(jì)
本文所研究并設(shè)計(jì)的電子商務(wù)倉(cāng)儲(chǔ)系統(tǒng)是典型電子商務(wù)平臺(tái)的一個(gè)子系統(tǒng),該子系統(tǒng)主要完成的工作包括有庫(kù)位調(diào)貨、庫(kù)房設(shè)置、庫(kù)位管理、庫(kù)存盤點(diǎn)、庫(kù)位查詢、入庫(kù)管理、出庫(kù)管理、庫(kù)位產(chǎn)品管理等關(guān)鍵性工作,這些工作是作為電子商務(wù)平臺(tái)的基礎(chǔ)性工作存在的,也是電子商務(wù)平臺(tái)不可或缺的部分。由此可以得出電子商務(wù)倉(cāng)儲(chǔ)系統(tǒng)的基本需求,如圖3所示:

圖3 倉(cāng)儲(chǔ)管理子系統(tǒng)功能模塊圖
(1)庫(kù)存查詢需求,重點(diǎn)需要實(shí)現(xiàn)對(duì)電子商務(wù)倉(cāng)儲(chǔ)系統(tǒng)產(chǎn)品的產(chǎn)品名稱、條形碼、規(guī)格、庫(kù)存總數(shù)量、sku等系統(tǒng)基礎(chǔ)性查詢功能。
(2)庫(kù)位調(diào)貨需求,通過(guò)sku或條形碼查找需要調(diào)貨的產(chǎn)品,將其轉(zhuǎn)移到指定的庫(kù)位,實(shí)現(xiàn)產(chǎn)品的預(yù)轉(zhuǎn)移功能。
(3)庫(kù)位管理需求,該項(xiàng)需求主要實(shí)現(xiàn)產(chǎn)品對(duì)應(yīng)的庫(kù)位信息的管理,包括產(chǎn)品的庫(kù)位編碼、庫(kù)位名稱、所屬倉(cāng)庫(kù)、庫(kù)位類型等信息。
(4)庫(kù)存盤點(diǎn)需求,產(chǎn)品庫(kù)存和倉(cāng)庫(kù)人工盤點(diǎn)的實(shí)際庫(kù)存有不一致時(shí),或出現(xiàn)產(chǎn)品理論庫(kù)存小于0或者實(shí)際庫(kù)存小于理論庫(kù)存的情況,需要進(jìn)行庫(kù)存盤點(diǎn),該項(xiàng)需求主要實(shí)現(xiàn)校正倉(cāng)庫(kù)內(nèi)產(chǎn)品庫(kù)存數(shù)量的功能。
(5)庫(kù)位查詢需求,該項(xiàng)需求主要實(shí)現(xiàn)庫(kù)位詳細(xì)信息記錄,通過(guò)產(chǎn)品條形碼及其它信息查詢對(duì)應(yīng)該產(chǎn)品的庫(kù)位編碼、庫(kù)位名、庫(kù)位類型等庫(kù)位信息。
(6)入庫(kù)管理需求,該項(xiàng)需求主要實(shí)現(xiàn)電子商務(wù)倉(cāng)儲(chǔ)子系統(tǒng)中的入庫(kù)信息進(jìn)行管理,包括入庫(kù)單號(hào),入庫(kù)類型、入庫(kù)日期、入庫(kù)操作人和來(lái)源單號(hào)等。
(7)出庫(kù)管理需求,該項(xiàng)需求主要實(shí)現(xiàn)管理出庫(kù)信息的功能,出庫(kù)單包括出庫(kù)單號(hào)、出庫(kù)類型、出庫(kù)狀態(tài)、出庫(kù)操作人等信息。
(8)庫(kù)存調(diào)撥需求,該項(xiàng)需求主要為了滿足調(diào)撥單號(hào)、狀態(tài)、是否作廢、申請(qǐng)時(shí)間、申請(qǐng)人、轉(zhuǎn)出時(shí)間、轉(zhuǎn)出確認(rèn)人等調(diào)撥信息,以管理調(diào)撥產(chǎn)品的庫(kù)位和產(chǎn)品的對(duì)應(yīng)關(guān)系。
(9)掃碼盤點(diǎn)處理需求,該項(xiàng)需求主要為了滿足不同盤點(diǎn)批次的處理,盤點(diǎn)倉(cāng)儲(chǔ)管理的盈虧。
(10)庫(kù)位產(chǎn)品管理需求,該項(xiàng)需求主要為了滿足操作庫(kù)位及庫(kù)位產(chǎn)品的對(duì)應(yīng)關(guān)系的功能,包括庫(kù)位編碼、存放產(chǎn)品等信息。
(11)過(guò)渡庫(kù)位庫(kù)存查詢需求,該項(xiàng)需求為滿足臨時(shí)庫(kù)位及緩沖區(qū)域時(shí),展現(xiàn)某產(chǎn)品對(duì)應(yīng)的產(chǎn)品名稱、條形碼、sku、規(guī)格、庫(kù)存、庫(kù)位等全部信息。
2.3 數(shù)據(jù)庫(kù)設(shè)計(jì)
電子商務(wù)倉(cāng)儲(chǔ)系統(tǒng)使用MySQL數(shù)據(jù)庫(kù)。在MySQL中,通過(guò)創(chuàng)建數(shù)據(jù)庫(kù)Ebu的數(shù)據(jù)庫(kù)作為本系統(tǒng)核心數(shù)據(jù)庫(kù)。由前文的功能模塊分析,并在數(shù)據(jù)庫(kù)中規(guī)劃之后,確定了本系統(tǒng)需要設(shè)計(jì)的數(shù)據(jù)庫(kù)表共有以下10個(gè)表:管理員表System、用戶信息表User、產(chǎn)品信息表Product、訂單信息表Orders、入庫(kù)信息表Rkinform、出庫(kù)信息表Ckinform、庫(kù)存信息表Kcinform、產(chǎn)品分類表Type、產(chǎn)品狀態(tài)表Ztinform、營(yíng)銷信息表Yxinform。
系統(tǒng)中每一個(gè)Product都包含Id、產(chǎn)品編碼Code、產(chǎn)品名稱Name、產(chǎn)品描述Description、所屬分類Category_id、所屬組織Organization_id、市場(chǎng)價(jià)Market_price、零售價(jià)Retail_price等字段。其中Id為Product表的主鍵,一個(gè)Product對(duì)應(yīng)一個(gè)Id,系統(tǒng)中不能有重復(fù)Id的Product,這樣就確保了每一個(gè)Product都不是重復(fù)的。
3.1 SSH2框架的整合
電子商務(wù)平臺(tái)倉(cāng)儲(chǔ)管理子系統(tǒng)是基于SSH2框架環(huán)境的,因此在實(shí)現(xiàn)系統(tǒng)之前需要先將Struts2框架、Spring框架以及Hibernate框架進(jìn)行適度整合[3],從而創(chuàng)建可開發(fā)的項(xiàng)目環(huán)境。在這個(gè)過(guò)程中,3個(gè)框架所完成的工作各有側(cè)重,Struts2主要進(jìn)行數(shù)據(jù)處理以及與J2EE的交互,Hibernate管理數(shù)據(jù)庫(kù),Spring重點(diǎn)執(zhí)行對(duì)前面2個(gè)框架的管理工作。
通過(guò)新建電子商務(wù)倉(cāng)儲(chǔ)系統(tǒng)的WEB工程,分別導(dǎo)入Struts2、Spring以及Hibernate框架的JAR包[4],之后進(jìn)行web.xml文件、struts.xml文件、applicationContext.xml文件的配置,完成SSH2框架的整合。
3.2 系統(tǒng)架構(gòu)的基本實(shí)現(xiàn)
本系統(tǒng)以SSH2框架與J2EE共同實(shí)現(xiàn),分為4層架構(gòu),分別為視圖層、控制層、邏輯層與持久層。在具體實(shí)現(xiàn)時(shí)JSP頁(yè)面承擔(dān)著視圖層的重任,利用Struts2框架完成的表單輸出輸入,結(jié)合JSP頁(yè)面的特點(diǎn),本系統(tǒng)實(shí)現(xiàn)了統(tǒng)一的頁(yè)面風(fēng)格、驗(yàn)證錯(cuò)誤的友好提示、表單日期輸入的標(biāo)準(zhǔn)形式、以及所有查詢信息的統(tǒng)一格式。本系統(tǒng)的控制層實(shí)現(xiàn)了系統(tǒng)各個(gè)環(huán)節(jié)的信息流轉(zhuǎn),用戶所提交的任何請(qǐng)求都會(huì)經(jīng)過(guò)Struts2的攔截器,該攔截器會(huì)按照前文配置文件中的匹配程度進(jìn)行信息解析并成功進(jìn)行目標(biāo)跳轉(zhuǎn),整個(gè)處理過(guò)程是由多個(gè)Action的創(chuàng)建來(lái)控制的。邏輯層以邏輯的方式進(jìn)行業(yè)務(wù)流轉(zhuǎn)和處理,本系統(tǒng)的實(shí)現(xiàn)方式是在applicationContext.xml配置文件中聲明一個(gè)完全與struts.xml相同名稱的Action類。持久層是一個(gè)交互的節(jié)點(diǎn),自然由Hibernate來(lái)承擔(dān),將本系統(tǒng)數(shù)據(jù)庫(kù)中的數(shù)據(jù)表進(jìn)行映射,產(chǎn)生持久化對(duì)象的映射表。
3.3 系統(tǒng)JSP頁(yè)面的基本實(shí)現(xiàn)
本系統(tǒng)所實(shí)現(xiàn)的JSP頁(yè)面是用戶與數(shù)據(jù)庫(kù)交互的接口,但它并不進(jìn)行數(shù)據(jù)的直接操作。在JSP頁(yè)面中,對(duì)整個(gè)頁(yè)面的定義通常使用page指令來(lái)完成,重點(diǎn)對(duì)頁(yè)面的核心屬性和對(duì)應(yīng)的值進(jìn)行定義,此次使用了相同定義屬性語(yǔ)句:<%@page language=”java” pageEnocoding=”UTF-8”%>。JSP頁(yè)面以收集客戶端的數(shù)據(jù)以及顯示服務(wù)器端反饋的數(shù)據(jù)為主,并結(jié)合Action來(lái)實(shí)現(xiàn)信息數(shù)據(jù)傳遞。
3.4 倉(cāng)儲(chǔ)管理子系統(tǒng)入庫(kù)管理模塊的實(shí)現(xiàn)
產(chǎn)品在執(zhí)行完采購(gòu)及到貨之后,會(huì)進(jìn)入到倉(cāng)儲(chǔ)入庫(kù)的環(huán)節(jié)。在本系統(tǒng)中,倉(cāng)庫(kù)管理員可以通過(guò)系統(tǒng)進(jìn)行商品的入庫(kù)、出庫(kù)及庫(kù)存狀態(tài)的查詢,從而與后續(xù)的進(jìn)貨、補(bǔ)貨、再次采購(gòu)等環(huán)節(jié)產(chǎn)生關(guān)聯(lián),同時(shí)倉(cāng)庫(kù)管理員能夠及時(shí)了解到更多的商品狀態(tài)信息。并且,借助倉(cāng)儲(chǔ)管理子系統(tǒng),倉(cāng)庫(kù)管理者也能夠?qū)Σ煌悇e的商品按照不同類別、型號(hào)、價(jià)格范圍等參數(shù)進(jìn)行分類和調(diào)整。
本文2.2節(jié)分析,倉(cāng)儲(chǔ)管理子系統(tǒng)的實(shí)現(xiàn)包括庫(kù)位調(diào)貨、庫(kù)房設(shè)置、庫(kù)位管理、庫(kù)存盤點(diǎn)、庫(kù)位查詢、入庫(kù)管理、出庫(kù)管理、庫(kù)存調(diào)撥單、掃碼盤點(diǎn)處理、庫(kù)位產(chǎn)品管理和過(guò)渡庫(kù)存庫(kù)位查詢子模塊。倉(cāng)儲(chǔ)管理子系統(tǒng)最重要的部分就是產(chǎn)品的出入庫(kù)管理,在這里主要給出入庫(kù)管理模塊的實(shí)現(xiàn)[5]。
登錄系統(tǒng),入庫(kù)管理模塊界面圖如圖4所示:

圖4 入庫(kù)管理模塊界面圖
在圖4中,可以完成特定入庫(kù)單的查詢及明細(xì)顯示,入庫(kù)單明細(xì)修改,添加入庫(kù)單,掃碼入庫(kù)以及確認(rèn)入庫(kù)單的功能。其中確認(rèn)功能是在查詢、修改及添加功能后進(jìn)行確認(rèn)的功能,保證所有對(duì)入庫(kù)單執(zhí)行的操作都得到了確認(rèn)。
(1)查詢?nèi)霂?kù)單及其明細(xì)
在查詢條件中填寫相關(guān)的入庫(kù)類型、所屬倉(cāng)庫(kù)、入庫(kù)單號(hào)等信息查詢特定的入庫(kù)單;選中特定入庫(kù)單,可以顯示該入庫(kù)單的入庫(kù)單號(hào)、入庫(kù)類型、所屬倉(cāng)庫(kù)、入庫(kù)日期等明細(xì)。
(2)修改入庫(kù)單明細(xì)
選中未被最終確認(rèn)的特定入庫(kù)單,可以對(duì)其明細(xì)進(jìn)行修改。
(3)添加入庫(kù)單及掃碼入庫(kù)
直接添加一張入庫(kù)單,并填寫完整的明細(xì);也可以掃描箱碼信息得到具體明細(xì)組成新的入庫(kù)單。
本文分析了倉(cāng)儲(chǔ)管理子系統(tǒng)對(duì)于電子商務(wù)平臺(tái)的重要性。首先對(duì)倉(cāng)儲(chǔ)管理子系統(tǒng)進(jìn)行需求分析,其次根據(jù)需求分析給出系統(tǒng)架構(gòu)圖與功能模塊圖,最后實(shí)現(xiàn)了一款基于SSH2框架的電子商務(wù)平臺(tái)倉(cāng)儲(chǔ)管理子系統(tǒng)。
參考文獻(xiàn)
[1] 董慧,王海洋,謝靜. B2C電子商務(wù)網(wǎng)站設(shè)計(jì)[J].計(jì)算機(jī)與現(xiàn)代化,2014(11),15-19
[2] 師溫馨.基于SSH框架的電子商務(wù)購(gòu)物網(wǎng)站的研究與設(shè)計(jì)[J]. 廈門:電子測(cè)試,2014(4),10-12
[3] 陳俟伶,張紅實(shí). SSH框架項(xiàng)目教程[M].北京: 水利水電出版社出版社,2013
[4] 邢素萍.電子商務(wù)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)的研究[J]. 微型電腦應(yīng)用,2013(11),55-59
[5] Chen Xianglian, Lin Hua. Research on E-Commerce Logistics System Informationization in Chain[J].USA: Procedia - Social and Behavioral Sciences, 2013,838-843
Design and Implementation of Storage Management Subsystem of E-Commerce Platform Based on SSH2 Framework
Huang Yan, Zhu Xinzhong, Zhao Jianmin, Xu Huiying
(College of Mathematics, Physics and Information Engineering, Zhejiang Normal University, Jinhua 321004, China)
Abstract:This paper analyzes the present situation and problems of the storage management subsystem of E-Commerce platform, and puts forward the importance of the development of the subsystem. The system is based on B/S structure, combined with the J2EE development environment, and integrated Struts2, Spring, Hibernate three framework. By using MySQL database, implement and design a storage management subsystem of E-Commerce platform. The system can achieve product storage, delivery, transfer, inventory and other functions, and it improves the efficiency of enterprise storage management.
Key words:E-Commerce; Storage System; SSH2
收稿日期:(2015.04.27)
作者簡(jiǎn)介:黃 妍(1990-),女,杭州,浙江師范大學(xué),數(shù)理與信息工程學(xué)院,碩士研究生,研究方向:軟件工程,杭州,312004朱信忠(1975-),男,沛縣,浙江師范大學(xué),數(shù)理與信息工程學(xué)院,教授,碩士,研究方向:工業(yè)4.0,智能制造,云計(jì)算,金華,321004趙建民(1954-),男,上海,浙江師范大學(xué),數(shù)理與信息工程學(xué)院,教授,碩士,研究方向:制造業(yè)信息化,人工智能,模式識(shí)別,金華,321004徐慧英(1977-),女,金華,浙江師范大學(xué),數(shù)理與信息工程學(xué)院,副教授,碩士,研究方向:電子商務(wù),智慧物流,金華,321004
文章編號(hào):1007-757X(2016)02-0054-03
中圖分類號(hào):TP311
文獻(xiàn)標(biāo)志碼:A