陳植欽 楊云海 陳嬋燕 朱澤儀 陳浩平
摘? 要:隨著社會經(jīng)濟的發(fā)展,人們的生活水平得到顯著提高,汽車已經(jīng)成為人們?nèi)粘I畹谋仨毱贰5?,隨著汽車數(shù)量的快速增長,城市交通基礎(chǔ)設(shè)施已經(jīng)不堪重負,交通擁堵、停車困難等現(xiàn)象在城市中普遍存在。通過租借的形式,實現(xiàn)車輛資源的共享,是緩解當(dāng)前城市交通基礎(chǔ)設(shè)施不足與人們用車需求增長之間的矛盾的一個方法。本文立足于解決汽車共享問題,使用目前成熟的IT技術(shù)方案,實現(xiàn)了租車商城系統(tǒng)。本租車商城系統(tǒng)采用MVC的系統(tǒng)設(shè)計理念,使用ThinkPHP開發(fā)框架以及MySQL數(shù)據(jù)庫。本文闡述了租車商城系統(tǒng)的設(shè)計與實現(xiàn)。本文重點敘述了系統(tǒng)的功能結(jié)構(gòu)、數(shù)據(jù)庫設(shè)計和主要功能模塊的實現(xiàn)過程,建設(shè)一個信息化,高效率的租借車輛的“C2C”平臺。
關(guān)鍵詞:ThinkPHP;汽車共享;電子商務(wù);數(shù)據(jù)庫
中圖分類號:TP311.52? 文獻標識碼:A 文章編號:2096-4706(2019)01-0001-05
The Design and Implementation of the Car Rental Mall System Based on ThinkPHP
CHENG Zhiqin,YANG Yunhai,CHEN Chanyan,ZHU Zeyi,CHEN Haoping
(School of Information Science and Engineering,Shaoguan University,Shaoguan? 512005,China)
Abstract:With the development of social economy,people’s living standards have been significantly improved,and cars have become a necessity in people’s daily life. However,with the rapid growth of the number of cars,urban transportation infrastructure has become overwhelmed,and traffic congestion and difficulty in parking are common in cities. The sharing of vehicle resources through leasing is a way to alleviate the contradiction between the shortage of urban transportation infrastructure and the increase of people’s demand for cars. Based on solving the problem of car sharing,this paper realizes the car rental mall system by using the mature IT technology scheme at present. This car rental mall system adopts the system design concept of MVC,uses ThinkPHP development framework and MySQL database. This paper expounds the design and realization of car rental mall system. This paper focuses on the functional structure of the system,the database design and the implementation process of the main functional modules,and the construction of an information-based and efficient “C2C” platform for rental vehicles.
Keywords:ThinkPHP;car sharing;e-commerce;database
0? 引? 言
如今的出租出借車輛的平臺大多數(shù)是以實體店出租高額押金為抵押手段進行租借的,同時,取車換車地點也固定在實體店,這就導(dǎo)致了用戶在租借車輛時過程十分繁瑣。隨著信息化的發(fā)展,互聯(lián)網(wǎng)平臺的租借車輛服務(wù)勢必會成為趨勢,這就必須要開創(chuàng)網(wǎng)上租車商城的時代來迎合車輛發(fā)展的需求。而且,網(wǎng)上租車平臺不再僅僅限制在小汽車的租賃上,更能擴展到高端自行車,電動車的租車業(yè)務(wù)上。
1? 系統(tǒng)需求分析
租車商城系統(tǒng)的服務(wù)對象主要是家中有閑置車輛以及急需車輛使用但卻找不到租借渠道的用戶。租車商城系統(tǒng)采用C2C模式,用戶通過網(wǎng)站注冊成為車主,上傳自己的車輛信息。網(wǎng)站管理員通過人工審核的方式,讓良好的車輛進入租車市場來供用戶租借。車主和用戶的交易需要向網(wǎng)站交付一定的押金。一旦出現(xiàn)車輛損壞等意外事故,網(wǎng)站客服可以通過電話等方式協(xié)調(diào)雙方以及保險公司達成賠付事項。同時,網(wǎng)站收錄用戶信息,形成客戶信用體系來保障雙方利益。用戶通過車輛頁面瀏覽車輛信息,繳納押金后向車主發(fā)出租用預(yù)定,車主收到預(yù)定后聯(lián)系用戶達成具體租用協(xié)定。完成租用后,雙方都需要向網(wǎng)站確認,通過網(wǎng)站支付費用。平臺與用戶關(guān)系如圖1所示。
結(jié)合需求分析,本系統(tǒng)在設(shè)計時應(yīng)滿足如下目標:
對用戶而言,用戶需要通過注冊成為用戶,進入車輛頁面瀏覽車輛信息,選擇合適的車輛之后向平臺繳納押金進行預(yù)訂車輛。完成訂單后可以對車輛進行評價。
對車主而言,成為用戶后,在上傳自己的車輛和個人信息后,在車輛被預(yù)約后可以得到通知。完成訂單后也可以對用戶進行評論。
對網(wǎng)站管理員而言,可以看到平臺的用戶信息,車輛信息,審核用戶和車主,審核車輛,管理其他管理員,等等。
2? 項目開發(fā)工具
2.1? MVC框架
MVC是一個設(shè)計模式,即模型——視圖——控制器[1]。MVC用一種業(yè)務(wù)邏輯、數(shù)據(jù)、界面顯示分離的方法來組織代碼,將業(yè)務(wù)邏輯聚集到一個部件里面,在改進和個性化定制界面及用戶交互的同時,不需要重新編寫業(yè)務(wù)邏輯。MVC被獨特的發(fā)展起來用于映射傳統(tǒng)的輸入、處理和輸出功能在一個邏輯的圖形化用戶界面的結(jié)構(gòu)中。
Model代表模型層,負責(zé)完成具體功能業(yè)務(wù)模型,大部分是用在處理數(shù)據(jù)庫的具體操作上。View代表視圖層,主要是指程序和用戶之間進行交互的界面。Controller代表控制器,它是MVC框架中的核心,當(dāng)Web頁面發(fā)送請求時,控制器本身不做任何處理,只是接收頁面的請求并確認調(diào)用模型和視圖,完成該請求并返回數(shù)據(jù)[2]。如圖2所示。
2.2? ThinkPHP框架
ThinkPHP框架是為了簡化項目設(shè)計開發(fā)過程而設(shè)計產(chǎn)生的一種輕量級技術(shù)框架[3],它作為一個整體化、系統(tǒng)化的開發(fā)方案,能夠解決開發(fā)應(yīng)用過程中的大多數(shù)需要。ThinkPHP框架擁有MVC模式,將模型、控制器、視圖分開操作,代碼封裝起來,更容易進行操作,它擁有其獨創(chuàng)機制,內(nèi)置XML模板引擎,支持標簽庫、富模型等,在對快速進行的開發(fā)項目設(shè)計提供了很大的便利[4]。
2.3? Bootstrap框架
Bootstrap是一個基于HTML、CSS、JavaScript的用于快速開發(fā)Web應(yīng)用程序和網(wǎng)站的前端框架。系統(tǒng)頁面利用Bootstrap來實現(xiàn)響應(yīng)式布局,用于適應(yīng)各種屏幕尺寸的設(shè)備上。它的基本操作原理主要是經(jīng)過媒體查詢的方式,再根據(jù)網(wǎng)站用戶行為和所處設(shè)備環(huán)境,檢測到不同的設(shè)備屏幕尺寸并自動的進行處理調(diào)整。Bootstrap前端框架提供了一個帶有網(wǎng)格系統(tǒng)、鏈接樣式、背景的基本結(jié)構(gòu)。
2.4? MySQL數(shù)據(jù)庫
MySQL是一種開源的關(guān)系數(shù)據(jù)庫管理系統(tǒng),它使用的數(shù)據(jù)庫管理語言是結(jié)構(gòu)化查詢語言SQL。MySQL在系統(tǒng)開發(fā)過程中十分穩(wěn)定,易操作,占用內(nèi)存小,數(shù)據(jù)管理功能齊全,在商業(yè)市場上因其速度、可靠性和適應(yīng)性而被廣泛使用。MySQL被應(yīng)用在大量的系統(tǒng)平臺中,被認為是在不需要事務(wù)化處理的情況下管理內(nèi)容最好的選擇。
3? 系統(tǒng)總體設(shè)計
通過前面系統(tǒng)需求分析,可以把租車商城平臺系統(tǒng)分成三大模塊,分別為用戶模塊,商城模塊和后臺管理模塊。用戶模塊主要分為用戶和車主,用戶可以查看自己的個人信息和訂單記錄,車主則可以查看車輛的出租情況等信息。商城模塊主要為展示車主上傳的車輛信息和車輛篩選功能。后臺管理模塊分為后臺管理和網(wǎng)站信息管理,控制前天網(wǎng)頁的車輛信息和用戶信息。同時為了能夠更清晰的了解整個系統(tǒng)功能,我們制作了結(jié)構(gòu)設(shè)計圖。如圖3所示。
4? 數(shù)據(jù)庫設(shè)計
租車網(wǎng)站是一個大型的商城系統(tǒng),考慮操作的靈活性及項目開發(fā)成本,以及對租車商城系統(tǒng)的需求分析和總體功能設(shè)計,租車商城系統(tǒng)涉及13張數(shù)據(jù)表,分別是管理員表(v_admin)、車輛品牌表(v_brand)、車輛掛擋類型表(v_gear)、車輛座位數(shù)表(v_seat)、車輛類型表(v_car_type)、車輛天窗類型表(v_car_window)、車輛車型表(v_car_kind)、車輛照片表(v_carpic)、配置表(v_config)、車輛信息表(v_car)、客戶信息表(v_user)、評論表(v_spitslot)和訂單表(v_orders)。管理員表用于存儲管理員登錄的用戶名和密碼。車輛品牌表、車輛掛擋類型表、車輛座位數(shù)表、車輛類型表、車輛天窗類型表、車輛車型表、車輛照片表和車輛信息表用于存儲車輛信息。訂單表主要用于存放車輛的訂單信息。客戶信息表主要用于存放客戶信息的相關(guān)數(shù)據(jù)。評論表主要用于對用戶或者車輛的評論信息。表結(jié)構(gòu)和表關(guān)系如圖4所示。
5? 系統(tǒng)實現(xiàn)
5.1? 網(wǎng)站前端展示模塊
網(wǎng)站前端展示的模塊主要是用戶看到的訪問網(wǎng)站的信息展示,并且具有條件搜索功能頁面,可以讓用戶挑選到自己滿意的車輛進行預(yù)訂。用戶在預(yù)訂前,需要先注冊成為網(wǎng)站的用戶,才能進行下面的操作。
頁面通過遍歷car表和連接車輛型號的幾個表(如:band表)來得到每個車輛信息,再通過跳轉(zhuǎn)地址添加尾綴的方式來進行條件搜索遍歷,頁面如圖5所示。
5.2? 用戶管理模塊
用戶可以通過網(wǎng)站的用戶注冊成為網(wǎng)站用戶,然后使用注冊的手機號和密碼進行驗證登錄,登錄完之后就可以進入個人的主頁,在這里可以看到自己的各種信息和收藏信息,訂單信息等等。網(wǎng)站用戶登錄采用MD5加密,同時ThinkPHP自帶有SQL防注入的功能,可以通過過濾特殊字符來達到防注入的目的[5]。登錄界面如圖6所示。
用戶登錄后的操作界面如圖7所示。
5.3? 網(wǎng)站管理模塊
租車商城還配有網(wǎng)站后臺管理系統(tǒng),可以對車輛信息、用戶信息、訂單信息等進行管理,還可以對管理后臺管理系統(tǒng)的管理員進行管理等,后臺管理主頁頁面如圖8所示。
6? 結(jié)? 論
本文從項目需求分析、系統(tǒng)開發(fā)工具、系統(tǒng)功能設(shè)計和功能結(jié)構(gòu)、系統(tǒng)數(shù)據(jù)庫設(shè)計、系統(tǒng)功能等幾個方面,對基于ThinkPHP的租車商城平臺系統(tǒng)的開發(fā)和實現(xiàn)過程進行了詳細的闡述。隨著互聯(lián)網(wǎng)的快速發(fā)展,網(wǎng)上租車成為當(dāng)今社會的一種必然的發(fā)展趨勢,發(fā)展網(wǎng)上租車能夠及時的對閑置車輛進行處理和滿足急需用車的用戶,能夠很快實現(xiàn)租車信息高效化、數(shù)字化,大大提高車輛租賃企業(yè)或者個人的工作效率,為租車行業(yè)實現(xiàn)最佳經(jīng)營出租環(huán)境提供很大的幫助。
參考文獻:
[1] 劉紅霞,陸文迪.改進的MVC設(shè)計模式的研究與應(yīng)用 [J].計算機工程與科學(xué),2015,37(9):1688-1691.
[2] 崔蓬.基于ThinkPHP的物流配送系統(tǒng)的設(shè)計與實現(xiàn) [J].軟件,2018,39(7):194-198.
[3] 李少杰.基于ThinkPHP框架開放教育微課平臺的設(shè)計與實現(xiàn) [J].電腦知識與技術(shù),2017,13(3):116-118.
[4] 張文勝,陳宏.基于ThinkPHP模型的敏捷WEB開發(fā)的應(yīng)用與實踐 [J].軟件工程,2016,19(3):45-48.
[5] ThinkPHP文檔中心.ThinkPHP3.2.3完全開發(fā)手冊 [DB/OL].http://document.thinkphp.cn/manual_3_2/model.html,2018.