秦佳,顧欣儀,孫浩天,喬雨
(南京工業(yè)大學(xué) 浦江學(xué)院,江蘇南京,211200)
傳統(tǒng)的城市停車場已經(jīng)不適應(yīng)當(dāng)前停車的需求,因此智能停車場地出現(xiàn)緩解了傳統(tǒng)停車場的運行方式復(fù)雜、成本高等問題。隨著移動網(wǎng)絡(luò)的快速發(fā)展以及智能終端設(shè)備的普及,基于位置的服務(wù)得到廣泛的應(yīng)用。在此背景下,本文提出一種基于Android 系統(tǒng)的城市停車預(yù)約及車位共享的系統(tǒng),通過網(wǎng)絡(luò)及軟件技術(shù)來優(yōu)化城市中的停車問題。一方面能夠為用戶提供停車方面的便捷,幫助用戶尋找最合適的停車點,節(jié)約時間成本;另一方面,通過智能規(guī)劃的方式進一步提高車位資源的利用率。
本系統(tǒng)主要提供停車方面的服務(wù),主要包括停車場查找和預(yù)約、停車場導(dǎo)航、動態(tài)計費收費、私家車位共享等功能,滿足用戶出行便利性需求,解決因配套車位短缺帶來的停車難問題,實現(xiàn)車位的合理利用。用戶可以利用APP 完成注冊和登錄,登錄后可以在首頁搜索指定位置附近的停車場,并對車位進行預(yù)約;預(yù)約完成后可選擇是否調(diào)取手機中已安裝的導(dǎo)航軟件(以高德地圖為例)進行線路導(dǎo)航,使用完成后可以查詢停車費用,進行在線支付。私有車位車主登錄后對車位信息進行認(rèn)證,驗證通過后可以發(fā)布共享車位的相關(guān)信息,如地址信息和收費信息。
本系統(tǒng)采用組件化架構(gòu),按照功能劃分各個業(yè)務(wù)組件模塊,主要劃分出首頁、我的、導(dǎo)航、訂單四大模塊如圖1所示。
圖1 系統(tǒng)整體架構(gòu)圖
為了準(zhǔn)確地獲取用戶需求,提供用戶最需要的服務(wù),本項目在設(shè)計系統(tǒng)功能之前,首先針對目標(biāo)用戶人群進行需求訪問,鼓勵用戶主動提出需求或期望解決的問題;并同時在不同的社區(qū)發(fā)放調(diào)查問卷,對不同人群進行抽樣分析;最后將獲取到的用戶需求進行整理,利用軟件設(shè)計的方法進行功能設(shè)計與實現(xiàn)。
此功能針對外出人群,由于對目的地的周邊環(huán)境不熟悉,經(jīng)常在到達(dá)目的地后還需要花額外的時間和精力尋找附近的停車場[2]。
用戶登錄本系統(tǒng)后,輸入目的地可查詢該地址附近的停車位信息,包括商用停車場、私家空閑車位等信息,用戶選擇最適合自己的位置并進行預(yù)約,預(yù)約需要提交個人基本信息、車輛基本信息、預(yù)計停車時長等信息,預(yù)約成功后即可使用該車位,使用結(jié)束后可以對費用賬單進行處理。
車位的查找和預(yù)約功能主要為需要停車的用戶服務(wù),而擁有產(chǎn)權(quán)車位的用戶也可以在本平臺發(fā)布空閑車位的相關(guān)信息,包括車位地址、編號、空閑時間段、停車費等。通過這樣的方式,盤活部分車位資源,進一步提升車位利用率,緩解停車不便的問題。在車位所有者成功發(fā)布車位信息后,這些車位信息將會更新在可用車位的頁面上,供需要的用戶選擇。
停車場預(yù)約及共享的數(shù)據(jù)庫系統(tǒng)主要由三個部分組成,分別是個人用戶信息、停車預(yù)約訂單信息和發(fā)布的共享車位信息。本系統(tǒng)通過MySQL數(shù)據(jù)庫管理系統(tǒng)建立數(shù)據(jù)表,從而實現(xiàn)對相關(guān)信息的統(tǒng)一存儲和管理。
表1 主要用于存放用戶車輛方面的數(shù)據(jù),包括id、carNum(車牌號)、brandid(車位id)、brandName(車位名)、carType(車型)字段,其中id 字段為主鍵,用于區(qū)分不同車輛信息。
表1 tb_car
表2 主要用于存放用戶賬號方面的數(shù)據(jù),包括id、username(用戶名)、password(密碼)、is_mgr(頭像)字段,其中id 字段為主鍵,用于區(qū)分不同用戶信息。
表2 tb_user
表3 主要用于存放共享停車場方面的數(shù)據(jù),包括id、parkName(停車場名)、parkAddr(停車場地址)、price(價格)字段,其中id字段為主鍵,用于區(qū)分不同共享停車場信息。
表3 tb_sharepark
表4 主要用于存放停車場訂單方面的數(shù)據(jù),包括id、parkName(停車場名)、parkAddr(停車場地址)、lat(維度)、lng (經(jīng)度)、carNumber(車輛編號)、startTime(開始時間)、endTime(結(jié)束時間)字段,其中id 字段為主鍵,用于區(qū)分不同車輛訂單信息。
表4 tb_order
本系統(tǒng)基于功能需求分析,主要功能分為車位預(yù)約和私家車位共享兩個模塊,具體包括停車場查找和預(yù)約、停車場導(dǎo)航、動態(tài)計費收費、私家車位共享等功能,系統(tǒng)功能模塊圖如圖2 所示。
圖2 系統(tǒng)功能模塊圖
3.1.1 用戶功能主界面
用戶功能模塊主要實現(xiàn)停車場查找預(yù)約功能和共享私人車位功能兩個部分,主界面由上方的輪播圖、中部功能區(qū)和下方的用戶地址定位組成,用戶可以根據(jù)需求選擇相應(yīng)功能進行操作,如圖3 所示。個人中心由錢包、個人車輛信息、預(yù)約訂單信息、停車記錄和共享車位發(fā)布信息組成,如圖4 所示。
圖3 系統(tǒng)主頁面
圖4 用戶信息界面
首次預(yù)約將收集用戶信息,包括車輛車牌號、用戶手機號,首次收集后將保存于個人中心,后續(xù)使用如需修改可手動修改或添加刪除。
3.1.2 車位預(yù)約功能
用戶通過輸入指定位置信息可以查詢可用的停車場信息,搜索頁面中會實時定位用戶所在位置并顯示周邊位置信息,位置信息可手動縮放和移動,通過搜索可以選擇不同停車場進行操作,點擊停車場可以查詢到停車場具體信息,例如車位總數(shù)、車位剩余數(shù)、不同車型收費標(biāo)準(zhǔn)等,輸入車輛信息后可以點擊進行預(yù)約按鈕選擇預(yù)約時間進行預(yù)約操作如圖5 所示。
圖5 停車場搜索功能
通過APP 可以查詢并預(yù)訂停車場空余車位,通過后臺數(shù)據(jù)庫的實時更新為用戶預(yù)留車位,若用戶超過所申請的預(yù)約時間則后臺自動解除預(yù)約。用戶通過搜索創(chuàng)建搜索對象,調(diào)用poiSearch 的searchPOIAsyn()方法發(fā)送請求。
核心代碼如下:
3.1.3 停車場導(dǎo)航
預(yù)約停車成功后用戶可以在個人中心的訂單中查找到預(yù)約信息,通過設(shè)置高德地圖的開放API[3],點擊訂單中的“導(dǎo)航”按鈕后會調(diào)用移動終端中已安裝高德地圖并由其為用戶導(dǎo)航至相應(yīng)停車場。
當(dāng)用戶預(yù)約成功后顯示地圖,地圖通過myLocation Style 初始化定位藍(lán)點,通過myLocation Style.myLocation Type(MyLocationStyle.LOCATION_TYPE_LOCATION_ROTATE) 連續(xù)定位、且將視角移動到地圖中心點,定位點依照設(shè)備方向旋轉(zhuǎn),并且會跟隨設(shè)備移動。如果不設(shè)置myLocationType,默認(rèn)也會執(zhí)行此種模式。
3.1.4 停車費用支付
停車結(jié)束后系統(tǒng)按照每個停車場的收費標(biāo)準(zhǔn)以每小時計算費用,可以在我的訂單中可直接進行費用支付,支付后系統(tǒng)反饋予停車場,用戶可直接取車并快速離場。用戶也可以先行取車離場,系統(tǒng)按照停車場的收費標(biāo)準(zhǔn)以每小時計算費用后自動創(chuàng)建訂單信息,用戶可以在規(guī)定時間內(nèi)主動支付費用。
3.2.1 車位信息發(fā)布
私人車位用戶可在共享車位中上傳車位信息,包括填寫車牌號、車位地址和收費的定價,審核通過后即可成功發(fā)布。車位成功發(fā)布后會提示用戶發(fā)布成功,其他用戶將在車位預(yù)約中可查找到車位信息并預(yù)約,預(yù)約成功將預(yù)約信息反饋給業(yè)主。如圖6 所示。
圖6 共享車位界面
核心代碼如下:
每次用戶提交一個新的車位共享后,都會初始化新的Share Park Adapter 參數(shù)并提交給數(shù)據(jù)庫。
3.2.2 車位費用收取
停車結(jié)束后車位費用將直接存放至用戶錢包中,用戶可用其支付下次車位費用或提現(xiàn)至自己的銀行卡中。
本系統(tǒng)設(shè)計目的是解決傳統(tǒng)停車場無法快速尋找車位和難以錯開時間合理安排車位等問題。本客戶端程序從用戶角度出發(fā),基于Android系統(tǒng)的停車場預(yù)約及共享私人車位,使用戶可以從客戶端查找空余停車位信息并及時調(diào)用導(dǎo)航,或利用空閑停車位使利益最大化,從而快速解決難以找到空余停車位、無法直接導(dǎo)航至目的地及私家車位空余浪費等切實問題。