摘要:針對停車場空間的限制,傳統(tǒng)人工收費過程繁瑣且財務(wù)上造成很大漏洞和現(xiàn)金流失等問題。該文對停車場收費系統(tǒng)進行了詳細需求分析和模塊設(shè)計。設(shè)計了基于Visual C++6.0 +SQL2000數(shù)據(jù)庫的停車場收費系統(tǒng),該系統(tǒng)能連續(xù)穩(wěn)定運行,能實現(xiàn)快速查詢, 用戶增加,報表等功能。從應(yīng)用效果來看能顯著地降低收費員勞動強度和減少人力成本,而且能有效的提高車輛出入通行效率和停車場空間利用率。從經(jīng)濟可行性,運行可行性,技術(shù)可行性方面完全可以滿足小型停車場業(yè)主的需求。
關(guān)鍵詞:停車場收費系統(tǒng);Visual C++ ;SQL
中圖分類號 TP311 文獻標識碼:A 文章編號:1009-3044(2013)19-4549-03
1 概述
停車場是指醫(yī)院、商場、寫字樓地底下車庫、飛機場、娛樂中心等停放公共車輛的地方!隨著生活水平的日益提高,越來越多的私家車涌入社會,給城市帶來了許多不便。行車難停車難問題日益突出。傳統(tǒng)停車場采用人工方式收費過程繁瑣,人工勞動強度高 停車場利用率低,財務(wù)上造成很大漏洞和現(xiàn)金流失等問題!如何有效的設(shè)計停車場管理系統(tǒng)實現(xiàn)車輛的快速出入,快速泊位,是迫在眉睫的問題?,F(xiàn)代化的停車收費系統(tǒng) 實現(xiàn)了智能化和安全管理。不僅能為用戶提供快捷方便的服務(wù),還能降低操作成本,降低勞動強度提供更好的投資收益![1]
為了提升停車場的智能化水平,設(shè)計停車場應(yīng)考慮以下幾方面:1)系統(tǒng)操作簡單, 盡可能采用圖形人機界面交互方式。2)收費合理,按使用時間長短收費。3)靈活的收費方式。可以使用現(xiàn)金. 月票或者充值卡繳費。4)規(guī)范性。由于本系統(tǒng)是一個綜合系統(tǒng),在設(shè)計之初要參考各方面的標準與規(guī)范,做好系統(tǒng)的標準化設(shè)計與管理工作。[2]
2 系統(tǒng)總體功能介紹
本系統(tǒng)主要劃分為登錄模塊,計費模塊,查詢模塊,卡管理模塊,用戶管理模塊,報表模塊,參數(shù)設(shè)置模塊。當用戶啟動系統(tǒng)進入登錄界面后輸入用戶名,密碼,權(quán)限,進入系統(tǒng)。即可選擇相應(yīng)的模塊進行處理。在計費模塊入口部分,當車輛進入入口時即啟動計時功能,系統(tǒng)會記錄車輛駛?cè)霑r間,同時入口攝像機會拍攝車輛圖片經(jīng)圖像處理程序處理后把車牌號保存在后臺數(shù)據(jù)庫中。在出口部分當車輛駛出時系統(tǒng)會根據(jù)車輛在停車場內(nèi)停留時間,與費率相乘得到相應(yīng)停車費用。車位控制主要是顯示停車場剩余內(nèi)車位數(shù)。查詢模塊用于管理員進行相關(guān)查詢來獲取停車場營業(yè)收入, 駕駛員查看自己停車費用情況等。卡管理 模塊主要負責為用戶創(chuàng)建卡,為卡充值,當卡丟失時能及時掛失和補辦。保證一車一卡 防止卡被人盜用保障用戶的資金安全用戶管理模塊。當停車場新招工作人員 和員工離職后能及時的添加和刪除,同時員工也能方便的修改自己的UH+F0sd7VXU7GQUwgH81MPbE18ek9HgXF6fg0QvAPdg=密碼防止密碼被盜。報表模塊用于管理員查詢停車場一段時間內(nèi)的營業(yè)收入,制成財務(wù)報表。參數(shù)設(shè)置模塊用于設(shè)置停車場費率,免費停留時間和有效車位。[3]
具體功能如圖1:
3 開發(fā)工具及運行環(huán)境的選擇
由于停車場日夜運行數(shù)據(jù)量大,以及經(jīng)常訪問查詢等操作,對數(shù)據(jù)庫的要求較高!傳統(tǒng)上Access數(shù)據(jù)庫只適合數(shù)據(jù)量少的應(yīng)用,在處理少量數(shù)據(jù)和單機訪問的數(shù)據(jù)庫時是很好的,效率也很高。但是它的同時訪問客戶端不能多于4個。access數(shù)據(jù)庫有一定的極限,如果數(shù)據(jù)達到100M左右,很容易造成服務(wù)器假死,或者消耗掉服務(wù)器的內(nèi)存導(dǎo)致服務(wù)器崩潰。而SQL Server可以很好的滿足需求![4]
SQL Server關(guān)系數(shù)據(jù)庫由于具有靈活的體系結(jié)構(gòu) ,適應(yīng)分布式的管理和控制,適合大容量數(shù)據(jù)的應(yīng)用,系統(tǒng)的可靠性高、可用性好、可擴展性好,易于集成現(xiàn)有系統(tǒng)。在處理海量數(shù)據(jù)方面響應(yīng)速度快,故本系統(tǒng)選用SQLSever2000。[5]
VC6.0是一個功能強大的可視化應(yīng)用開發(fā)工具,支持面向?qū)ο蟮某绦蛟O(shè)計。模塊化、 代碼可重用 、組件可共享、強大的MFC等技術(shù)優(yōu)勢!因此本系統(tǒng)選用VC6.0技術(shù)來開發(fā)停車場收費管理系統(tǒng)的各個功能模塊,利用基于對話框模式建立整個軟件的界面環(huán)境,并利用面向?qū)ο螅∕FC)的編程方法。編寫各模塊相應(yīng)的程序代碼,并通過已經(jīng)建立的模塊來組成整個停車場收費管理軟件。[6]
運行平臺的選擇:Window XP\2000
4 軟件設(shè)計原則
在系統(tǒng)開發(fā)過程中應(yīng)該遵循以下三個原則:
1)穩(wěn)定性原則。由于停車場收費系統(tǒng)一般情況下24小時不間斷工作,軟件的穩(wěn)定性尤為重要。
2)可拓展性原則。系統(tǒng)應(yīng)滿足用戶不斷的需求,可靈活增減或更新各個子系統(tǒng),要為軟件的升級預(yù)留一定空間。
3)數(shù)據(jù)安全性原則。不同權(quán)限的人訪問不同的數(shù)據(jù)庫,同時在系統(tǒng)出現(xiàn)故障后能立即回復(fù)數(shù)據(jù),保障數(shù)據(jù)的安全。[7]
5 各軟件模塊設(shè)計
5.1 登錄模塊
登錄模塊主要完成對用戶身份的驗證,不同級別的人有不同的權(quán)限。當用戶輸入用戶名、密碼、級別后、與數(shù)據(jù)庫中的用戶信息進行比對,如果完全符合則登錄成功。如果輸入信息不正確,則要求重新輸入,最多可輸入三次。超過三次講該用戶鎖定,不允許登錄。
5.2 計費模塊
計費模塊主要完成計費功能。
1)車輛進場模塊。駕駛員按動票卡讀寫機上的按鈕,得到一張計時票卡后 入口管理員才開動入口柵欄控制閘放行;對于持月票卡,免費卡,儲值卡的車輛,需將卡片插入票卡讀寫機后確認有效后才準放行。系統(tǒng)會自動記錄卡類型,車牌號,進場時間,并保存在數(shù)據(jù)庫中。
2)車輛出場模塊。當車輛離開停車場時,持計時票卡的駕駛員,將票卡插入票卡讀寫機,系統(tǒng)自動啟動計價程序。駕駛員繳費后,開啟柵欄控制閘放行。持儲值卡的駕駛員也將票卡插入票卡讀寫機,并從卡內(nèi)扣減停車費用,放行。持月票卡和免費卡的駕駛員將票卡插入票卡讀寫機,系統(tǒng)驗證有效性后放行。在出場模塊中系統(tǒng)會記錄車輛駛出時間(系統(tǒng)當前時間) 車牌號,卡類型。
3)車位控制模塊。當停車場車位已滿時,系統(tǒng)報警。每進入一輛車,相應(yīng)車位數(shù)減一。每駛出一輛車,相應(yīng)車位數(shù)增一,用顯示屏顯示當前剩余車位數(shù)。
5.3 查詢模塊
該模塊提供了三種查詢方式:按車牌號查詢,按卡號查詢,按支付類型查詢。通過點擊菜單中的”查詢”項,從下拉子菜單中選擇相應(yīng)的操作。
5.4 卡管理模塊
該模塊是各種用戶卡的管理模塊,包括開戶,存款,延期,掛失,補辦。工作人員根據(jù)使用的需要,選擇相應(yīng)的”命令”來完成。
開戶功能:可以為第一次來辦理卡用戶的人建一張卡。
存款功能:主要針對預(yù)付卡用戶,可向卡內(nèi)再次存入現(xiàn)金。
延期功能:當卡到期而用戶想繼續(xù)使用該卡,可通過此功能才延長卡的使用期限。
掛失功能:當卡丟失要申請掛失,在系統(tǒng)當中暫時將該卡設(shè)置為無效,以免被其他車用。
補辦功能:對卡丟失還想繼續(xù)使用的用戶,可申請補辦為其重新發(fā)卡。
5.5 用戶管理模塊
功能描述:主要用于用戶的管理。負責創(chuàng)建.查找.修改.添加.刪除用戶的操作。每個用戶有被賦予不同的級別,不同的級別有不同的權(quán)限,可以處理不同的工作。具體權(quán)限如下:
超級用戶:有權(quán)訪問所有的模塊。
經(jīng)理:允許訪問除參數(shù)設(shè)置以外的所以模塊。
卡管理員:允許訪問計費模塊,查詢模塊,報表管理模塊和卡管理模塊。
車場門衛(wèi):只負責計費模塊。
5.6 報表模塊
功能描述:提供每日運營數(shù)據(jù)的報表,通過出入口每輛車通過時保存下來的信息,生成各報表。例如日收入?yún)R總報表,收入?yún)R總月報表,卡余額日報表等。
5.7 參數(shù)設(shè)置模塊
該模塊主要對系統(tǒng)預(yù)定義參數(shù)進行設(shè)置,包括費率設(shè)置,免費停留時間設(shè)置,停車場有效車位設(shè)置等。[8]
6 數(shù)據(jù)庫的設(shè)計
數(shù)據(jù)作為信息的重要載體,一個完整的數(shù)據(jù)庫包含數(shù)據(jù)定義,數(shù)據(jù)操作,數(shù)據(jù)控制它要求能充分反映現(xiàn)實世界,易于理解,易于變動。通過對數(shù)據(jù)庫數(shù)據(jù)流和停車場收費系統(tǒng)的各個實體和實體間的相互聯(lián)系 可以得到以下三張表:
7 數(shù)據(jù)庫的鏈接[9]
本文程序開發(fā)選用 ADO(ActiveX Data Objects)方式連接、操作數(shù)據(jù)庫。微軟公司的 ADO 是一個用于存取數(shù)據(jù)源的 COM 組件。它提供了編程語言和統(tǒng)一數(shù)據(jù)訪問方式 OLE DB 的一個中間層。ADO 有很強的數(shù)據(jù)訪問能力,支持多種底層的數(shù)據(jù)源;采用分層結(jié)構(gòu)連接數(shù)據(jù)有利于提高應(yīng)用程序的獨立性,使它不依賴于底層的數(shù)據(jù)庫類型,便于數(shù)據(jù)庫升遷。允許開發(fā)人員編寫訪問數(shù)據(jù)的代碼而不用關(guān)心數(shù)據(jù)庫是如何實現(xiàn)的,而只用關(guān)心到數(shù)據(jù)庫的連接。訪問數(shù)據(jù)庫的時候,關(guān)于 SQL 的知識不是必的,但是特定數(shù)據(jù)庫支持的 SQL命令仍可以通過 ADO 中的命令對象來執(zhí)行。[10]
8 結(jié)束語
停車場收費系統(tǒng)是一個復(fù)雜的系統(tǒng),需要事先和用戶進行詳細的需求分析溝通,才能設(shè)計出既經(jīng)濟又方便使用的系統(tǒng)。該文詳細分析了小型停車場收費系統(tǒng)的工作流程,以及各模塊所實現(xiàn)的功能,在數(shù)據(jù)庫的選擇和連接方面也給于了一定的分析和介紹。工作人員通過該系統(tǒng)可以進行簡單的計費功能,按用戶需求查詢,用戶管理和報表等操作。在今后的學(xué)習中還有許多軟件理論和編程實踐有待進一步深入了解學(xué)習。
參考文獻:
[1] 王晶晶,武穎嫻.停車場及其收費問題分析[J].財經(jīng)界,2006(4):243-244.
[2] 陳榕.停車場管理系統(tǒng)的設(shè)計與實現(xiàn)[J].科技創(chuàng)新導(dǎo)報,2009(23).
[3] 于軍琪.智能建筑課程設(shè)計與項目實例[M].北京:中國電力出版社,2011.
[4] 陳宏朝.Access數(shù)據(jù)庫實用教程[M].北京:清華大學(xué)出版社,2010.
[5] 宋振會.SQL Server 2000中文版基礎(chǔ)教程[M].北京:清華大學(xué)出版社,2010.
[6] 溫秀梅,丁學(xué)鈞.Visual C++面向?qū)ο蟪绦蛟O(shè)計教程與實驗[M].北京:清華大學(xué)出版社,2005.
[7] Ian Sommerville.Software Engineering,Ninth Edition[M].New Jersey:Pearson Education,2001.
[8] 黃衛(wèi),李洪濤,陳里得.通行費征收計算機管理系統(tǒng)數(shù)據(jù)庫設(shè)計[J].東南大學(xué)學(xué)報:自然科學(xué)版,1998(3):68-71.
[9] 啟明工作室.[MIS系統(tǒng)開發(fā)與應(yīng)用(Visual C++ SQL Server版)[M].]北京:人民郵電出版社,2010.
[10] 梁普選.Visual c++6.0數(shù)據(jù)庫編程大全[M].北京:電子工業(yè)出版社,2000.