楊 林,李 惠,冉東升
(1. 湖北汽車工業(yè)學(xué)院經(jīng)濟(jì)與管理學(xué)院,湖北 十堰 442000;2. 杭州恒生云融科技有限公司,浙江 杭州 310051)
在計(jì)算機(jī)科學(xué)與技術(shù)方面,國外起步較早,相關(guān)的信息技術(shù)也發(fā)展的更為成熟,因此,許多西方的發(fā)達(dá)國家,他們利用先進(jìn)的信息技術(shù)在各個(gè)產(chǎn)業(yè)領(lǐng)域也實(shí)現(xiàn)了信息化的管理,尤其在電力集團(tuán)的車輛管理方面,他們利用先進(jìn)的信息化手段實(shí)現(xiàn)了車輛信息的信息化管理[1]。
國內(nèi)的信息技術(shù)起步晚,并且發(fā)展較為緩慢[2]。目前通過對(duì)國內(nèi)電力集團(tuán)的調(diào)研,已經(jīng)有部分電力集團(tuán)實(shí)現(xiàn)了信息化管理,與國外電力集團(tuán)的車輛管理系統(tǒng)相比,我們可以學(xué)習(xí)和借鑒人間的先進(jìn)的技術(shù)以及管理化的思維模式,借鑒他們的設(shè)計(jì)思想,然后通過我們的努力來完善我們的車輛管理系統(tǒng)。因此,通過開發(fā)龍?jiān)措娏瘓F(tuán)車輛管理系統(tǒng),提過龍?jiān)措娏瘓F(tuán)車輛管理效率,增大企業(yè)效益[3]。
近年來,隨著信息化在各行各業(yè)深入應(yīng)用,信息化不斷改變著企業(yè)傳統(tǒng)的工作方式,集團(tuán)公司的車輛調(diào)度對(duì)一個(gè)企業(yè)的影響非常之大,從申請(qǐng)到派車到故障處理重新調(diào)度,對(duì)企業(yè)的應(yīng)急處理能力是很大的挑戰(zhàn),如何快速的響應(yīng),反映了一個(gè)企業(yè)的很強(qiáng)的信息處理能力。信息化還能規(guī)范企業(yè)的管理模式,從而提高企業(yè)的工作效率,達(dá)到節(jié)約企業(yè)成本和高效管理企業(yè)的目的。
龍?jiān)措娏瘓F(tuán)規(guī)模的擴(kuò)大,集團(tuán)的出勤任務(wù)也隨著增多,集團(tuán)內(nèi)部和外部的車輛數(shù)越來越多,但是出勤車輛混亂,資源沒有達(dá)到合理利用的效果,因此出現(xiàn)了車輛資源合理分配的問題,車輛的檔案管理不及時(shí),司機(jī)信息管理等不完善等問題。本文在充分調(diào)研的基礎(chǔ)上,以JavaEE 為平臺(tái),利用SSM框架搭建龍?jiān)措娏囕v調(diào)度系統(tǒng),以此提高本公司節(jié)約開銷、提高效率。同時(shí)為其他類似企業(yè)提供參考,促進(jìn)企業(yè)信息化進(jìn)程。
在當(dāng)前信息技術(shù)高速發(fā)展的時(shí)代,人們對(duì)各項(xiàng)應(yīng)用系統(tǒng)需求的變化隨之加快。車輛調(diào)度系統(tǒng)系統(tǒng)設(shè)計(jì)時(shí)就必須具有前瞻性,同時(shí)要考慮到后續(xù)的可擴(kuò)展性,采用當(dāng)前最為先進(jìn)的技術(shù)對(duì)該系統(tǒng)進(jìn)行設(shè)計(jì),為其今后功能擴(kuò)展、更新維護(hù)等提供保障[10]。
車輛調(diào)度系統(tǒng)關(guān)系著車輛的管理、運(yùn)營、維護(hù)、應(yīng)急燈狀態(tài),因此調(diào)度系統(tǒng)進(jìn)行設(shè)計(jì)時(shí),應(yīng)充分考慮到系統(tǒng)重要數(shù)據(jù)的一致性,將重要數(shù)據(jù)類型、精度以及表達(dá)方式設(shè)置為統(tǒng)一格式,從而降低系統(tǒng)數(shù)據(jù)修改量,便于系統(tǒng)后續(xù)的維護(hù)及管理工作[11]。
車輛調(diào)度系統(tǒng)是對(duì)車輛的狀況的實(shí)時(shí)掌握,突發(fā)狀況例如電力搶修,堵車、車輛半路故障等。在系統(tǒng)設(shè)計(jì)時(shí)應(yīng)考慮系統(tǒng)的實(shí)時(shí)性,要有預(yù)案處理機(jī)制,需要車輛的實(shí)時(shí)定位,充分利用GPS 數(shù)據(jù)提高效率。
車輛調(diào)度系統(tǒng)中包含著大量的隱私數(shù)據(jù),若是出現(xiàn)數(shù)據(jù)流失或信息數(shù)據(jù)泄露現(xiàn)象,將會(huì)公司和個(gè)人帶來很大的損失。因此,在對(duì)車輛調(diào)度系統(tǒng)進(jìn)行設(shè)計(jì)的過程中,還應(yīng)將安全性原則放在系統(tǒng)設(shè)計(jì)的首要位置,充分考慮不用需求用戶的使用權(quán)限,爭取把系統(tǒng)安全性提到最高。
由于使用車輛調(diào)度信息化系統(tǒng)的人員計(jì)算機(jī)素養(yǎng)參差不齊。因此,在車輛調(diào)度系統(tǒng)設(shè)計(jì)過程中,應(yīng)充分考慮系統(tǒng)的易用性,以增加系統(tǒng)智能性來加強(qiáng)系統(tǒng)人機(jī)交流的簡便性,盡量將系統(tǒng)界面設(shè)計(jì)的美觀且大氣,便于用戶進(jìn)入。同時(shí),還應(yīng)考慮到該系統(tǒng)與實(shí)際生活的貼近程度,為用戶提供僅靠簡答的選擇及錄入就可完成操作的便利功能,提高農(nóng)業(yè)信息化系統(tǒng)的使用效率。
本系統(tǒng)采用B/S 架構(gòu),使用MVC 設(shè)計(jì)模式,運(yùn)用MySQL5.6 數(shù)據(jù)庫,應(yīng)用SSM 開源框架來實(shí)現(xiàn)該系統(tǒng)的功能。
idea 本系統(tǒng)利用IDEA 作為系統(tǒng)的開發(fā)工具,IDEA 全稱IntelliJ IDEA,IDEA 是目前IT 開發(fā)行業(yè)中最流行的開發(fā)工具之一[9]。
MYSQL5.6 數(shù)據(jù)庫簡介開發(fā)過程使用的數(shù)據(jù)庫是MYSQL5.6。MYSQL 的主要特點(diǎn):MYSQL 和其SQL Server、Oracle 相比而言一個(gè)優(yōu)點(diǎn)就是免費(fèi),這樣方便用戶根據(jù)自己的需求對(duì)其添加功能。
Tomcat 該系統(tǒng)的服務(wù)器采用Tomcat7,Tomcat 是一款支持Windows 和Linux 的服務(wù)器軟件,它的主要優(yōu)點(diǎn)在于運(yùn)行期間資源消耗少,性能擴(kuò)展較好,而且還支持負(fù)載均衡以及郵件服務(wù)等系統(tǒng)開發(fā)中常用的功能。
本系統(tǒng)主要用到的框架有SSM 框架(Spring、SpringMVC、MyBatis)、BootStrap 框架,EasyUI框架;主要用到的技術(shù)有JSP 技術(shù),Json 技術(shù)和Ajax 技術(shù),PageHelper 分頁技術(shù);主要的模式有MVC模式以及B/S 架構(gòu)模式。
SSM 框架是Spring+SpringMVC+MyBatis 開源框架的簡稱,利用SSM 框架開發(fā)項(xiàng)目可以提高我們開發(fā)項(xiàng)目的效率,并且方便我們以后對(duì)項(xiàng)目的維護(hù)和其他功能的擴(kuò)展,從而提高了車輛調(diào)度系統(tǒng)的可維護(hù)性、可擴(kuò)展性[9]。
Spring 框架是一個(gè)輕量級(jí)的開發(fā)容器,它的核心是IOC 和AOP,通過IOC 和DI 有效的實(shí)現(xiàn)對(duì)項(xiàng)目開發(fā)中大量的JavaBean 的管理。
MyBatis 是一個(gè)開源的ORM 持久層框架。用戶用面向?qū)ο蟮姆椒▉聿僮鞒志脤拥膶?shí)例,方可簡便快捷的實(shí)現(xiàn)對(duì)數(shù)據(jù)庫的增、刪、改、查操作。
BootStrap 框架是目前頁面開發(fā)過程中使用較多的一款流行前端框架。
jQueryEasyUI 是基于jQuery 的插件集合體,能為系統(tǒng)提供美觀大氣的操作界面。
Json 是輕量級(jí)的數(shù)據(jù)交互格式,為系統(tǒng)數(shù)據(jù)的交互提供保障[13]。
Ajax 異步加載技術(shù)能夠在不刷新頁面的同時(shí)實(shí)現(xiàn)了前后臺(tái)數(shù)據(jù)的交互,提高了數(shù)據(jù)交互的效率以及用戶的體驗(yàn),降低了系統(tǒng)開銷,為系統(tǒng)的實(shí)時(shí)性提供保障[12]。
為了實(shí)現(xiàn)龍?jiān)措娏瘓F(tuán)車輛管理系統(tǒng)的設(shè)計(jì)開發(fā),我決定采用Java 語言作為底層開發(fā)語言,基于B/S 設(shè)計(jì)模式,用戶在瀏覽器端發(fā)送請(qǐng)求,服務(wù)端接受請(qǐng)求并處理,處理完成后再將處理結(jié)果通過jsp頁面展示給用戶[2]。
采用MVC 設(shè)計(jì)模式來設(shè)計(jì)開發(fā)龍?jiān)措娏瘓F(tuán)車輛管理系統(tǒng),這樣既能保證代碼結(jié)構(gòu)的嚴(yán)瑾也能夠保證代碼的完整.還為后期的閱讀和開發(fā)提供了可支持[4]。
龍?jiān)措娏瘓F(tuán)車輛管理系統(tǒng)實(shí)現(xiàn)用戶辦公用車和作業(yè)用車的的業(yè)務(wù)功能管理,系統(tǒng)主要包含四大模塊,分別是人員管理,車輛管理,車輛調(diào)度、系統(tǒng)管理。人員管理主要是管理員管理,用戶管理,司機(jī)管理;車輛管理主要包含車輛信息管理,車輛申請(qǐng)管理、車輛維修管理、車輛保險(xiǎn)管理;車輛調(diào)度功能主要是系統(tǒng)管理包含是密碼修改,退出登陸。
開發(fā)者和需求人員在需求分析階段的合理交流是非常必要的,這樣有利于開發(fā)者詳細(xì)理解用戶需要的業(yè)務(wù)。
非功能需求分析嚴(yán)格規(guī)定了系統(tǒng)非運(yùn)行時(shí)間的屬性、系統(tǒng)必須滿足的服務(wù)服務(wù)水平以及系統(tǒng)必須遵守的約束這三個(gè)方面,它的作用主要體現(xiàn)在用戶和系統(tǒng)支持人員對(duì)系統(tǒng)認(rèn)可度方面,而這種功能通常是由用戶提出的,經(jīng)過用戶和開發(fā)人員的最終討論而成。
本章節(jié)主要介紹基于WEB 的龍?jiān)措娏瘓F(tuán)車輛管理系統(tǒng)的架構(gòu)設(shè)計(jì)、功能設(shè)計(jì)、E-R 圖設(shè)計(jì)和數(shù)據(jù)庫設(shè)計(jì)等,基于B/S 三次架構(gòu)這種設(shè)計(jì)方法使得系統(tǒng)結(jié)構(gòu)更加清晰,分工更加明確,以便于后期的維護(hù)。
車輛調(diào)度系統(tǒng)從角色來分,可以分為管理員和用戶,按功能分可以分為三大類人員管理、車輛管理、系統(tǒng)管理。具體的測量調(diào)度系統(tǒng)的功能。如圖1 所示。
圖1 系統(tǒng)總體結(jié)構(gòu)圖 Fig.1 Overall system structure
基礎(chǔ)信息錄入模塊包含用戶管理模塊、貨車信息模塊、司機(jī)信息模塊、區(qū)域信息模塊、企業(yè)信息模塊、客戶模塊?;A(chǔ)信息模塊是車輛調(diào)度系統(tǒng)中錄入的數(shù)據(jù),后面貨物信息的錄入和等待派車模塊等信息的依據(jù)。基礎(chǔ)信息模塊中信息安全等級(jí)最高,所以進(jìn)行數(shù)據(jù)更改一般給予最高權(quán)限管理員權(quán)限。
用戶管理功能主要作用是管理車輛調(diào)度系統(tǒng)中的用戶,需要用戶需要設(shè)置唯—的用戶名,同時(shí)選擇用戶相對(duì)應(yīng)的角色(系統(tǒng)管理員,調(diào)度員,貨車司機(jī),訂單錄入員,經(jīng)理),和設(shè)置用戶登錄系統(tǒng)對(duì)應(yīng)的密碼。用戶登錄系統(tǒng)時(shí)候進(jìn)行權(quán)限判斷應(yīng)該跳轉(zhuǎn)對(duì)應(yīng)相應(yīng)頁面。貨車信息模塊主要包含貨車的載重量和對(duì)應(yīng)貨車的牌照、駕駛司機(jī)等信息。
車輛信息模塊主要為輛調(diào)度選擇服務(wù),一般以車輛的相應(yīng)牌照來進(jìn)行對(duì)車輛進(jìn)行標(biāo)識(shí)。司機(jī)信息模塊主要是用來管理司機(jī)信息包含司機(jī)的中文姓名和英文姓名、性別、聯(lián)系電話和郵箱等信息。
車輛調(diào)度系統(tǒng)整個(gè)工作流程是訂單錄入人員將接收到訂單,將紙質(zhì)文件錄入到車輛調(diào)度系統(tǒng)中,然后系統(tǒng)在等待派車模塊中更生成相應(yīng)的運(yùn)輸任務(wù),點(diǎn)擊相應(yīng)的派車按鈕,系統(tǒng)會(huì)根據(jù)訂單計(jì)算派遣出路線最優(yōu)的車輛,再將最優(yōu)車輛配送任務(wù)選擇的車輛,推送到對(duì)應(yīng)司機(jī)手機(jī)APP上。司機(jī)接收該配送任務(wù),到達(dá)目的地后,司機(jī)需要進(jìn)行拍照上傳和簽字進(jìn)行確認(rèn)。司機(jī)拒絕該配送任務(wù),會(huì)重新進(jìn)行派車。
本系統(tǒng)結(jié)合公司扁平化和決策快速等特點(diǎn)系統(tǒng)管理員和員工2 個(gè)用戶角色:無論是管理員還是員工,執(zhí)行的流程一樣。登錄流程圖如圖2所示。
圖2 龍?jiān)措娏瘓F(tuán)車輛 管理系統(tǒng)登錄圖 Fig.2 Login Chart of Vehicle Management System of Longyuan Electric Power Group
龍?jiān)措娏瘓F(tuán)車輛管理系統(tǒng)采用Java 語言編寫,IDEA 作為開發(fā)工具,采用MVC 分層架夠開發(fā),以便該系統(tǒng)移植,系統(tǒng)主要圍繞著龍?jiān)措娏瘓F(tuán)內(nèi)部車輛的管理設(shè)計(jì)而成,主要包含三大功能模塊。首先對(duì)系統(tǒng)的兩個(gè)項(xiàng)目模塊分別做詳細(xì)介紹:(1)Common:項(xiàng)目中的一個(gè)公共模塊,用于存放一些每個(gè)模塊中都用到的工具類,比如常用的StringUtils、DataUtils 等。(2)Manager:這個(gè)模塊中包含了4個(gè)子模塊:分別是Pojo、Service、Mapper、Web 模塊。Pojo 模塊主要是用于存放JavaBean 文件,也就是通過面向?qū)ο笊傻腏ava 類、Mapper 模塊主要用來存放對(duì)數(shù)據(jù)操作生成的XML 文件和mapper 文件。Service 層主要是對(duì)具體業(yè)務(wù)邏輯進(jìn)行操作生成的代碼模塊,Service 中的業(yè)務(wù)邏輯實(shí)現(xiàn)了對(duì)數(shù)據(jù)的增刪改查操作。WEB 模塊存放的就是前端頁面和后臺(tái)數(shù)據(jù)庫進(jìn)行交互的橋梁類以及一些動(dòng)態(tài)的JSP 頁面還有實(shí)現(xiàn)動(dòng)態(tài)交互的配置文件。
(1)本系統(tǒng)是在選用Idea 作為開發(fā)工具,創(chuàng)建了一個(gè)web 工程,其命名為CMS,并搭建好SSM三個(gè)框架相結(jié)合的環(huán)境。(2)配置springMVC.xml 文件,配置連接數(shù)據(jù)庫。
該階段的主要任務(wù)就是將之前各階段的技術(shù)設(shè)計(jì)變成物理實(shí)現(xiàn),完成代碼的編譯工作,使系統(tǒng)真正的搭建起來。
為了介紹系統(tǒng)的實(shí)現(xiàn)情況,下面通過界面圖以及核心代碼進(jìn)行系統(tǒng)各個(gè)功能實(shí)現(xiàn)過程的描述。管理員登錄界面如圖3 所示。
圖3 管理員登錄頁面 Fig.3 Administrator login page
本論文在對(duì)企業(yè)的車輛調(diào)度部門調(diào)研的基礎(chǔ)上,根據(jù)企業(yè)自身的實(shí)際情況提出了搭建車輛調(diào)度系統(tǒng)的規(guī)劃。車輛調(diào)度系統(tǒng)整體結(jié)構(gòu)采用的是的B/S 體系結(jié)構(gòu),前端頁面采取的是EasyUI 框架,數(shù)據(jù)庫的交互使用SSM 框架來實(shí)現(xiàn),車輛調(diào)度系統(tǒng)開發(fā)的理論包含了車輛定位GPS、最短路徑Dijkstra 算法。通過在企業(yè)上線運(yùn)行,達(dá)到了預(yù)期的效果。等待派車模塊中實(shí)現(xiàn)車輛調(diào)度采用的是最短路徑算法來完成車輛調(diào)度,從而達(dá)到成本最低和時(shí)間最短。