“飛天”自行車租賃管理系統(tǒng)_第1頁
“飛天”自行車租賃管理系統(tǒng)_第2頁
“飛天”自行車租賃管理系統(tǒng)_第3頁
“飛天”自行車租賃管理系統(tǒng)_第4頁
“飛天”自行車租賃管理系統(tǒng)_第5頁
已閱讀5頁,還剩25頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、一、項(xiàng)目開發(fā)概述1(一)項(xiàng)目背景1二、調(diào)研及可行性分析2(一)市場(chǎng)需求分析2(二)技術(shù)可行性21、技術(shù)可行性2(三)操作可行性分析21、先進(jìn)管理方式22、經(jīng)濟(jì)可行性23、運(yùn)行可行性24、易用性25、法律可行性2三、任務(wù)概述2(一)項(xiàng)目目標(biāo)2(二)功能2(三)性能31、網(wǎng)絡(luò)化32、智能化33、美觀易用的界面3四、網(wǎng)絡(luò)技術(shù)實(shí)現(xiàn)3(一)產(chǎn)生背景及必要性3(二)具體實(shí)施31、解決方案32、開發(fā)環(huán)境33、用戶界面34、管理系統(tǒng)各模塊介3五、基本數(shù)據(jù)流程和處理流程流程圖3(一)處理流程31、系統(tǒng)管理員控制流程32、借車處理流程43、還車處理流程4六、系統(tǒng)詳細(xì)設(shè)計(jì)5(一)初步想法5(二)軟件需求分析概述51

2、、軟件結(jié)構(gòu)設(shè)計(jì)52、功能需求與模塊的關(guān)系6(三)人工處理過程61、人工借還62、人工尋車63、尚未解決的問題6(四)數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)61、系統(tǒng)E-R圖7(五)邏輯結(jié)構(gòu)設(shè)計(jì)71、各數(shù)據(jù)項(xiàng)的邏輯結(jié)構(gòu)設(shè)計(jì)說明72、系統(tǒng)邏輯結(jié)構(gòu)圖7(六)數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)71、管理員表82、自行車表83、用戶表8七、詳細(xì)設(shè)計(jì)任務(wù)8(一)系統(tǒng)設(shè)計(jì)模塊81、登錄界面82、自行車庫(kù)11(二)用戶管理模塊111、會(huì)員管理112、會(huì)員注冊(cè)153、會(huì)員信息修改15(三)用戶借車模塊161、查詢自行車162、借還查詢18(四)自行車管理模塊221、自行車管理222、添加自行車253、修改自行車信息26八、設(shè)計(jì)總結(jié)27九、項(xiàng)目開發(fā)意義28

3、參考文獻(xiàn)28“飛天”自行車租賃管理系統(tǒng)()摘要:本文針對(duì)當(dāng)前大學(xué)校園學(xué)生擁有及使用自行車的現(xiàn)狀,立足高校園區(qū)的實(shí)際,提出了一種解決方案“飛天”自行車網(wǎng)上租賃服務(wù)項(xiàng)目,通過對(duì)自行車的統(tǒng)一管理和開展租賃業(yè)務(wù),減少學(xué)生用車不方便現(xiàn)象的發(fā)生。通過問卷調(diào)查及結(jié)果分析,方案的可行性得到了較為嚴(yán)謹(jǐn)?shù)恼撟C。本方案立意新穎,有良好的應(yīng)用價(jià)值,所提出的具體實(shí)施方案,也對(duì)當(dāng)今校園自行車問題的解決有著很好的借鑒和指導(dǎo)意義。關(guān)鍵詞:自行車;管理;系統(tǒng)設(shè)計(jì) ;數(shù)據(jù)庫(kù);Visual Studio2008;SQL Server 2005一、項(xiàng)目開發(fā)概述(一)項(xiàng)目背景一騎黃紅學(xué)子倚,半打驛站笑臉迎。這是高校中的一道人性化的風(fēng)景

4、線校園自行車借還服務(wù)項(xiàng)目。學(xué)生、教職工們可以憑借有效證件方便地在各個(gè)自行車借還點(diǎn)處借、還自行車。這項(xiàng)服務(wù)方便了學(xué)生、教職工們的出行,為之節(jié)省了一定的時(shí)間,意義深刻。然而在為全校幾千學(xué)子服務(wù)的同時(shí),我們的服務(wù)隊(duì)同學(xué)卻還要每天手工整理、登記和統(tǒng)計(jì)自行車的借還情況,工序繁雜、費(fèi)時(shí)勞神。為減輕相關(guān)工作人員的負(fù)擔(dān),同時(shí)減少工作出錯(cuò)率、展現(xiàn)為同學(xué)服務(wù)的精神,我們小組決定開發(fā)一套旨在更好地為同學(xué)們服務(wù)的“飛天自行車租賃服務(wù)系統(tǒng)”。二、調(diào)研及可行性分析(一)市場(chǎng)需求分析學(xué)生群體是用車的大戶,有大批自行車閑置,因此是本服務(wù)項(xiàng)目的主市場(chǎng)和原料來源。我們采用問卷的方式對(duì)同學(xué)們進(jìn)行了調(diào)查(調(diào)查問卷與結(jié)果分析見附)。通

5、過整理調(diào)查信息,我們發(fā)現(xiàn)學(xué)生普遍對(duì)自行車投入較多,但使用率卻相對(duì)不高,并且大多數(shù)同學(xué)都表示愿意擺脫這一困境,樂意接受租車業(yè)務(wù)?;诖?,我們認(rèn)為,本工作站擁有廣闊的市場(chǎng),方案運(yùn)行所需的市場(chǎng)條件得到了滿足。(二)技術(shù)可行性1、技術(shù)可行性 開發(fā)工具:VS2008 數(shù)據(jù)庫(kù)環(huán)境:SQL Server 2005 系統(tǒng)環(huán)境:Microsoft Windows 2000或以上版本。 系統(tǒng)實(shí)現(xiàn)依靠相對(duì)熟悉的c語言和SQL Server2008數(shù)據(jù)庫(kù)系統(tǒng),其基本操作實(shí)質(zhì)還是對(duì)數(shù)據(jù)庫(kù)進(jìn)行添加、刪除、查找等操作。(三)操作可行性分析1、先進(jìn)管理方式 通過向管理技術(shù)人員調(diào)查和咨詢,我們對(duì)自行車服務(wù)系統(tǒng)的維護(hù)管理有一個(gè)確

6、切、系統(tǒng)的認(rèn)識(shí)。我們發(fā)現(xiàn),完全可以借鑒圖書館的圖書管理系統(tǒng)對(duì)工作站實(shí)施管理。其中,網(wǎng)絡(luò)登記管理的方式隨著網(wǎng)絡(luò)技術(shù)的發(fā)展也變得極具可行性。2、經(jīng)濟(jì)可行性本軟件采用的是字符界面操作,一方面節(jié)省了開發(fā)時(shí)間,另一方面也避免了因?yàn)殚_發(fā)平臺(tái)的限制而面臨的技術(shù)難關(guān)。在經(jīng)濟(jì)和時(shí)間上也是符合我們小組的預(yù)算的。軟件投入使用后,用戶要有一定的字符界面操作適應(yīng)期。由于數(shù)據(jù)儲(chǔ)存方式簡(jiǎn)單,功能要求不高,在用戶需求沒有明顯提高的情況下,軟件的維護(hù)是易于進(jìn)行的,這給用戶減輕了一定的使用和維護(hù)經(jīng)濟(jì)負(fù)擔(dān)。3、運(yùn)行可行性本軟件主要使用對(duì)象是大學(xué)生,大學(xué)生的計(jì)算機(jī)基礎(chǔ)是足夠好的,軟件的使用者技術(shù)水平是可以保證的。4、易用性本系統(tǒng)是直

7、接面對(duì)用戶的,而用戶往往對(duì)計(jì)算機(jī)并不是非常熟悉。這就要求系統(tǒng)能夠提供良好的用戶接口,易用的人機(jī)交互界面。要實(shí)現(xiàn)這一點(diǎn),就要求系統(tǒng)應(yīng)該盡量使用用戶熟悉的術(shù)語和中文信息的界面,從而保證系統(tǒng)的易用性。5、法律可行性本軟件是專用軟件,具有較強(qiáng)的針對(duì)性。在我們的編碼和設(shè)計(jì)中,除了參閱相關(guān)的資料,不涉及已存在的設(shè)計(jì)專利、不侵犯國(guó)家、學(xué)校的相關(guān)制度,因此具法律可行性。三、任務(wù)概述(一)項(xiàng)目目標(biāo)減輕自行車服務(wù)隊(duì)同學(xué)的工作負(fù)擔(dān)、節(jié)省經(jīng)費(fèi);提高自行車借還登記處理速度;減少登記出錯(cuò)率;更好、更有效地為同學(xué)、教職工服務(wù)。(二)功能自行車以編號(hào)形式的錄入、刪除、修改、查詢、檢索;設(shè)立管理面板,使系統(tǒng)管理員擁有本系統(tǒng)數(shù)據(jù)

8、處理的所有權(quán)限;對(duì)自行車借還的登記;對(duì)借還記錄進(jìn)行檢查以發(fā)現(xiàn)車輛未歸還等異常情況。(三)性能1、網(wǎng)絡(luò)化在該系統(tǒng)中,各工作機(jī)與用戶機(jī)通過網(wǎng)絡(luò)互聯(lián),較容易的實(shí)現(xiàn)了數(shù)據(jù)的處理與反饋。網(wǎng)絡(luò)化是一種趨勢(shì),所有的工作、學(xué)習(xí)、生活在這時(shí)都被賦予了鮮明的網(wǎng)絡(luò)特色,該工作站的提出也順應(yīng)了網(wǎng)絡(luò)化發(fā)展的需求。2、智能化從技術(shù)的角度講,智能化就是自動(dòng)化,本系統(tǒng)可以隨時(shí)自動(dòng)記錄自行車的使用情況,包括出借和歸還時(shí)間、租借人具體信息、使用時(shí)間長(zhǎng)度等。充分利用了網(wǎng)絡(luò)化的優(yōu)勢(shì),方便服務(wù)與大眾同時(shí)減輕管理員的勞動(dòng)強(qiáng)度。3、美觀易用的界面 系統(tǒng)設(shè)基于Form窗體的管理界面,管理員可以通過系統(tǒng)界面對(duì)系統(tǒng)進(jìn)行管理。把復(fù)雜繁多

9、的系統(tǒng)功能設(shè)置變?yōu)橹庇^易用的窗體界面,大大降低了對(duì)網(wǎng)絡(luò)管理員的高要求,提高了系統(tǒng)的易用性。四、網(wǎng)絡(luò)技術(shù)實(shí)現(xiàn)(一)產(chǎn)生背景及必要性大量的數(shù)據(jù)需要處理,易使人感到無所適從。而且如果人工筆記處理,則其準(zhǔn)確性和及時(shí)性很難得到保證。網(wǎng)絡(luò)硬件的降價(jià)、網(wǎng)絡(luò)軟件功能的日益強(qiáng)大使得校園網(wǎng)絡(luò)化的普及程度越來越高。(二)具體實(shí)施1、解決方案本自行車租賃管理系統(tǒng)采用基于Visual Studio 2008設(shè)計(jì)的應(yīng)用窗體與SQL 2005所創(chuàng)建的數(shù)據(jù)庫(kù)相結(jié)合的應(yīng)用模式。用戶(分學(xué)生用戶與管理用戶)通過打開登錄界面向服務(wù)器(SERVER)提交請(qǐng)求,包括對(duì)數(shù)據(jù)庫(kù)的查詢、修改、刪除等。服務(wù)器負(fù)責(zé)對(duì)請(qǐng)求進(jìn)行處理,需要返回時(shí),服

10、務(wù)器會(huì)自動(dòng)將信息返回到用戶界面。2、開發(fā)環(huán)境硬件:現(xiàn)在市場(chǎng)上所用的PC都可以滿足其要求軟件:Visual Studio 2008數(shù)據(jù)庫(kù):Microsoft SQL Server2005客戶機(jī)平臺(tái):支持Windows 98/2000、Windows XP/Windows73、用戶界面用戶界面是一個(gè)集成化的信息平臺(tái),基本上實(shí)現(xiàn)與數(shù)據(jù)庫(kù)的接口,即實(shí)現(xiàn)網(wǎng)上查詢租車信息、網(wǎng)上預(yù)定等功能。4、管理系統(tǒng)各模塊介自行車出租管理模塊:負(fù)責(zé)自行車的入庫(kù)、租出、收費(fèi)、收回等,它是整個(gè)租賃管理系統(tǒng)中最活躍的模塊;一般管理模塊:是指向?qū)η懊娴挠脩艚缑?,比如新聞的添加、信息的發(fā)布等;監(jiān)管部模塊:其所對(duì)應(yīng)的頁面功能是檢閱自

11、行車出租管理部、購(gòu)買維修部及財(cái)會(huì)部的頁面情況,對(duì)其進(jìn)行監(jiān)督管理,發(fā)現(xiàn)問題,及時(shí)解決。五、基本數(shù)據(jù)流程和處理流程流程圖(一)處理流程1、系統(tǒng)管理員控制流程系統(tǒng)管理員控制流程2、借車處理流程借車處理流程3、還車處理流程還車處理流程六、系統(tǒng)詳細(xì)設(shè)計(jì)(一)初步想法本系統(tǒng)為簡(jiǎn)單起見,采用了數(shù)據(jù)文件的數(shù)據(jù)儲(chǔ)存方法,這是由于精力和時(shí)間限制所造成的。本簡(jiǎn)單版本只考慮了只有一個(gè)工作站的情況,因此,不用考慮數(shù)據(jù)文件間的同步問題。(二)軟件需求分析概述本系統(tǒng)的工作范圍為在校園里,提供了自行車借還、管理等服務(wù),主要服務(wù)對(duì)象為學(xué)校里的師生們。目的是為服務(wù)站的工作人員、師生提供進(jìn)一步的便利,使工作、使用更加有效和愉快。1

12、、軟件結(jié)構(gòu)設(shè)計(jì)為進(jìn)一步說明本系統(tǒng)的事務(wù)流程,我們作出了本系統(tǒng)的事務(wù)型軟件結(jié)構(gòu)圖(ER圖)如下:自行車管理系統(tǒng)E-R圖2、功能需求與模塊的關(guān)系為說明各項(xiàng)功能需求的實(shí)現(xiàn)同主要模塊的分配關(guān)系,下面以矩陣圖說明:借車模塊還車模塊每日整頓模塊登陸驗(yàn)證查詢可用自行車更新自行車狀態(tài)更新用戶使用記錄生成未歸還車輛(三)人工處理過程1、人工借還本軟件系統(tǒng)要在服務(wù)站設(shè)置值班人員,用戶來借還車時(shí),為用戶派用或者回收車輛。2、人工尋車每日整頓車輛時(shí),要求值班人員根據(jù)當(dāng)日未歸還車輛表去看看找回缺失車輛。3、尚未解決的問題多服務(wù)站模式問題:本系統(tǒng)只能應(yīng)用于只有一個(gè)自行車服務(wù)站的情況,對(duì)于多個(gè)服務(wù)站,本系統(tǒng)暫時(shí)無法勝任;智

13、能化程度問題:本系統(tǒng)還未實(shí)現(xiàn)全自動(dòng)的智能借還車輛模式,需要工作人員時(shí)刻在服務(wù)站進(jìn)行人工服務(wù)。(四)數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)1、系統(tǒng)E-R圖系統(tǒng)E-R圖(五)邏輯結(jié)構(gòu)設(shè)計(jì)1、各數(shù)據(jù)項(xiàng)的邏輯結(jié)構(gòu)設(shè)計(jì)說明實(shí)體:用戶User實(shí)體:使用記錄實(shí)體:服務(wù)人員實(shí)體:自行車2、系統(tǒng)邏輯結(jié)構(gòu)圖系統(tǒng)邏輯結(jié)構(gòu)圖(六)數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)本系統(tǒng)使用的數(shù)據(jù)庫(kù)管理系統(tǒng)為SQL Server 2005,下面介紹本系統(tǒng)數(shù)據(jù)庫(kù)的結(jié)構(gòu)設(shè)計(jì)。1、管理員表本管理系統(tǒng)具有管理員表LoginInfo,用于存儲(chǔ)管理員身份的數(shù)據(jù),其模式如表3.1所示。字段名數(shù)據(jù)類型允許空備注IDint否用戶ID,主鍵UserNamevarchar(50)否用戶姓名UserP

14、asswordvarchar(50)否用戶密碼LoginInfo(管理員)表2、自行車表存儲(chǔ)自行車信息的表Book,如表3.2所示,用于存放本管理系統(tǒng)中所有已錄入的自行車信息。字段名數(shù)據(jù)類型允許空備注NOvarchar(50)否圖書ID,自動(dòng)增加,主鍵Namevarchar(50)否車名Typevarchar(50)是類型Pricenchar(50)是價(jià)格Statevarchar(50)是狀態(tài)Timedatetime是借還時(shí)間Introductionvarchar(50)是評(píng)價(jià)Book(自行車)表3、用戶表存儲(chǔ)用戶信息的表Users,模式如表3.3所示。該表存放了所有用戶的詳細(xì)信息,借車和還車

15、都對(duì)該表進(jìn)行操作。字段名數(shù)據(jù)類型允許空備注Numbernchar(10)否用戶編號(hào),自動(dòng)增加,主鍵Namenvarchar(50)否用戶姓名Sexnchar(10)是用戶性別IDnvarchar(18)否身份證Addressnvarchar(50)是地址Telnvarchar(11)是電話Pwdnvarchar(50)否密碼Bikenvarchar(50)是所借的車Users(自行車借還)表七、詳細(xì)設(shè)計(jì)任務(wù)在詳細(xì)設(shè)計(jì)階段,我們按之前的概要設(shè)計(jì),結(jié)合實(shí)際的編程可實(shí)現(xiàn)性,設(shè)計(jì)了3個(gè)模塊,模塊對(duì)應(yīng)共同的數(shù)據(jù)結(jié)構(gòu),說明如下:(一)系統(tǒng)設(shè)計(jì)模塊1、登錄界面主要代碼:private void DOLogi

16、n(string paramUserName, string paramPassword, string paramCode, string paramGetcheckCode) int returnValue = 0; BULogin myBULogin = new BULogin(); returnValue = myBULogin.DoLogin(paramUserName, paramPassword, paramCode, paramGetcheckCode); if (radioButton1.Checked|radioButton2.Checked=true ) switch (

17、returnValue) case 0: /1.用戶名不存在 MessageBox.Show("用戶名不存在!"); txtUserName.Clear(); txtPassword.Clear(); txtCode.Clear(); CodeImage(GetcheckCode(); break; case 1: /2.密碼錯(cuò)誤 MessageBox.Show("密碼錯(cuò)誤!"); txtPassword.Clear(); txtCode.Clear(); CodeImage(GetcheckCode(); break; case 2: MessageB

18、ox.Show("驗(yàn)證碼錯(cuò)誤!"); txtPassword.Clear(); txtCode.Clear(); CodeImage(GetcheckCode(); break; case 3: /3.登錄成功 frmintroduction myfrmintroduction = new frmintroduction(); myfrmintroduction.Show(); this.Hide(); this.DialogResult = DialogResult.No; break; default: break; else MessageBox.Show("

19、;請(qǐng)選擇權(quán)限!"); private void btnLogin_Click(object sender, EventArgs e) string paramUserName = this.txtUserName.Text.Trim(); string paramPassword = this.txtPassword.Text.Trim(); string paramCode = this.txtCode.Text.ToLower(); string paramGetcheckCode = this.strTwo.ToLower(); this.DOLogin(paramUserNa

20、me, paramPassword, paramCode, paramGetcheckCode); string strTwo = "" private void frmLogin_Load_1(object sender, EventArgs e) CodeImage(GetcheckCode(); private void btnCancel_Click(object sender, EventArgs e) Close(); private void lkblCode_LinkClicked_1(object sender, LinkLabelLinkClickedE

21、ventArgs e) CodeImage(GetcheckCode(); private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) frmPeopleAdd fpla = new frmPeopleAdd(); fpla.Show(); 2、自行車庫(kù)(二)用戶管理模塊1、會(huì)員管理主要代碼:private void btHome_Click(object sender, EventArgs e) frmintroduction myfrmintroduction = new frmin

22、troduction(); myfrmintroduction.Show(); this.Hide(); this.DialogResult = DialogResult.No; public void frmPeoplesql() /打開數(shù)據(jù)庫(kù) SqlConnection mySqlConnection = new SqlConnection(Conn); mySqlConnection.Open(); string sqlQuery = "SELECT * FROM Users" SqlCommand mySqlCommand = new SqlCommand(sqlQ

23、uery, mySqlConnection); mySqlCommand.ExecuteNonQuery(); SqlDataAdapter mySqlDataAdapter = new SqlDataAdapter(mySqlCommand); /填充數(shù)據(jù)庫(kù) DataSet myDs = new DataSet(); mySqlDataAdapter.Fill(myDs); /關(guān)閉數(shù)據(jù)庫(kù) mySqlConnection.Close(); this.dgvPeople.DataSource = myDs.Tables0; private void frmPeople_Load(object s

24、ender, EventArgs e) frmPeoplesql(); private void Find(string paramNumber) BUPeople myBUPeople = new BUPeople(); DataTable myDataTable = new DataTable(); myDataTable = myBUPeople.BUSearch(paramNumber); this.dgvPeople.DataSource = myDataTable; private void btFind_Click(object sender, EventArgs e) stri

25、ng paramNumber = this.txtNumber.Text.Trim(); Find(paramNumber); private void btAdd_Click(object sender, EventArgs e) frmPeopleAdd myfrmPeopleAdd = new frmPeopleAdd(); myfrmPeopleAdd.Show(); private void button1_Click(object sender, EventArgs e) frmPeoplesql(); private void Update1() int selectCount

26、= this.dgvPeople.SelectedRows.Count; if (selectCount = 0) MessageBox.Show("請(qǐng)選擇要更新的行!"); string paramNumber = this.dgvPeople.SelectedRows0.Cells0.Value.ToString(); string paramName = this.dgvPeople.SelectedRows0.Cells1.Value.ToString(); string paramSex = this.dgvPeople.SelectedRows0.Cells2.

27、Value.ToString(); string paramID = this.dgvPeople.SelectedRows0.Cells3.Value.ToString(); string paramAddress = this.dgvPeople.SelectedRows0.Cells4.Value.ToString(); string paramTel = this.dgvPeople.SelectedRows0.Cells6.Value.ToString(); string parampwd = this.dgvPeople.SelectedRows0.Cells8.Value.ToS

28、tring(); string paramPictures = this.dgvPeople.SelectedRows0.Cells7.Value.ToString(); frmPeopleUpdate myfrmPeopleUpdate = new frmPeopleUpdate(paramNumber, paramName, paramSex, paramID, paramAddress, paramTel, parampwd, paramPictures); if (myfrmPeopleUpdate.ShowDialog() = DialogResult.No) frmPeoplesq

29、l(); private void btUpdate_Click(object sender, EventArgs e) Update1(); private int DoDelete(string paramNumber) int returnValue = 0; BUPeople myBUPeople = new BUPeople(); returnValue = myBUPeople.BUDelete(paramNumber); return returnValue; private void btDelete_Click(object sender, EventArgs e) stri

30、ng paramNumber = string.Empty; int selectCount = this.dgvPeople.SelectedRows.Count; if (selectCount = 0) MessageBox.Show("請(qǐng)選擇要?jiǎng)h除的行!"); int returnValue = 0; for (int i = 0; i < selectCount; i+) paramNumber = this.dgvPeople.SelectedRowsi.Cells0.Value.ToString(); if (MessageBox.Show("

31、您確定要?jiǎng)h除編碼為" + paramNumber + "的信息嗎?", "提示信息", MessageBoxButtons.OKCancel) = DialogResult.Cancel) return; for (int i = 0; i < selectCount; i+) paramNumber = this.dgvPeople.SelectedRowsi.Cells0.Value.ToString(); returnValue += this.DoDelete(paramNumber); if (returnValue >

32、0) MessageBox.Show("刪除成功!"); frmPeoplesql(); else MessageBox.Show("刪除不成功!"); 2、會(huì)員注冊(cè)3、會(huì)員信息修改(三)用戶借車模塊1、查詢自行車主要代碼:public void frmBooksql() /打開數(shù)據(jù)庫(kù) SqlConnection mySqlConnection = new SqlConnection(Conn); mySqlConnection.Open(); string sqlQuery = "SELECT * FROM Book" SqlCom

33、mand mySqlCommand = new SqlCommand(sqlQuery, mySqlConnection); mySqlCommand.ExecuteNonQuery(); SqlDataAdapter mySqlDataAdapter = new SqlDataAdapter(mySqlCommand); /填充數(shù)據(jù)庫(kù) DataSet myDs = new DataSet(); mySqlDataAdapter.Fill(myDs); /關(guān)閉數(shù)據(jù)庫(kù) mySqlConnection.Close(); this.dgvBook.DataSource = myDs.Tables0;

34、 private void dgvBook_DataError(object sender, DataGridViewDataErrorEventArgs e) if (e.Exception != null && e.Context = DataGridViewDataErrorContexts.Commit) MessageBox.Show("CustomerID value must be unique."); private int DoDelete(string paramNo) int returnValue = 0; BUBook myBUBo

35、ok = new BUBook(); returnValue = myBUBook.BUDelete(paramNo); return returnValue; private void Search(string paramNo, string paramName, string paramTyre, string paramState) BUBook myBUBook = new BUBook(); DataTable myDataTable = new DataTable(); myDataTable = myBUBook.BUSearch(paramNo, paramName, par

36、amTyre, paramState); this.dgvBook.DataSource = myDataTable; private void CheckBike_Load(object sender, EventArgs e) frmBooksql(); BUBook myBUBook = new BUBook(); DataTable myDt = new DataTable(); myDt = myBUBook.BUTyre(); this.cmbTyre.DataSource = myDt; this.cmbTyre.DisplayMember = "Tyre"

37、this.cmbTyre.ValueMember = "Tyre" this.cmbTyre.SelectedValue.ToString(); this.cmbTyre.Text = "" private void btFind_Click(object sender, EventArgs e) string paramNo = this.txtNo.Text.Trim(); string paramName = this.txtName.Text.Trim(); string paramTyre = this.cmbTyre.Text.ToStrin

38、g(); string paramState = this.cmbState.Text.ToString(); this.Search(paramNo, paramName, paramTyre, paramState); private void bt1Home_Click(object sender, EventArgs e) frmintroduction myfrmintroduction = new frmintroduction(); myfrmintroduction.Show(); this.Hide(); this.DialogResult = DialogResult.No

39、; 2、借還查詢主要代碼:/返回主界面 private void btHome_Click(object sender, EventArgs e) frmintroduction myfrmintroduction = new frmintroduction(); myfrmintroduction.Show(); this.Hide(); this.DialogResult = DialogResult.No; private void Xinxi(String paramNumber) BUDoing myBUDoing = new BUDoing(); DataTable myDataT

40、able = new DataTable(); myDataTable = myBUDoing.Xinxi(paramNumber); this.dgvXinxi.DataSource = myDataTable; private void DoLogin(string paramNumber, string paramPwd) int returnValue = 0; BUDoing myBUDoing = new BUDoing(); returnValue = myBUDoing.DoLogin(paramNumber, paramPwd); switch (returnValue) c

41、ase 0: MessageBox.Show("用戶名不存在!"); break; case 1: MessageBox.Show("密碼錯(cuò)誤!"); break; case 2: this.Xinxi(paramNumber); break; default: break; private void btYes_Click(object sender, EventArgs e) string paramNumber = this.txtNumber.Text.Trim(); string paramPwd = this.txtPwd.Text.Trim

42、(); this.DoLogin(paramNumber, paramPwd); private void Find(string paramNo) BUDoing myBUDoing = new BUDoing(); DataTable myDataTable = new DataTable(); myDataTable = myBUDoing.BUSearch(paramNo); this.dgvJie.DataSource = myDataTable; private void btFindJie_Click(object sender, EventArgs e) string para

43、mNo = this.txtNo.Text.Trim(); Find(paramNo); private void btUpdateJie_Click(object sender, EventArgs e) string paramNo = this.txtNo.Text.Trim(); Find(paramNo); private int jiechu(String paramNo, String paramState) int returnValue = 0; BUDoing myBUDoing = new BUDoing(); returnValue = myBUDoing.BUUpdate1(paramNo, paramState); return returnV

溫馨提示

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

評(píng)論

0/150

提交評(píng)論