www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > 嵌入式 > 嵌入式教程
[導讀]一種車輛管理系統(tǒng)的設計與實現(xiàn)

隨著社會的進步和科技的發(fā)展,人們對安全防范的需求越來越迫切。對進出公司或單位的車輛實行自動跟蹤管理就是其中的一項需求。車輛出入自動跟蹤識別管理系統(tǒng)正是為滿足用戶這一日益增長的需求而開發(fā)的現(xiàn)代化的智能管理系統(tǒng)。該系統(tǒng)是在Smartkey的自動控制技術(shù)基礎上發(fā)展起來的,集世界上最先進的遠距離讀卡技術(shù)、計算機技術(shù)、網(wǎng)絡技術(shù)和機電一體化技術(shù)于一身的高科技產(chǎn)品,從而達到合法車輛自由進出、非法車輛進行管制的目的。該系統(tǒng)具有很好的開放性,易于與其它系統(tǒng)組成更強大的綜合性智能化管理系統(tǒng)。

本文介紹的車輛管理系統(tǒng)就是針對當前本公司使用和管理車輛的流程而量身定做的一個系統(tǒng)。其設計方案是以B/S結(jié)構(gòu)為基礎,運用ASP.NET2.0和Access數(shù)據(jù)庫,充分利用VS2005提供的數(shù)據(jù)控件。采用這種方案可以花最少的人力、物力、財力,在最短的時間、以最優(yōu)的方式來實現(xiàn)最終的功能。

1  ASP.NET2.0介紹

ASP.NET2.0 (ASP:Active Server Page) 是微軟的。NET框架更新版本。NET2.0中的一部分,是一種重要的,流行的動態(tài)WEB開發(fā)技術(shù)。使用ASP.NET 2.0進行開發(fā),最常用的,也是最方便的,最重要的工具,莫過于微軟自身提供的Visual STudio 了,最新版本為Visual Studio 2010,但是2008及2005版本仍然有很多公司及開發(fā)人員在使用。使用這種IDE的最大好處就是方便,大大的提高了生產(chǎn)效率。當然僅僅使用NOte PAD也可以編出像樣的東西來,但是應該沒有開發(fā)人員使用那種簡單低效的方法進行開發(fā)。

ASP.NET2.0應用程序由界面和程序代碼兩大部分構(gòu)成:

(1)界面部分,也可稱為"可視化組件"(Visual CompONent),主要由HTML標記和控件標記構(gòu)成,從<html>標記開始,至</html>結(jié)束。這部分主要用于定義頁面的外觀顯示特性和應用程序所包含的控件標識。它與Visual Basic或Delphi應用程序的Windows窗體部分相當。在"可視化組件"部分中也可以包含客戶端腳本程序(或VBScript腳本程序)。與以前HTML語言不同的是,由于ASP.NET2.0使用了Web服務器控件進行界面設計,所以ASP.NET2.0應用程序的界面部分包含了控件標記,例如<ASP:TextBox id="username"runat="server"/>,即為一個文本框控件標記??丶擞浛雌饋砗芟馠TML語法,但與HTML語法又不完全相同。

(2)程序代碼部分,也可稱為"用戶接口邏輯"(User Interface Logic),由高級語言程序代碼組成,由腳本程序標記<Script Language="高級語言名稱"  runat="Server">和</Script>將程序包含起來。程序代碼的作用主要是進行窗體和控件事件的處理。ASP.NET2.0支持多種高級語言程序代碼,包括Visual Basic.NET和C#等,所使用的高級語言名稱在<Script>標記中指出。

ASP.NET2.0程序的后綴名是。ASPX.當一個瀏覽器第一次請求一個ASPX文件時,ASP.NET2.0頁面將被CLR編譯器編譯。此后,當再有用戶訪問此頁面時,由于ASPX頁面已經(jīng)被編譯過,所以CLR會直接執(zhí)行編譯過的代碼。這與ASP的情況完全不同。ASP只支持VBScript和這樣的解釋性腳本語言,所以ASP頁面是解釋執(zhí)行的:當用戶發(fā)出請求后,無論是第幾次執(zhí)行,ASP頁面都將被動態(tài)解釋執(zhí)行。而ASP.NET2.0支持可編譯的語言,包括VB.NET、C#、Jscript、。NET等。所以,ASP.NET2.0是一次編譯、多次執(zhí)行。

為了簡化程序員的工作,ASPX頁面不需要手工編譯,而是在頁面被調(diào)用時,由CLR自行決定是否編譯。一般來說,下面兩種情況下,ASPX會被重新編譯:

(1)ASP.NET2.0頁面第一次被瀏覽器請求;

(2)ASP.NET2.0程序被改寫。

由于ASPX頁面可以被編譯,所以ASPX頁面具有組件一樣的性能。這就使得ASPX頁面至少比同樣功能的ASP頁面快2倍以上。

2 系統(tǒng)角色的劃分

根據(jù)需求分析中各個不同角色的不同權(quán)限,該系統(tǒng)分為6種角色,每種角色分別享有不同的權(quán)限。這6種角色按照權(quán)限的大小從低到高依次為:

(1)普通用戶(普通員工)

權(quán)限:近途、長途用車申請;補單;轉(zhuǎn)單;查看歷史記錄。

(2)司機(專、兼職司機)

權(quán)限:車輛信息、駕駛員信息錄入;車輛日常保養(yǎng)、故障維修、車輛保險、年審和重大事故錄入;用車申請、補單、轉(zhuǎn)單。

(3)中級用戶(各部門主任)

權(quán)限:部門員工近途、長途用車審批;部門用車查看;部門車輛保養(yǎng);用車申請、補單、轉(zhuǎn)單。

(4)特殊用戶(總經(jīng)理、副總經(jīng)理)

權(quán)限:公司派車單查看;車輛狀態(tài)、駕駛員狀態(tài)查看;車輛運行按月統(tǒng)計、年度統(tǒng)計;車輛日常保養(yǎng)信息查看等。

(5)高級用戶(總經(jīng)部主任)

權(quán)限:公司派車單審批、查看、查詢、取消派車;車輛狀態(tài)、駕駛員狀態(tài)查看;車輛運行按月統(tǒng)計、年度統(tǒng)計;車輛日常保養(yǎng)信息查看等。

6)管理員

權(quán)限:管理數(shù)據(jù)庫中的全部表信息;備份數(shù)據(jù)庫;添加用戶。

不同級別的用戶擁有不同的權(quán)限,所以不同角色用戶登陸后進入的主頁面也不同,除了管理員之外,高級用戶擁有相對較多的權(quán)利,圖1展示了高級用戶的主頁面。

3 數(shù)據(jù)庫設計

數(shù)據(jù)庫(Database)是按照數(shù)據(jù)結(jié)構(gòu)來組織、存儲和管理數(shù)據(jù)的倉庫,它產(chǎn)生于距今五十年前,隨著信息技術(shù)和市場的發(fā)展,特別是二十世紀九十年代以后,數(shù)據(jù)管理不再僅僅是存儲和管理數(shù)據(jù),而轉(zhuǎn)變成用戶所需要的各種數(shù)據(jù)管理的方式。數(shù)據(jù)庫有很多種類型,從最簡單的存儲有各種數(shù)據(jù)的表格到能夠進行海量數(shù)據(jù)存儲的大型數(shù)據(jù)庫系統(tǒng)都在各個方面得到了廣泛的應用。

根據(jù)系統(tǒng)的需要。數(shù)據(jù)庫中共設計了14個表。它們分別是:用戶表、近途車輛使用表、長途車輛使用表、駕駛員檔案表、車輛檔案表、車輛類型表、車輛保險檔案表、車輛保險類型表、車輛故障維修表、車輛故障維修明細表、車輛日常保養(yǎng)表、車輛日常保養(yǎng)明細表、車輛年審信息表、車輛重大事件表。圖2展示了這些表的關(guān)系。

4.1 系統(tǒng)的功能模塊

如果說從縱向分析這個系統(tǒng)可以分為6種角色的話,從橫向來看,系統(tǒng)又可以劃分為多個功能模塊,如用車管理、車輛養(yǎng)護、車輛信息、統(tǒng)計報表、系統(tǒng)管理。這幾個功能模塊針對不同的角色分發(fā)不同的權(quán)限,如車輛養(yǎng)護,中級用戶只能填寫和查看本部門的車輛,而高級用戶可以查看整個公司的車輛養(yǎng)護信息。

4.2 用車管理

用車管理指的是申請人填寫派車單,然后部門審核、總經(jīng)部審核,最后申請人還車填寫公里數(shù)和各種費用完成單子的流轉(zhuǎn)。用車管理難點就是派車單的流轉(zhuǎn).

為了實現(xiàn)派車單的流轉(zhuǎn),本系統(tǒng)采取對數(shù)據(jù)庫表中關(guān)鍵字判斷的方式實現(xiàn)流程的控制,如一個長途派車單;申請人填寫的內(nèi)容只是長途車輛使用表中的部分字段;如果表中該記錄"部門審核結(jié)果"字段為空就說明部門領(lǐng)導還沒有審核,這時如部門主任登陸就可以看到該派車單,然后需要對該派車單審批。審批完后,"部門審批人"和"部門審批結(jié)果"字段就不為空,但是因為總經(jīng)部還未審核,所以"總經(jīng)部審核結(jié)果"字段為空。根據(jù)這個判斷條件,可以顯示出總經(jīng)部要審核的派車單,總經(jīng)部主任登陸后可以看到該派車單,然后進行審批,當"部門審核結(jié)果"和"總經(jīng)部審核結(jié)果"都不為空時,就說明派車單審核流程已完成,接下來就需要申請人在用車后填寫公里數(shù)和費用,這個派車單才算結(jié)束。

派車單流轉(zhuǎn)的過程中,還涉及車輛的狀態(tài)問題,在該系統(tǒng)中,部門派車是用車者自己選擇部門的車輛出車;而總經(jīng)部派車是總經(jīng)部主任選擇公司的車輛出車。派車單的派車類型如果是部門派車,在申請人選擇本部門車輛的同時,該車輛的狀態(tài)就由"空閑"變?yōu)?quot;出車",而總經(jīng)部派車是在總經(jīng)部主任分配了公司的某個車輛出車后該車輛的狀態(tài)才變?yōu)?quot;出車".車輛的狀態(tài)一旦變?yōu)?quot;出車"就不能再被派遣,只有在申請人還車時填寫了公里數(shù)和費用后車輛的狀態(tài)才變?yōu)?quot;空閑".

4.3 車輛養(yǎng)護和車輛信息

這兩個模塊在邏輯功能上相對較簡單,通過司機用戶進入相應的界面可以實現(xiàn)信息的錄入,特殊用戶、高級用戶可以對車輛信息和車輛養(yǎng)護情況了解和查看。

4.4 統(tǒng)計報表

統(tǒng)計報表分為按月統(tǒng)計和年度統(tǒng)計兩部分,它們的實現(xiàn)主要采用分為SQL語句中的SUM函數(shù)通過限定一定的時間范圍從而得出想要的結(jié)果。以下就是年度統(tǒng)計頁面中用到的SQL語句。

  string  YearSum="SELECT 車輛, 月份, sum(汽油費合計) AS 總汽油費, sum(公里合計) AS 總公里數(shù)"

  + " FROM (select 車輛, month(出車時間) AS 月份, sum(汽油費) AS 汽油費合計, sum(止公里數(shù)-起公里數(shù)) AS 公里合計"

  + " FROM CTCLSYB"

  + " WHERE 車輛=′" + DropDownList1.SelectedValue    + "′and year(出車時間)=′"+DropDownList2.SelectedValue+"′"

  + "GROUP BY month(出車時間), 車輛"

  + "UNION select 車輛,month(出車時間) as 月份,sum(汽油費) AS 汽油費合計, sum(止公里數(shù)-起公里數(shù)) AS 公里合計"

  + "FROM JTCLSYB"

  + "WHERE 車輛=′"+DropDownList1.SelectedValue+"′and year(出車時間)=′"+DropDownList2.SelectedValue+"′"

  + "group BY month(出車時間), 車輛) AS A"

  + "GROUP BY 月份, 車輛");          DataTable dt = DataLayer.Select("SELECT 車輛, 月份, sum(汽油費合計) AS 總汽油費, sum(公里合計) AS 總公里數(shù)"

  + " FROM (SELECT 車輛, month(出車時間) AS 月份, sum(汽油費) AS 汽油費合計, sum(止公里數(shù)-起公里數(shù)) AS 公里合計"

  + " FROM CTCLSYB"

  + " WHERE 車輛=′" + DropDownList1.SelectedValue + "′and year(出車時間)=′" + DropDownList2.SelectedValue + "′"

  + " GROUP BY month(出車時間), 車輛"

  + " UNION select 車輛, month(出車時間) as月份,sum(汽油費) AS 汽油費合計, sum(止公里數(shù)-起公里數(shù)) AS 公里合計"

  + " FROM JTCLSYB"

  + " WHERE 車輛=′"+DropDownList1.SelectedValue + "′and year(出車時間)=′"+DropDownList2.SelectedValue+"'"

  + " group BY month(出車時間), 車輛) AS A"

  + " GROUP BY 月份, 車輛");

4.5 系統(tǒng)管理

系統(tǒng)管理主要負責對數(shù)據(jù)庫中所有表的管理,包括修改和刪除、增加用戶、備份和恢復數(shù)據(jù)庫等。

車輛管理系統(tǒng)目前已經(jīng)在公司使用,取得了良好的效果。B/S模式下,客戶端較簡單,便于應用程序的維護;集中式的數(shù)據(jù)管理,使數(shù)據(jù)庫的維護更加方便,而且使得信息統(tǒng)計更為全面準確。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動電源

在工業(yè)自動化蓬勃發(fā)展的當下,工業(yè)電機作為核心動力設備,其驅(qū)動電源的性能直接關(guān)系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護是驅(qū)動電源設計中至關(guān)重要的兩個環(huán)節(jié),集成化方案的設計成為提升電機驅(qū)動性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機 驅(qū)動電源

LED 驅(qū)動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設備的使用壽命。然而,在實際應用中,LED 驅(qū)動電源易損壞的問題卻十分常見,不僅增加了維護成本,還影響了用戶體驗。要解決這一問題,需從設計、生...

關(guān)鍵字: 驅(qū)動電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動電源的公式,電感內(nèi)電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設計 驅(qū)動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動汽車的核心技術(shù)之一是電機驅(qū)動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅(qū)動系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動汽車的動力性能和...

關(guān)鍵字: 電動汽車 新能源 驅(qū)動電源

在現(xiàn)代城市建設中,街道及停車場照明作為基礎設施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動電源 LED

LED通用照明設計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現(xiàn)在的LED驅(qū)動電源

關(guān)鍵字: LED 驅(qū)動電源 開關(guān)電源

LED驅(qū)動電源是把電源供應轉(zhuǎn)換為特定的電壓電流以驅(qū)動LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動電源
關(guān)閉