網(wǎng)吧信息管理系統(tǒng)_第1頁
網(wǎng)吧信息管理系統(tǒng)_第2頁
網(wǎng)吧信息管理系統(tǒng)_第3頁
網(wǎng)吧信息管理系統(tǒng)_第4頁
網(wǎng)吧信息管理系統(tǒng)_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、目錄第一章 系統(tǒng)概述11.1 系統(tǒng)開發(fā)的背景和意義11.2 系統(tǒng)開發(fā)技術(shù)11.2.1 VB.NET概述11.2.2 SQL Server數(shù)據(jù)庫2第二章 可行性分析32.1 可行性概述32.2 可行性研究3第三章 系統(tǒng)需求分析43.1 傳統(tǒng)網(wǎng)吧管理43.2 系統(tǒng)優(yōu)點43.3 系統(tǒng)功能需求43.3.1 系統(tǒng)邏輯模型53.3.2 服務(wù)端53.3.3 客戶端63.4 系統(tǒng)的設(shè)計原則63.5 系統(tǒng)設(shè)計的思想63.5.1 系統(tǒng)設(shè)計結(jié)構(gòu)63.5.2 系統(tǒng)實現(xiàn)技術(shù)7第四章 系統(tǒng)的總體設(shè)計84.1 系統(tǒng)功能設(shè)計84.2 系統(tǒng)功能模塊簡介94.2.1 客戶端功能模塊94.2.2 服務(wù)端功能模塊94.2.3 數(shù)據(jù)庫

2、設(shè)計10第五章 詳細(xì)設(shè)計135.1 關(guān)鍵模塊設(shè)計135.1.1 登陸模塊135.1.2 客戶端模塊135.1.3 服務(wù)端模塊145.2 系統(tǒng)界面設(shè)計155.2.1 登錄界面155.2.2 客戶端界面165.2.3 服務(wù)端界面17第六章 編碼實現(xiàn)196.1 系統(tǒng)功能實現(xiàn)196.2 登陸模塊編碼196.3 客戶端模塊編碼206.4 服務(wù)端模塊編碼23第七章 系統(tǒng)測試277.1 系統(tǒng)測試目標(biāo)277.2 系統(tǒng)測試方案277.3 具體測試287.3.1 登錄模塊測試287.3.2 客戶端測試287.3.3 服務(wù)端測試30結(jié)束語31參考文獻32第一章 系統(tǒng)概述1.1 系統(tǒng)開發(fā)的背景和意義隨著計算機技術(shù)的日

3、月更新,越來越多的人們注重加強對計算機知識的學(xué)習(xí),為了滿足學(xué)校學(xué)生或者社會學(xué)員的需求,許多網(wǎng)吧都紛紛對外開放,實行計時收費。但隨著上機人數(shù)的增多,網(wǎng)吧的管理成了一個非常困難的問題。首先,人工計時收費是非常繁瑣的一項工作,耗費人力物力,而且極容易出錯;最后的統(tǒng)計工作更是一項費時費力的苦差事,甚至不能統(tǒng)計。其次,上機過程中,每個網(wǎng)吧都需要值班人員值班,耗費了管理人員的很多時間。隨著計算機各種外圍設(shè)備技術(shù)的發(fā)展,以上工作通過計算機就可以很方便地實現(xiàn)。為了適應(yīng)當(dāng)前網(wǎng)吧管理無人化的需求,本人試圖利用自己大學(xué)所學(xué)專業(yè)知識并結(jié)合教學(xué)管理中的實際情況和其它類似計費軟件的優(yōu)點,開發(fā)了一套網(wǎng)吧收費系統(tǒng)軟件。本系統(tǒng)

4、可以解決網(wǎng)吧管理中存在的幾個實際問題:1 減少值班人員、維護人員,降低管理人員費用,甚至可以做到網(wǎng)吧無需人員值守管理。2 增加網(wǎng)吧的開放時間,提高設(shè)備的利用率。3 解決目前網(wǎng)吧管理中的人情免費上機、脫逃費問題。1.2 系統(tǒng)開發(fā)技術(shù)1.2.1 VB.NET概述VB.net是微軟最新平臺技術(shù),是.net framework SDK的一種語言。編譯以后生成的可執(zhí)行文件被稱為Assembly,即程序集。它的運行是建立在CLR(Common Language Runtime)MSIL(Microsoft Intermediate Language)虛擬器上的。其實,它的機制和Java差不多。 VB.ne

5、t的語言特點有下:1 代碼托管。被托管的代碼享受.net framework提供的安全保障和垃圾回收機制,但是這也同時表明,程序被框在Framework里面了。API變得不太方便。2 強大的面向?qū)ο筇匦浴,F(xiàn)在VB7已經(jīng)是一個完全的面向?qū)ο蟪绦?。它已?jīng)支持類的各種特性:繼承,函數(shù)的覆蓋,重載,虛擬,隱藏。3 功能強大,程序界面更標(biāo)準(zhǔn)。4 程序代碼結(jié)構(gòu)化更強,開發(fā)環(huán)境舒適體貼。1.2.2 SQL Server數(shù)據(jù)庫美國Microsoft公司推出的一種關(guān)系型數(shù)據(jù)庫系統(tǒng)。SQLServer是一個可擴展的、高性能的、為分布式客戶機/服務(wù)器計算所設(shè)計的數(shù)據(jù)庫管理系統(tǒng),實現(xiàn)了與WindowsNT的有機結(jié)合,

6、提供了基于事務(wù)的企業(yè)級信息管理系統(tǒng)方案。其主要特點如下: 1 高性能設(shè)計,可充分利用WindowsNT的優(yōu)勢。2 系統(tǒng)管理先進,支持Windows圖形化管理工具,支持本地和遠程的系統(tǒng)管理和配置。3 強壯的事務(wù)處理功能,采用各種方法保證數(shù)據(jù)的完整性。4 支持對稱多處理器結(jié)構(gòu)、存儲過程、ODBC,并具有自主的SQL語言。 SQLServer以其內(nèi)置的數(shù)據(jù)復(fù)制功能、強大的管理工具、與Internet的緊密集成和開放的系統(tǒng)結(jié)構(gòu)為廣大的用戶、開發(fā)人員和系統(tǒng)集成商提供了一個出眾的數(shù)據(jù)庫平臺第二章 可行性分析2.1 可行性概述可行性分析也稱為可行性研究,是在系統(tǒng)調(diào)查的基礎(chǔ)上,針對新系統(tǒng)的開發(fā)是否具備必要性和

7、可能性,對新系統(tǒng)的開發(fā)從技術(shù)、經(jīng)濟、社會的房買你進行分析和研究,以避免投資失誤,保證新系統(tǒng)的開發(fā)成功??尚行匝芯康哪康木褪怯米钚〉拇鷥r在盡可能短的時間內(nèi)確定問題是否能夠解決。2.2 可行性研究數(shù)據(jù)庫是指自描述的完整記錄的集合。數(shù)據(jù)庫技術(shù)在20世紀(jì)60年代中期產(chǎn)生,它的出現(xiàn)使信息系統(tǒng)的研制從加工數(shù)據(jù)的程序為中心轉(zhuǎn)變?yōu)楣蚕頂?shù)據(jù)庫為中心來進行。數(shù)據(jù)庫開始時在大公司或機構(gòu)中進行大規(guī)模數(shù)據(jù)處理后來隨著計算機的逐漸普及,數(shù)據(jù)庫才應(yīng)用到計算機上。數(shù)據(jù)庫發(fā)展到今天,已經(jīng)是相當(dāng)成熟的階段,它對大量處理能力的不斷提高,發(fā)展和完善。本系統(tǒng)的開發(fā)利用VS2008作為開發(fā)工具。VS2008是一個具有完善開發(fā)工具的平臺。

8、VS2008提供的工具適合各種水平層次無論是初學(xué)者還是有經(jīng)驗的團隊,并適合各種不同的開發(fā)需求。降低了開發(fā)的復(fù)雜度,其提供給開發(fā)者更加簡便動態(tài)的.Net Framework基礎(chǔ)解決方案,其中包括了windows應(yīng)用程序開發(fā)、office嵌入開發(fā)、Web應(yīng)用開發(fā)、移動應(yīng)用程序開發(fā)。改進了團隊交流方式,VS2008為團隊開發(fā)提供通道和完整的開發(fā)周期工具,從而增加了團隊內(nèi)部的交流與協(xié)作的效率。通過學(xué)習(xí),熟悉和掌握VB.NET的使用方法,使用VS2008作為開發(fā)工具將使整個系統(tǒng)的模塊化設(shè)計變得更加簡便。系統(tǒng)采用SQL SERVER 2005作為開發(fā)數(shù)據(jù)庫。SQL SERVER 2005是一種客戶機/服務(wù)

9、器結(jié)構(gòu)的關(guān)系數(shù)據(jù)庫管理系統(tǒng)。SQL SERVER 2005提供了許多易于使用的圖形化工具和向?qū)?,其中最常用的是服?wù)管理器、企業(yè)管理器和查詢分析器。它們?yōu)閯?chuàng)建和管理數(shù)據(jù)庫帶來了很大的方便。第三章 系統(tǒng)需求分析3.1 傳統(tǒng)網(wǎng)吧管理網(wǎng)吧是隨人們生活中對計算機越來越需要而建立的,這類網(wǎng)吧大多存在于學(xué)校,公司,圖書館等大型公共場所,在網(wǎng)吧建立之初,沒有網(wǎng)吧計費系統(tǒng)的情況下,網(wǎng)吧的管理完全人工化。逃費,人情上機,計費錯誤等情況不可避免地出現(xiàn)。也可以說是網(wǎng)吧現(xiàn)象中的一部分,這類情況給管理人員帶來很大的麻煩,逃費和計費錯誤會給網(wǎng)吧管人員在財力帶來損失或誤會,人情上機會給管理人員帶來生活中尷尬的煩惱。這類情況一

10、再發(fā)生,就會在管理人員精神上帶來越來越大的壓力。上機用戶有時也會因管理人員的失誤帶來不必要的麻煩。漸漸大家對網(wǎng)吧就會有一種厭惡感和恐懼感。同時,在人工長期使用,會形成大量的數(shù)據(jù),這些數(shù)也會使得數(shù)據(jù)管理上的混亂。3.2 系統(tǒng)優(yōu)點人工管理網(wǎng)吧實在存在很大的問題,而且浪費太多的人力,物力。計算機一點一丁的入侵人類的生活,計算機管理代替人工管理是不可避免的,像網(wǎng)吧管理這類不要求在管理上創(chuàng)新,機械般管理更加完美的前提下,我選擇設(shè)計開發(fā)網(wǎng)吧計費系統(tǒng),希望能改善網(wǎng)吧管理上的混亂情況,也避免了管理人員的工作麻煩。使用網(wǎng)吧計費系統(tǒng)優(yōu)于人工管理在于:1 管理人員的工作量。2 計費準(zhǔn)確無誤。3 避免人情上機的尷尬。

11、4 工作迅速快捷。3.3 系統(tǒng)功能需求網(wǎng)吧計費系統(tǒng)的主要功能有:1 服務(wù)端(包括管理員管理,用戶信息管理)2 客戶端(用戶使用計算機的所有情況)3 系統(tǒng)數(shù)據(jù)的初始化,查詢,修改,刪除。3.3.1 系統(tǒng)邏輯模型為了實現(xiàn)管理信息系統(tǒng)的計算機化,僅僅用文字來描述信息的流動和存儲還遠遠不夠,還要進一步調(diào)查分析舍去物質(zhì)流,抽象出信息流,繪制出數(shù)據(jù)流程圖,并對各種數(shù)據(jù)的屬性和各項處理功能進行詳細(xì)分析。系統(tǒng)分析的主要成果是系統(tǒng)的邏輯模型。本系統(tǒng)主要是以數(shù)據(jù)流程圖、E-R圖和系統(tǒng)功能模塊圖為主要描述工具來勾畫系統(tǒng)的概貌。對系統(tǒng)的功能進行分析,綜合本系統(tǒng)設(shè)計的服務(wù)器端與客戶端,總結(jié)整個系統(tǒng)功能模塊。圖3.1頂層

12、數(shù)據(jù)流圖用戶信息用戶信息登陸用戶管理員上機更新用戶消費信息下機用戶信息3.3.2 服務(wù)端1 管理員管理主要包括:操作用戶管理、操作員登錄、修改密碼、設(shè)置上機費用。這其中大部分是標(biāo)準(zhǔn)數(shù)據(jù)的維護,包括新增、修改、刪除等;2 用戶信息管理主要包括:用戶充值、查詢用戶費用、刪除用戶信息、添加用戶信息、修改用戶信息。這里區(qū)分不同的用戶類型,按照不同用戶類型設(shè)置上機費用等;3 上機記錄主要負(fù)責(zé)接收客戶端程序發(fā)送來的上、下機信息,進行上、下機的處理,在處理上機登錄時要進行用戶的合法性檢測。檢測通過后產(chǎn)生一條用戶上機記錄,記錄下計算機代碼、賬號、登錄開始時間等信息。處理下機信息時,要記錄下此用戶下機的詳細(xì)時間

13、。計費時要將當(dāng)前使用費用記錄在上機記錄中,并在用戶的檔案記錄的余額字段中扣減。3.3.3 客戶端首先要求將客戶端的桌面、任務(wù)管理器、系統(tǒng)狀態(tài)欄等系統(tǒng)功能鎖定,桌面上只有客戶登錄程序界面,要求用戶輸入用戶代碼和密碼進行登錄。登錄信息要求數(shù)據(jù)庫中的信息來判斷其合法性,并反饋一個信息給客戶端,如果一切合法的話,再將桌面、任務(wù)管理器等功能解鎖,讓用戶正常使用??蛻舳顺绦蛞笳M?吭谙到y(tǒng)托盤中,用戶下機時要求點擊此圖標(biāo)進行下機,客戶端將下機信息發(fā)送到數(shù)據(jù)庫,系統(tǒng)關(guān)機。3.4 系統(tǒng)的設(shè)計原則根據(jù)系統(tǒng)的需求分析,計費系統(tǒng)屬于網(wǎng)絡(luò),計算機使用費用,作息管理及數(shù)據(jù)庫于一體的綜合性系統(tǒng),因而,網(wǎng)吧計費系統(tǒng)在總體

14、設(shè)計時應(yīng)遵循以下原則上:1 系統(tǒng)的功能設(shè)計完善性,滿足多方的使用需求。2 系統(tǒng)應(yīng)具有良好的穩(wěn)定性,實用性,安全性。設(shè)計理念應(yīng)是客戶容易使用。3 數(shù)據(jù)庫結(jié)構(gòu)設(shè)計合理,各類屬性符合要求。3.5 系統(tǒng)設(shè)計的思想3.5.1 系統(tǒng)設(shè)計結(jié)構(gòu)基于網(wǎng)吧計費系統(tǒng)的綜合性,而且為了滿足多方使用的需求,本系統(tǒng)以c/s的框架結(jié)構(gòu)為基本結(jié)構(gòu)模式:(如圖3.2所示)客戶端服務(wù)端數(shù)據(jù)庫服務(wù)器圖3.2 系統(tǒng)結(jié)構(gòu)圖3.5.2 系統(tǒng)實現(xiàn)技術(shù)系統(tǒng)實現(xiàn)所需開發(fā)環(huán)境VisualBasic.NET,它是下一代的VisualBasic。而并不是簡單的在VisualBasic6.0上在添加一些新特性而已,微軟重新設(shè)計了產(chǎn)品以便使開發(fā)者能夠更

15、加容易的開發(fā)分布式應(yīng)用,例如基于WEB的程序以及多層系統(tǒng)。VisualBasic.NET中有兩種窗體包,Windows窗體以及Web窗體;一個新版的ADO用于接受離線數(shù)據(jù)源;新的語言,移走了原來的關(guān)鍵字,提高Type數(shù)據(jù)的安全性以及提供低級別結(jié)構(gòu)以滿足高級別開發(fā)者的需求。這些新的特性為VisualBasic開發(fā)者提供了新的開發(fā)窗口:通過Web窗體以及ADO.NET,你可以快速開發(fā)可擴展的Web站點;通過繼承,該語言實現(xiàn)了真正的支持面向?qū)ο缶幊蹋╫bject-orientedprogramming);Windows窗體本身支持可視繼承;現(xiàn)在展開程序就像拷貝可執(zhí)行文件和控件到另一個目錄那樣簡單。V

16、isual Basic.NET現(xiàn)在完全集成在其它的Microsoft Visual Studio.NET語言中,不僅可以通過不同的語言開發(fā)組件,而且通過交叉語言繼承,可以從用一種語言編寫的類中派生用另一種語言編寫的類。第四章 系統(tǒng)的總體設(shè)計4.1 系統(tǒng)功能設(shè)計本系統(tǒng)包含兩個子系統(tǒng),其中網(wǎng)吧的客戶用的是客戶端子系統(tǒng),而網(wǎng)管所使用的則是服務(wù)端子系統(tǒng)。每個子系統(tǒng)包換了若干子功能模塊,每個子功能模塊完成相應(yīng)的處理操作功能。網(wǎng)吧計費系統(tǒng)管理員表管理消費記錄管理客戶端管理端用戶信息管理用戶登錄用戶計費管理員登陸圖 4.1 系統(tǒng)總功能框圖客戶端負(fù)責(zé)用戶信息驗證和記錄用戶的上機信息。管理端是直接操作數(shù)據(jù)庫信息

17、,實現(xiàn)對整個系統(tǒng)的管理。4.2 系統(tǒng)功能模塊簡介4.2.1 客戶端功能模塊1 客戶登陸輸入用戶名與密碼登錄系統(tǒng)通過對比用戶名與密碼確定用戶是否合法2 計費模塊獲取登陸時間并保存到數(shù)據(jù)庫獲取下機時間并保存到數(shù)據(jù)庫計算花費并保存到數(shù)據(jù)庫計算余額并保存到數(shù)據(jù)庫4.2.2 服務(wù)端功能模塊1 管理員的登陸輸入用戶名與密碼登陸系統(tǒng)通過對比用戶名與密碼確定用戶是否合法2 用戶信息管理添加用戶修改用戶刪除用戶3 管理員信息管理添加管理員修改管理員刪除管理員4 消費記錄管理查看消費記錄4.2.3 數(shù)據(jù)庫設(shè)計該系統(tǒng)數(shù)據(jù)庫使用的是SQLserver ,美國Microsoft公司推出的一種關(guān)系型數(shù)據(jù)庫系統(tǒng)。SQLSe

18、rver是一個可擴展的、高性能的、為分布式客戶機/服務(wù)器計算所設(shè)計的數(shù)據(jù)庫管理系統(tǒng),實現(xiàn)了與WindowsNT的有機結(jié)合,提供了基于事務(wù)的企業(yè)級信息管理系統(tǒng)方案。1 概念結(jié)構(gòu)設(shè)計概念結(jié)構(gòu)設(shè)計的任務(wù)是在需求分析階段產(chǎn)生的需求說明書的基礎(chǔ)上,按照特定的方法把它們抽象為一個不依賴于任何具體機器的數(shù)據(jù)模型,即概念模型。概念模型使設(shè)計者的注意力能夠從復(fù)雜的實現(xiàn)細(xì)節(jié)中解脫出來,而只集中在最重要的信息的組織結(jié)構(gòu)和處理模式上。概念模型具有以下的特點:(1) 概念模型是對現(xiàn)實世界的抽象和概括,它真實、充分地反映了現(xiàn)實世界中事物和事物之間的了解,能滿足用戶對數(shù)據(jù)的處理要求。(2) 由于概念模型簡潔、明晰、獨立于計

19、算機,很容易理解,因此可以用概念模型和不熟悉計算機的用戶交換意見,使用戶能積極參與數(shù)據(jù)庫的設(shè)計工作,保證設(shè)計工作順利進行。(3) 概念模型易于更新,當(dāng)應(yīng)用環(huán)境和應(yīng)用要求改變時,容易對概念模型修改和擴充。(4) 概念模型很容易向關(guān)系、網(wǎng)狀、層次等各種數(shù)據(jù)模型轉(zhuǎn)換。描述概念模型的有力工具是E-R圖。E-R模型是一個面向問題的概念模型,即用簡單的圖形方式(E-R圖)描述現(xiàn)實世界中的數(shù)據(jù)。這種描述不涉及數(shù)據(jù)在數(shù)據(jù)庫中表示和存取方法,非常接近人的思維方式。后來又提出了擴展實體了解模型(Extend Entity-Relationship Model),簡稱為“EER模型”。EER模型目前已經(jīng)成為一種使用

20、廣泛的概念模型,為面向?qū)ο蟮臄?shù)據(jù)庫設(shè)計提供了有效的工具。圖4.2 詳細(xì)E-R圖余額年齡用戶賬號密碼注冊日期上機費用管理員密碼性別年齡賬號年齡計算機計算機名使用管理管理11n11n2 邏輯結(jié)構(gòu)設(shè)計概念結(jié)構(gòu)設(shè)計所得的E-R模型是對用戶需求的一種抽象的表達形式,它獨立于任何一種具體的數(shù)據(jù)模型,因而也不能為任何一個具體的DBMS所支持。為了能夠建立起最終的物理系統(tǒng),還需要將概念結(jié)構(gòu)進一步轉(zhuǎn)化為某一DBMS所支持的數(shù)據(jù)模型,然后根據(jù)邏輯設(shè)計的準(zhǔn)則、數(shù)據(jù)的語義約束、規(guī)范化理論等對數(shù)據(jù)模型進行適當(dāng)?shù)恼{(diào)整和優(yōu)化,形成合理的全局邏輯結(jié)構(gòu),并設(shè)計出用戶子模式。數(shù)據(jù)庫邏輯結(jié)構(gòu)的設(shè)計分為兩個步驟:首先將概念設(shè)計所得的

21、E-R圖轉(zhuǎn)換為關(guān)系模型;然后對關(guān)系模型進行優(yōu)化。在網(wǎng)吧計費系統(tǒng)當(dāng)中包括了以上幾個ER模型向關(guān)系模型的轉(zhuǎn)換:用戶表(帳號,密碼,年齡,余額,上機費用,注冊日期)管理員表(帳號,密碼,姓名,年齡,性別)消費表(登陸帳號,登陸時間,下機時間,計算機名,花費)3 物理結(jié)構(gòu)設(shè)計 在表當(dāng)中,關(guān)鍵字(即編號)都采用自動編號的數(shù)據(jù)類型;日期都采用日期型的數(shù)據(jù)類型;凡是關(guān)于數(shù)據(jù)量的都采用數(shù)據(jù)型的數(shù)據(jù)類型;其他數(shù)據(jù)均采用文本型的數(shù)據(jù)類型。當(dāng)表之間有關(guān)系時通過添加外鍵來處理。當(dāng)表與其他表有關(guān)系時,便給該表建立一張視圖,通過外鍵將兩張表了解起來,通過數(shù)據(jù)篩選,把自己想要的信息提取出來,形成一張新的表。其數(shù)據(jù)庫中表的設(shè)

22、計具體如下:表4-1 用戶表列名數(shù)據(jù)類型允許空字段說明帳號Char(10)否主鍵密碼Char(10)否登錄密碼余額Money是用戶余額上機費用Money否每分鐘費用注冊日期Datetime是注冊日期表4-2 管理員表列名數(shù)據(jù)類型允許空字段說明帳號Char(10)否主鍵密碼Char(10)是登陸密碼姓名Varchar(50)是管理員姓名年齡Varchar(50)是管理員年齡性別Char(10)是管理員性別表4-3 消費表列名數(shù)據(jù)類型允許空字段說明登陸帳號Char(10)否主鍵登陸時間Datetime是登陸時間下機時間Datetime 是下機時間計算機名Varchar(50)是計算機名花費mone

23、y是花費第五章 詳細(xì)設(shè)計5.1 關(guān)鍵模塊設(shè)計此次設(shè)計的網(wǎng)吧計費系統(tǒng)主要包括三大模塊:系統(tǒng)登錄模塊、客戶端系統(tǒng)模塊、服務(wù)端系統(tǒng)模塊。系統(tǒng)登錄模塊由登錄界面組成;用戶的本次登陸信息顯示及操作功能模塊組成本系統(tǒng)的客戶端系統(tǒng);用戶信息管理、管理員信息管理、消費信息記錄組成本系統(tǒng)的服務(wù)端系統(tǒng)。客戶端系統(tǒng)主要是為普通用戶使用而設(shè)計的;而服務(wù)端系統(tǒng)是維護系統(tǒng)的數(shù)據(jù)、客戶端的數(shù)據(jù)內(nèi)容的顯示以及用戶信息的管理等,是為后臺管理員使用設(shè)計的。5.1.1 登陸模塊本系統(tǒng)在客戶端有一個用戶的登陸界面,在服務(wù)端有一個管理員的登陸界面,客戶端的登陸是用戶開始使用此計算機并開始計費,而服務(wù)器端的登陸界面是為了獲得管理整個系統(tǒng)

24、的權(quán)利。實現(xiàn)功能:驗證帳號和密碼的正確性。實現(xiàn)方法:添加數(shù)據(jù)庫連接,建立LINQ to SQL 類,使用LINQ語言調(diào)用數(shù)據(jù)庫信息,完成帳號和密碼的驗證,進入系統(tǒng)。實現(xiàn)方案:建立一個窗口,在窗口中添加兩個文本框,用來存放帳號和密碼,添加一個確定按鈕,用來觸發(fā)登陸事件。添加LINQ to SQL類,建立數(shù)據(jù)對象,通過LINQ語言查詢數(shù)據(jù)庫中是否存在登陸的帳號和密碼并匹配。如果存在則進入系統(tǒng),顯示主窗口,關(guān)閉登陸窗口(如圖5.1)。5.1.2 客戶端模塊實現(xiàn)功能:記錄用戶的登陸信息,計算用戶產(chǎn)生的費用,并發(fā)送給數(shù)據(jù)庫。實現(xiàn)方法:建立一個顯示窗口以顯示此次登陸的有效信息,獲取登陸時間和下機時間,計算

25、此次花費和帳戶余額,并將這些信息返回數(shù)據(jù)庫。具體方案:建立一個窗口,分別添加Label控件顯示登陸時間,已上機時間,本次花費。建立LINQ to SQL 類,添加數(shù)據(jù)庫服務(wù)器,調(diào)用系統(tǒng)時間函數(shù)獲取登陸時間和下機時間,調(diào)用數(shù)據(jù)庫中的用戶上機費用等信息,進行計算此次所花的費用。添加Timer控件持續(xù)更新當(dāng)前時間,計算并顯示已上機時間(如圖5.2)。開始輸入帳戶、密碼 N是否存在Y進入主界面圖 5.1 系統(tǒng)登陸流程圖獲取登陸時間獲取當(dāng)前時間計算費用修改數(shù)據(jù)庫客戶端圖5.2 客戶端窗口設(shè)計5.1.3 服務(wù)端模塊實現(xiàn)功能:添加修改刪除用戶信息,添加修改刪除管理員信息,查看用戶的消費記錄。實現(xiàn)方法:建立各

26、個功能窗口,通過主窗口調(diào)用各子功能窗口,在子功能窗口中通過中的DataGridView控件直接操作數(shù)據(jù)庫中的信息。具體方案:建立四個窗口,一個作為主窗口,另外三個作為子窗口,建立LINQ to SQL 類,添加數(shù)據(jù)庫服務(wù)器,在三個子窗口分別添加DataGridView控件,配置DataGridView控件顯示不同的數(shù)據(jù)表的內(nèi)容,并相應(yīng)實現(xiàn)添加刪除的功能(如圖5.3)。用戶信息窗口管理員信息窗口消費記錄窗口修改數(shù)據(jù)庫添加修改刪除查看添加修改刪除服務(wù)端主窗口圖 5.3 服務(wù)端窗口設(shè)計5.2 系統(tǒng)界面設(shè)計網(wǎng)吧計費系統(tǒng)主要涉及到三個用戶界面:這些界面基本包括了系統(tǒng)功能規(guī)定的所有功能。以下是關(guān)于這幾個用

27、戶界面當(dāng)中一些主要的功能界面的簡單介紹。5.2.1 登錄界面用戶登錄界面主要是作為系統(tǒng)入口進入系統(tǒng)使用的,使用人員啟動系統(tǒng)之后便會出現(xiàn)登錄界面,用戶登錄進入到系統(tǒng)的主界面(如圖5.4)。5.2.2 客戶端界面客戶端界面主要是用來顯示用戶有關(guān)信息的。根據(jù)網(wǎng)吧用戶的習(xí)慣設(shè)置了一個隱藏按鈕,可以放在系統(tǒng)托盤圖標(biāo)中,當(dāng)雙擊次圖標(biāo)時,顯示客戶端的主界面(如圖5.5和圖5.6)。圖 5.4 用戶登陸窗口圖5.5 客戶端系統(tǒng)托盤圖標(biāo)圖5.6 客戶端界面5.2.3 服務(wù)端界面服務(wù)端界面主要是管理員操作系統(tǒng)信息使用的,系統(tǒng)使用人員登錄之后便出現(xiàn)功能界面。在此界面下,用戶可以操作規(guī)定權(quán)限下的功能操作。主界面(如圖

28、5.7)調(diào)用以下功能模塊1 用戶信息管理功能調(diào)用用戶信息管理窗口,可以進行添加,修改,刪除用戶信息操作。(如圖5.8 )2 管理員信息管理功能調(diào)用管理員信息管理窗口,可以進行添加,修改,刪除管理員信息操作。(如圖5.9 )3 消費記錄管理功能察看用戶的消費記錄。(如圖5.10 )圖 5.7 主界面圖 5.8 用戶信息管理界面圖5.9 管理員信息管理界面圖 5.10 消費記錄管理界面第六章 編碼實現(xiàn)6.1 系統(tǒng)功能實現(xiàn)網(wǎng)吧計費管理功能主要有兩個方面:客戶端和服務(wù)端。在服務(wù)端,管理員能夠增加,刪除及更新用戶信息;客戶端在普通用戶登陸后,會自動計時計費。系統(tǒng)功能實現(xiàn)主要通過客戶端對登陸用戶信息進行收

29、集和更新。6.2 登陸模塊編碼圖 6.1 登陸窗口Dim db As New 網(wǎng)吧計費管理DataContext Try Dim username = (From admin In db.Table_2 _ Where admin.帳號 = UsernameTextBox.Text _ Select admin.帳號).Single() Dim userpassword = (From admin In db.Table_2 _ Where admin.密碼 = PasswordTextBox.Text _ Select admin.密碼).Single() UsernameTextBox.T

30、ext = PasswordTextBox.Text = Form1.Show() Me.Close() Catch ex As Exception MessageBox.Show(用戶名或密碼錯誤, 請重新輸入!) UsernameTextBox.Text = PasswordTextBox.Text = End Try6.3 客戶端模塊編碼圖 6.2 客戶端窗口Dim db As New 網(wǎng)吧計費管理DataContextDim mydatetime As DateTime Private Sub Form1_Load(ByVal sender As System.Object, ByVa

31、l e As System.EventArgs) Handles MyBase.Load Me.Hide() LoginForm1.ShowDialog() Try Dim username = From admin In db.Table_3 _ Where admin.登陸賬號 = Label7.Text _ Select admin mydatetime = DateTime.Now Label4.Text = mydatetime.ToString For Each Table_3 In username Table_3.登陸時間 = mydatetime Table_3.計算機名 =

32、 System.Net.Dns.GetHostName Next db.SubmitChanges() Catch ex As Exception Dim newTable_3 As New Table_3 With _ .登陸賬號 = Label7.Text, _ .登陸時間 = Label4.Text, _ .計算機名 = System.Net.Dns.GetHostName db.Table_3.InsertOnSubmit(newTable_3) db.SubmitChanges() End Try End Sub Private Sub Timer1_Tick(ByVal sende

33、r As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick If (Label7.Text = ) Then Else Dim nowdatetime As DateTime = DateTime.Now Dim ds As TimeSpan ds = nowdatetime.Subtract(mydatetime) Label5.Text = ds.ToString Dim huafei = From user In db.Table_3 _ Where user.登陸賬號 = Label7.Text _ Sele

34、ct user Dim cost = (From user In db.Table_1 _ Where user.帳號 = Label7.Text _ Select user.上機費用).Single Dim hua = (ds.Minutes + ds.Hours * 60) * cost For Each Table_3 In huafei Table_3.花費 = hua Next db.SubmitChanges() Label6.Text = hua End If End Sub Private Sub Button1_Click(ByVal sender As System.Obj

35、ect, ByVal e As System.EventArgs) Handles Button1.Click Dim closetime As DateTime = DateTime.Now Dim ds As TimeSpan ds = closetime.Subtract(mydatetime) Dim yu = (From user In db.Table_1 _ Where user.帳號 = Label7.Text _ Select user) Dim cost = (From user In db.Table_1 _ Where user.帳號 = Label7.Text _ S

36、elect user.上機費用).Single For Each Table_1 In yu Table_1.余額 = Table_1.余額 - (ds.Minutes + ds.Hours * 60) * cost Next db.SubmitChanges() Me.Close() End Sub Private Sub Form1_Resize(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Resize If Me.WindowState = FormWindowState.Minimized Th

37、en Me.Hide() End If End Sub Private Sub 顯示詳細(xì)信息ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 顯示詳細(xì)信息ToolStripMenuItem.Click Me.Visible = True Me.WindowState = FormWindowState.Normal End Sub Private Sub 下機ToolStripMenuItem_Click(ByVal sender As System.Objec

38、t, ByVal e As System.EventArgs) Handles 下機ToolStripMenuItem.Click Dim closetime As DateTime = DateTime.Now Dim ds As TimeSpan ds = closetime.Subtract(mydatetime) Dim yu = (From user In db.Table_1 _ Where user.帳號 = Label7.Text _ Select user) Dim cost = (From user In db.Table_1 _ Where user.帳號 = Label

39、7.Text _ Select user.上機費用).Single For Each Table_1 In yu Table_1.余額 = Table_1.余額 - (ds.Minutes + ds.Hours * 60) * cost Next db.SubmitChanges() Me.Close() End Sub Private Sub NotifyIcon1_MouseDoubleClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles NotifyIcon1.Mouse

40、DoubleClick Me.ShowInTaskbar = True Me.Show() Me.WindowState = FormWindowState.Normal End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Me.Hide() End Sub6.4 服務(wù)端模塊編碼圖 6.3 服務(wù)端主窗口Private Sub Form1_Load(ByVal sender As System.Object, ByVa

41、l e As System.EventArgs) Handles MyBase.Load Me.Hide() LoginForm1.ShowDialog() End Sub Private Sub 用戶管理ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 用戶管理ToolStripMenuItem.Click Form2.MdiParent = Me Form2.Show() Form2.WindowState = FormWindowState.Maximiz

42、ed Form3.Hide() Form4.Hide() End Sub Private Sub 管理員管理ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 管理員管理ToolStripMenuItem.Click Form3.MdiParent = Me Form3.Show() Form3.WindowState = FormWindowState.Maximized Form2.Hide() Form4.Hide() End Sub Private Sub

43、 消費記錄ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 消費記錄ToolStripMenuItem.Click Form4.MdiParent = Me Form4.Show() Form4.WindowState = FormWindowState.Maximized Form2.Hide() Form3.Hide()End Sub圖 6.4 服務(wù)端用戶信息子窗口Private Sub Table_1BindingNavigatorSaveItem_Cli

44、ck(ByVal sender As System.Object, ByVal e As System.EventArgs) Me.Validate() Me.Table_1BindingSource.EndEdit() Me.TableAdapterManager.UpdateAll(Me.網(wǎng)吧計費管理DataSet) End Sub Private Sub Table_1BindingNavigatorSaveItem_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Me.Validate() Me.T

45、able_1BindingSource.EndEdit() Me.TableAdapterManager.UpdateAll(Me.網(wǎng)吧計費管理DataSet) End Sub Private Sub Table_1BindingNavigatorSaveItem_Click_2(ByVal sender As System.Object, ByVal e As System.EventArgs) Me.Validate() Me.Table_1BindingSource.EndEdit() Me.TableAdapterManager.UpdateAll(Me.網(wǎng)吧計費管理DataSet)

46、End Sub Private Sub Table_1BindingNavigatorSaveItem_Click_3(ByVal sender As System.Object, ByVal e As System.EventArgs) Me.Validate() Me.Table_1BindingSource.EndEdit() Me.TableAdapterManager.UpdateAll(Me.網(wǎng)吧計費管理DataSet) End Sub Private Sub Table_1BindingNavigatorSaveItem_Click_4(ByVal sender As Syste

47、m.Object, ByVal e As System.EventArgs) Handles Table_1BindingNavigatorSaveItem.Click Me.Validate() Me.Table_1BindingSource.EndEdit() Me.TableAdapterManager.UpdateAll(Me.網(wǎng)吧計費管理DataSet) End Sub Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load TODO:

48、 這行代碼將數(shù)據(jù)加載到表“網(wǎng)吧計費管理DataSet.Table_1”中。您可以根據(jù)需要移動或移除它。 Me.Table_1TableAdapter.Fill(Me.網(wǎng)吧計費管理DataSet.Table_1) End Sub圖 6.5 服務(wù)端管理員信息子窗口Private Sub Table_2BindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Me.Validate() Me.Table_2BindingSource.EndEdit() Me.TableAdap

49、terManager.UpdateAll(Me.網(wǎng)吧計費管理DataSet) End Sub Private Sub Table_2BindingNavigatorSaveItem_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Table_2BindingNavigatorSaveItem.Click Me.Validate() Me.Table_2BindingSource.EndEdit() Me.TableAdapterManager.UpdateAll(Me.網(wǎng)吧計費管理DataS

50、et) End Sub Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load TODO: 這行代碼將數(shù)據(jù)加載到表“網(wǎng)吧計費管理DataSet.Table_2”中。您可以根據(jù)需要移動或移除它。 Me.Table_2TableAdapter.Fill(Me.網(wǎng)吧計費管理DataSet.Table_2) End Sub圖 6.6 服務(wù)端用戶消費記錄子窗口Private Sub Table_3BindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Me.Validate() Me.Table_3BindingSource.EndEdit() Me.TableAdapterManager.UpdateAll(Me.網(wǎng)吧計費管理DataSet) End Sub Private Sub Form4_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Lo

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論