鄭利康,施春輝
(中交機電工程局有限公司,北京 100088)
在項目實施工程中,采購管理成為物資管理極為重要的組成部分,它以市場交易行為來完成企業生產和基本建設的物資采購,是為迎合信息化時代的企業發展需要而進行的實踐創新。中交機電工程局有限公司華麗高速公路機電交安項目經理部(以下簡稱“華麗項目部”)在采購管理系統中可實現物資管理、部門管理、崗位管理、采購申請、物資入庫等模塊的業務功能。當前,國內對物資采購管理系統的相關研究比較多,為提升物資采購的品質和效率,建立統一的物資采購流程及標準,并通過軟件技術來實現,可促進采購過程的透明化,能更好地加大管理和監督力度;有利于物資采購數據的歸集與運用,為企業在物資采購管理方面提供了更好的管理決策服務。
文獻[1]采用微服務架構設計了鐵路招標采購管理系統,系統實現了公共模塊的服務化、流程的可配置化。文獻[2]針對上海農業企業在物資管理方面的需求,對建設系統的目的與系統開發的效益進行了相關的分析與闡述。文獻[3]在北京礦建建設集團已有項目管理信息和BIM 應用的基礎上,將兩者進行整合,研發了基于BIM 的物資管理系統,提升了項目和公司層面的管理效率和管理水平[3]。文獻[4]闡述了倉庫管理系統的開發過程,根據企業的實際業務需求分析分模塊進行設計,總體架構采用B/S 開發模式,使用XML 頁面服務解決了系統數據交換的問題,大大提高了企業倉庫管理的質量和效率。文獻[5]采用三層技術結構MIDAS(Multi-tier Distributed Application Services Suite),即多層分布式應用服務組件設計開發了一款通用的企業物資采購管理系統。文獻[6]以中油管道物資裝備有限公司為例,分析了油氣管道工程物資采購管理系統存在的管理問題,提出了對應的優化措施。文獻[7]分析了企業采購管理面臨的問題,提出了相應的解決措施。
綜上所述,分析企業物資采購的需求與面臨的問題可知,即需要通過研發一個系統來解決諸多企業在物資采購中出現的問題。
華麗高速是國家高速公路網G4216 成都-麗江高速云南境內的重要路段,是G5 京昆高速和G5611大麗高速、G0613 西麗高速之間的橫向連接線,屬國家高速公路網規劃展望線。同時也是云南省高速公路網“三縱三橫,九大通道”中的第一橫“華坪—麗江—蘭坪—六庫”中的一段。該項目從華坪縣榮江鎮開始,并與目前正在建設的成都至麗江國家高速公路對接,結束于麗江市玉龍縣拉市鎮,并接大大理至麗江連接線,總長達150.908 公里。該項目機電交安工程的總承包商是中交機電工程局有限公司。該項目建設復雜度非常高,項目全程共有17 個隧道,隧道總長度72.5 公里,為了確保項目能夠有序、保質、按時開通,華麗項目部在建設工程中發揚創新精神,在管理方面充分發揮信息化的優勢,按照華麗高速機電施工的特點,引入和開發了多項管理軟件,為整體項目高效、有序地開展工作提供了強有力的支撐,同時也培養了一批會管理、懂技術的新時代中交人。在諸多新引入或新研發的軟件中,物資采購管理系統就是為高速公路機電物資采購量身打造的一款管理軟件。
采用面向服務的需求分析方法對系統的功能需求進行梳理,主要功能如下。
1)采購管理服務:提供采購流程的制定功能,項目中對于物資的供應商、價格、出入庫申請以及對應的審批功能,主要分為物資管理、供應商管理、項目管理、倉庫管理、流程管理、審批管理、采購申請管理、詢價申請管理等功能模塊。
2)系統管理服務:提供企業員工基本信息的維護,包括用戶管理、角色管理、崗位管理等。
系統功能組成如圖1 所示。

圖1 物資采購管理系統組成
物資采購管理系統采用B/S結構模式,即瀏覽器/服務器結構模式,所有的業務邏輯由服務器端負責處理[5],因此,客戶端無需要安裝專門的軟件,僅需在PC端下載瀏覽器。系統的維護方便快捷,僅在服務端即可完成系統的更新與維護,既方便管理人員的系統維護,也可降低用戶的硬件開支,從而降低用戶成本。
該系統采用分層設計模式,以便降低程序間的依賴和耦合性,易于系統后期的維護和更新[8]。系統的軟件框架分為表示層、控制層、業務層、持久層和負載均衡層,如圖2 所示。下面分別描述各層功能。

圖2 系統架構
1)表示層:是用戶與軟件界面之間交互的入口,按照系統菜單權限的配置,可為不同的工作人員分配出不同的訪問數據和訪問模塊。
2)控制層:采用符合RESTful[9]風格的API 接口,通過接收前端界面的用戶請求,利用Filter 過濾器攔截非法請求,將請求參數進行實體封裝處理,同時將業務請求傳至業務層。
3)業務層:主要負責處理系統中的業務功能模塊,通過SpringBoot[10]框架實現JavaBean 的注入依賴,并通過持久層進行數據庫的讀寫交互。
4)持久層:是用戶與數據庫之間交互的媒介,這里采用了MyBatis[11]框架,并利用Redis[12]對數據進行緩存。
5)負載均衡層:將用戶請求與服務器資源進行有效匹配。Nginx[13]反向代理服務器周期性地獲取后端服務器的性能參數,并進行計算,對服務器做出實時負載評估。
采購管理模塊主要實現制定采購計劃、采購審核、采購入庫、采購單查詢等功能,其主要業務流程如圖3 所示。項目經理或采購員提交采購申請,采購經理審批通過后,系統根據現有庫存給出庫存出庫或采購的建議,采購經理考慮企業實際需要,確認是庫存出庫還是采購,這樣就可以靈活應對,以便為有緊急需要的項目預留庫存。采購經理確認后,經過領導審批即進入出庫或采購子流程。

圖3 采購管理設計流程
出庫流程中,庫管根據出料確認出庫,并附上照片,領用人在系統中確認收料后即完成出庫。如圖3、4 所示。

圖4 采購子流程
系統主要功能如下:
1)物資管理:對采購物資的基礎信息進行設定和維護(增加、修改、刪除、查詢),包括物資類型、品牌、價格等。為了實現已有數據的快速錄入,設計了通過匯總Excel 表進行批量導入的功能。輸入或導入方式錄入的物資信息都支持重復信息檢測。該模塊中物資新增功能界面如圖5 所示。

圖5 物資新增
2)采購申請管理:采購申請是采購的第一步,提出采購申請后需要具有審核權的人員審核后才能實施采購。該模塊支持Android 和PC 端對于項目采購申請的發起、刪除、查詢。PC 端物資采購新增清單申請如圖6 所示。

圖6 采購新增清單申請
3)供應商管理:管理與企業有業務往來的供應商的信息,包括供應商的基本信息、產品的質量信息等。實現對于供應商信息的增加、修改、刪除和查詢。
4)倉庫管理:實現物資存放地點的管理以及庫存內部物資類型、數量等信息的維護。
5)項目管理:采購以項目的形式進行,一個項目可包括多個采購計劃。該模塊實現了采購項目的信息維護。
6)系統管理:實現平臺用戶的信息維護、權限管理以及菜單目錄管理,實現對各部門崗位的信息維護。
7)出入庫申請:實現了采購物資的入庫申請,以及物資配發的出庫申請。物資入庫申請支持手機APP 端和PC 端,通過填寫需要存入倉庫的物資信息后方可提交入庫申請。手機APP 端物資入庫申請如圖7 所示。

圖7 物資入庫申請
1)系統壓力測試
系統采用壓力測試工具ApacheJMeter[14]對服務器性能的壓力進行測試,可對數據庫、接口及相關文件資源進行靜態和動態測試,可選擇對應的網絡和服務器訪問模擬數負重測試。將測試分為單個Tomcat[15]服務器、Nginx+Tomcat 服務器兩種測試方案,壓力測試結果顯示,該系統的并發請求訪問次數設置為100 次后進行壓力測試,僅有個別請求出現異常,系統可實現穩定運行,與預期效果一致。
2)系統兼容性測試
為滿足多用戶對系統的應用需求,在不同的操作環境及其對應的瀏覽器進行測試。根據用戶使用操作頻次的差異,結合當前多種瀏覽器的特色及不同用戶的應用實際狀況,將該系統分別運用在PC 端以及手機端進行兼容性測試[16]。
PC 端:在Win7、Win8、Win10 操作系統和IE、Chrome、Firefox 瀏覽器中分別進行測試。
手機端:在Android 操作系統上進行軟件測試。
測試結果顯示,系統可同時正常運行于不同操作系統和瀏覽器中。
該系統已在部分企業中投入使用,實現了從采購申請、詢價申請、物資入庫、物資出庫的全過程管理。使用情況表明,將物資采購管理系統運用在企業采購過程中,可實現采購過程信息化、透明化。在物資存儲、批量采購及資源管理方面可為企業提供精準的管理數據,以便管理人員及時采取相應的管理措施,使各部門嚴格按照標準進行物資采購,提升了企業對采購的監管力度和效率,為企業節省了不菲的采購費用。