張 琦
(哈爾濱鐵路局 信息技術(shù)所,哈爾濱 150006)
哈爾濱鐵路局通過開展深度市場調(diào)查,發(fā)現(xiàn)管內(nèi)32個主要電廠普遍存在庫存積壓大,資金占用多的問題。為此,鐵路局組織相關(guān)部門積極到管內(nèi)電廠及煤炭企業(yè)進(jìn)行調(diào)研工作,研究制定切實有效的方案,讓客戶看到更大利潤空間,從而達(dá)到鐵路局與客戶雙贏的目標(biāo)。
經(jīng)過鐵路局業(yè)務(wù)部門與信息技術(shù)所的研究,制定了“準(zhǔn)時制”運(yùn)輸方案。準(zhǔn)時制基本思路是企業(yè)盡量減少儲備原材料,一旦發(fā)現(xiàn)庫存不足立即由供應(yīng)商委托第三方物流企業(yè)保質(zhì)保量按時送達(dá),從而降低生產(chǎn)成本,增加企業(yè)利潤。為了更好地實現(xiàn)這個目標(biāo),哈爾濱鐵路局信息技術(shù)所設(shè)計開發(fā)了電廠準(zhǔn)時制服務(wù)系統(tǒng)。
由于企業(yè)用戶無法使用鐵路辦公信息網(wǎng),所以必須建設(shè)互聯(lián)網(wǎng)系統(tǒng)為客戶提供信息服務(wù),同時還要滿足客戶的使用體驗度。
由于月計劃制定的方案時間跨度過長,時效性低。旬計劃是基于月計劃制定的,根據(jù)貨源、貨流、車流的變化及運(yùn)用車分布情況可以進(jìn)行相應(yīng)調(diào)整;使用旬計劃可以減少因貨源因素導(dǎo)致的運(yùn)力資源浪費(fèi)或經(jīng)濟(jì)損失。
本系統(tǒng)的主要用戶是電廠與煤炭企業(yè);因為企業(yè)性質(zhì)不同,對應(yīng)的庫存管理模式也不盡相同,所以必須按照企業(yè)業(yè)務(wù)需求制定相應(yīng)的庫存管理方案。
客戶需要的鐵路運(yùn)輸信息分散在各個生產(chǎn)系統(tǒng)中,需要整合現(xiàn)車系統(tǒng)、貨運(yùn)調(diào)度系統(tǒng)及貨運(yùn)計劃系統(tǒng)等相關(guān)數(shù)據(jù),建立獨(dú)立的數(shù)據(jù)倉庫,更多地挖掘客戶的可用信息。
由于電廠準(zhǔn)時制服務(wù)系統(tǒng)需要面向互聯(lián)網(wǎng)用戶提供信息服務(wù),鑒于網(wǎng)絡(luò)及信息安全考慮,本系統(tǒng)使用鐵路總公司信息中心部署的鐵路計算機(jī)網(wǎng)絡(luò)完全平臺(簡稱:安全平臺)來完善數(shù)據(jù)傳輸及安全互訪的業(yè)務(wù)需求;安全平臺由網(wǎng)絡(luò)系統(tǒng)、訪問控制系統(tǒng)、證書管理系統(tǒng)及日志審計系統(tǒng)等組成。其中,訪問控制系統(tǒng)是實現(xiàn)本系統(tǒng)安全訪問的基礎(chǔ),它在物理隔離的內(nèi)、外網(wǎng)之間建立安全的數(shù)據(jù)傳輸通道,確保內(nèi)部數(shù)據(jù)安全訪問。
本系統(tǒng)應(yīng)用程序采用B/S三層架構(gòu),將系統(tǒng)劃分為表現(xiàn)層、業(yè)務(wù)邏輯層與數(shù)據(jù)訪問層。根據(jù)業(yè)務(wù)邏輯與性能要求,本系統(tǒng)使用一臺IBM 3850 服務(wù)器對外提供服務(wù),Radware負(fù)載均衡器進(jìn)行請求資源負(fù)載,數(shù)據(jù)庫使用小型機(jī)進(jìn)行承載。其中應(yīng)用服務(wù)器采用虛擬化設(shè)計,程序部署于Tomcat中間件服務(wù)程序上。具體系統(tǒng)架構(gòu)如圖1所示。
本系統(tǒng)使用Blaze-DS框架設(shè)計,前臺采用Flex富客戶端開發(fā)技術(shù),后臺采用J2EE企業(yè)級應(yīng)用框架進(jìn)行業(yè)務(wù)邏輯與持久層開發(fā),數(shù)據(jù)存儲采用Oracle數(shù)據(jù)庫,程序后臺采用MVC(Model View Controller, 模型-視圖-控制器)設(shè)計模式。
系統(tǒng)前臺Flex富客戶端程序采用Flash Builder 4.5開發(fā)工具編碼,后臺Java web程序采用Myeclipse 2014作為集成開發(fā)環(huán)境,F(xiàn)lash Builder 4.5與Myeclipse企業(yè)級開發(fā)平臺均是基于Eclipse IDE的擴(kuò)展產(chǎn)品,F(xiàn)lash Builder 4.5可以更快速地構(gòu)建、測試和優(yōu)化Flex框架應(yīng)用程序,設(shè)計用戶界面及組件布局,Myeclipse可以在數(shù)據(jù)庫與J2EE開發(fā)、發(fā)布、應(yīng)用程序的整合等方面提高工作效率。
電廠準(zhǔn)時制服務(wù)系統(tǒng)包括系統(tǒng)注冊、系統(tǒng)登錄、綜合查詢、旬計劃管理、煤炭企業(yè)庫存管理、電廠庫存管理、信息發(fā)布管理及用戶管理等模塊,具體功能模塊如圖2所示。
初次使用本系統(tǒng)的客戶需要先進(jìn)行系統(tǒng)注冊操作,注冊過程中需要同意遵循本系統(tǒng)的客戶服務(wù)協(xié)議,同時提供用戶名、登錄密碼、單位名稱、聯(lián)系電話及傳真等信息;待鐵路局管理員對其身份核實確認(rèn)后即可通過注冊信息登錄本系統(tǒng)。
用戶輸入用戶名、密碼及驗證碼登錄系統(tǒng),獲得相應(yīng)角色的信息服務(wù)。
4.3.1 運(yùn)貨五查詢
根據(jù)裝車日期、發(fā)到站、收發(fā)貨人等條件查詢客戶的訂車受理信息,其中電廠用戶僅可以查詢收貨人是本企業(yè)的訂車受理信息,煤炭企業(yè)用戶僅可以查詢發(fā)貨人是本企業(yè)的訂車受理信息。系統(tǒng)功能顯示圖如圖3所示。
4.3.2 貨物追蹤
通過預(yù)約號、貨票號及車號進(jìn)行追蹤查詢。本系統(tǒng)結(jié)合現(xiàn)車系統(tǒng)與貨運(yùn)調(diào)度系統(tǒng)進(jìn)行數(shù)據(jù)整合,將預(yù)約號與貨票號統(tǒng)一轉(zhuǎn)化為貨物當(dāng)前所在的車號信息,最終通過車號在運(yùn)輸信息集成平臺中獲取貨物的位置信息。
4.3.3 運(yùn)費(fèi)查詢
根據(jù)貨物的品名、發(fā)到站等條件查詢運(yùn)輸價格。
4.4.1 旬計劃錄入
煤炭企業(yè)根據(jù)與電廠在本系統(tǒng)線上商議后,提出下一旬計劃信息,旬計劃包括發(fā)到站、收貨單位及下一旬每一天的訂車數(shù)據(jù)等信息。電廠用戶在未確認(rèn)旬計劃之前可以進(jìn)行修改與刪除操作。系統(tǒng)功能顯示圖如圖4所示。
4.4.2 旬計劃確認(rèn)
電廠用戶可以通過本功能查詢到與本企業(yè)有關(guān)的下一旬計劃信息,根據(jù)線上商議情況與當(dāng)前實際情況進(jìn)行旬計劃訂車信息確認(rèn)操作;電廠用戶確認(rèn)工作完成后且鐵路局運(yùn)力配置部門未審批之前可以修改旬計劃。
4.4.3 旬計劃審批
鐵路局運(yùn)力配置部門根據(jù)客戶提出的旬計劃需求及當(dāng)前鐵路運(yùn)力情況進(jìn)行旬計劃的審批工作;旬計劃執(zhí)行后審批結(jié)果無法修改。
圖4 旬計劃錄入顯示圖
4.4.4 旬計劃查詢
根據(jù)裝車日期、發(fā)到站、收發(fā)貨人查詢條件查詢煤炭企業(yè)提出旬計劃信息。旬計劃信息主要包括預(yù)約受理號、煤炭企業(yè)提報的訂車數(shù)據(jù)、電廠的確認(rèn)信息及鐵路局審批結(jié)果。
4.5.1 煤炭產(chǎn)量管理
煤炭企業(yè)根據(jù)企業(yè)實際生產(chǎn)情況錄入煤炭生產(chǎn)信息,包括煤炭生產(chǎn)時間、發(fā)站、專用線、品名及生產(chǎn)噸數(shù),同時本模塊還包括修改與刪除功能。
4.5.2 煤炭運(yùn)輸查詢
根據(jù)時間段、電廠企業(yè)名稱及品名查詢煤炭企業(yè)發(fā)送貨物的信息,貨物信息包括裝車時間、收貨單位、發(fā)站、專用線、預(yù)約號、品名、承認(rèn)車數(shù)及裝車車數(shù)。
4.5.3 煤炭庫存管理
根據(jù)日期查詢煤炭企業(yè)每日庫存及實時庫存量;煤炭企業(yè)可以根據(jù)實時庫存量及電廠庫存量制定下一階段的生產(chǎn)計劃。
4.6.1 鐵路運(yùn)輸收貨管理
根據(jù)時間段及品名查詢電廠企業(yè)接收貨物的信息,包括到站、名品、貨票號、股道號、到達(dá)時間及送達(dá)噸數(shù);上述數(shù)據(jù)采集于貨運(yùn)調(diào)度系統(tǒng)及運(yùn)輸信息集成平臺。
4.6.2 公路運(yùn)輸收貨管理
電廠企業(yè)根據(jù)實際情況錄入由公路運(yùn)輸送達(dá)到站的貨物信息,包括站名、品名、到達(dá)時間及送達(dá)噸數(shù)。同時本模塊還包括歷史信息查詢、修改及刪除功能。
4.6.3 電廠煤炭消耗管理
電廠企業(yè)根據(jù)日常發(fā)電實際消耗情況錄入煤炭消耗信息,包括電廠地址(到站)、品名、實際消耗時間、消耗噸數(shù)及備注情況。同時本模塊還包括歷史信息查詢、修改及刪除功能。
4.6.4 電廠庫存管理
根據(jù)日期查詢電廠企業(yè)每日庫存及實時庫存量。電廠企業(yè)可以根據(jù)實時庫存及當(dāng)?shù)仡A(yù)期耗電量制定下一階段的煤炭采購計劃。
信息發(fā)布管理包括新建消息、收信箱、草稿箱及發(fā)件箱4個功能;本模塊與郵件系統(tǒng)實現(xiàn)的功能基本一致,通過此模塊可以實現(xiàn)電廠、煤炭企業(yè)及鐵路局的線上交流,完成客戶業(yè)務(wù)需求消息及鐵路局停限裝通知的發(fā)布。系統(tǒng)功能顯示圖如圖5所示。
圖5 新建消息顯示圖
4.8.1 用戶審批
鐵路局管理員根據(jù)注冊信息與實際情況比對,相符且具有使用本系統(tǒng)資質(zhì)的電廠或煤炭企業(yè)用戶進(jìn)行審批通過操作,審核通過的用戶分配權(quán)限后即可獲得服務(wù)。審核未通過的用戶不能登錄系統(tǒng)。
4.8.2 用戶菜單配置
鐵路局管理員根據(jù)用戶類型及用戶申請的功能進(jìn)行系統(tǒng)用戶菜單分配。
4.8.3 用戶維護(hù)
用戶維護(hù)功能包括用戶密碼重置及用戶使用時限管理。
BlazeDS是一個基于服務(wù)器的Java遠(yuǎn)程調(diào)用與Web消息傳遞技術(shù),使用 AMF(Flex 客戶端專用的二進(jìn)制數(shù)據(jù)傳輸協(xié)議)傳輸協(xié)議,它能夠使得運(yùn)行在瀏覽器上的 Adobe Flex應(yīng)用程序和后端的Java應(yīng)用程序相互通信。BlazeDS程序部署于Tomcat服務(wù)器上,以Java Servlet的形式存在,負(fù)責(zé)將ActionScript對服務(wù)端Java對象的調(diào)用請求和返回結(jié)果進(jìn)行數(shù)據(jù)轉(zhuǎn)換。
BlazeDS提供了3種通信服務(wù):遠(yuǎn)程調(diào)用、消息服務(wù)、訪問代理。在Flex客戶端中使用Remote Object、WebService、HttpService 等組件來提供訪問服務(wù)器端的數(shù)據(jù),其中 Remote Object 是以AMF 協(xié)議 交 換 數(shù) 據(jù),而 WebService和HttpServcie則采用比較傳統(tǒng)的Http的訪問協(xié)議,本系統(tǒng)采用訪問代理通訊模式,客戶端使用HttpService組件訪問服務(wù)端數(shù)據(jù)。
HttpService組件代碼如下:
訪問代理模式的相關(guān)配置信息如下:
鐵路計算機(jī)安全平臺的外網(wǎng)訪問控制服務(wù)采用基于安全套接層(SSL,Secure Sockets Layer)協(xié)議的Https單向驗證方式;電廠準(zhǔn)時制服務(wù)系統(tǒng)向外網(wǎng)用戶提供根證書下載地址,外網(wǎng)用戶安裝證書后通過互聯(lián)網(wǎng)訪問本系統(tǒng)應(yīng)用。
反向代理服務(wù)器截獲用戶訪問請求,將其轉(zhuǎn)發(fā)到外網(wǎng)證書認(rèn)證服務(wù)器進(jìn)行身份認(rèn)證及授權(quán)檢查,反向代理服務(wù)器根據(jù)訪問的地址及認(rèn)證結(jié)果將訪問請求映射到內(nèi)網(wǎng)應(yīng)用服務(wù)器,應(yīng)用服務(wù)器根據(jù)業(yè)務(wù)需求將服務(wù)器響應(yīng)結(jié)果通過安全平臺返回給互聯(lián)網(wǎng)用戶。從而實現(xiàn)了互聯(lián)網(wǎng)與鐵路內(nèi)網(wǎng)的數(shù)據(jù)交互。
電廠準(zhǔn)時制服務(wù)系統(tǒng)采用基于BlazeDS框架設(shè)計與開發(fā),實現(xiàn)了電廠與煤炭企業(yè)用戶通過互聯(lián)網(wǎng)進(jìn)行“準(zhǔn)時制”運(yùn)輸方案制定及庫存管理,目前,系統(tǒng)已覆蓋哈爾濱鐵路局管內(nèi)32個主要電廠。
哈爾濱鐵路局結(jié)合本系統(tǒng)實行“準(zhǔn)時制”運(yùn)輸組織,確保電煤到達(dá)時間波動不超過3 h,按需求提供運(yùn)輸服務(wù),使企業(yè)的平均庫存由原來的15 t減少到7 t,為企業(yè)節(jié)省了大量成本,同時提高了鐵路局的經(jīng)濟(jì)收入。
[1]孫 偉. Flex基于BlazeDS框架遠(yuǎn)程JAVA對象訪問的實現(xiàn)[J].集寧師范學(xué)院學(xué)報,2006,34(2):108-111.
[2]何 媛. 基于BlazeDS實現(xiàn)Flex和Java通訊[J].計算機(jī)光盤與應(yīng)用,2012(11):197-198.
[3]趙中樞. 基于Flex與BlazeDS在企業(yè)開發(fā)中的應(yīng)用[J].福建電腦,2010(9):91-92.
[4]李志安. SSL反向代理服務(wù)器的實現(xiàn)與應(yīng)用[J].計算機(jī)應(yīng)用,2001,21(6):75-76 .
[5]楊金剛,劉 軍,高效松,等. 通過互聯(lián)網(wǎng)訪問鐵路內(nèi)網(wǎng)Web Service技術(shù)的研究與實現(xiàn)[J].鐵路計算機(jī)應(yīng)用,2016,25(10):65-69.