版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p> 畢業(yè)設(shè)計(論文)中文摘要</p><p> 畢業(yè)設(shè)計(論文)外文摘要</p><p><b> 目 錄</b></p><p><b> 1. 引言5</b></p><p> 2. 相關(guān)技術(shù)簡介6</p><p> 2.1 Micros
2、oft Visual Studio 20056</p><p> 2.2 SQL Server 20006</p><p> 2.3 C#語言6</p><p> 3. 系統(tǒng)需求分析7</p><p> 4. 數(shù)據(jù)庫的設(shè)計8</p><p> 4.1 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計8</p>
3、;<p> 4.2 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計10</p><p> 4.3 數(shù)據(jù)完整性設(shè)計13</p><p> 4.4 存儲過程和視圖14</p><p> 5. “賓館管理系統(tǒng)”應(yīng)用程序結(jié)構(gòu)設(shè)計與功能實(shí)現(xiàn)15</p><p> 5.1 功能模塊設(shè)計15</p><p> 5.2
4、 客戶界面設(shè)計16</p><p><b> 6.結(jié)論24</b></p><p><b> 7.致謝25</b></p><p><b> 8.參考文獻(xiàn)26</b></p><p> 9.附錄(核心代碼)27</p><p><
5、;b> 1. 引言</b></p><p> 近年來,隨著改革開放步伐的加快和中西方文化的交流與發(fā)展,我國人民生活水平顯著提高,旅游業(yè)日益繁榮發(fā)展,伴隨著消費(fèi)的持續(xù)增長,賓館行業(yè)已經(jīng)成為現(xiàn)代社會中發(fā)展最快的行業(yè)之一。根據(jù)調(diào)查發(fā)現(xiàn),只有大型的賓館才有規(guī)范、合理的管理系統(tǒng),大部分中小型賓館都還是人工服務(wù),因此,中小型賓館要想在激烈的市場競爭中生存,就必須在經(jīng)營管理、服務(wù)質(zhì)量等方面提高管理意識,即
6、建立一套合理、高效的管理系統(tǒng)。 應(yīng)勢而出的賓館管理系統(tǒng)有著很好的應(yīng)用性。一直以來人們都采用傳統(tǒng)人工的方式管理賬單,這種管理方式存在著許多缺點(diǎn),如:效率低、保密性差,另外時間一長,將產(chǎn)生大量的文件和數(shù)據(jù),這對于查找、更新和維護(hù)都帶來了很多的困難,同時,也加大了管理者的工作量和工作難度。本系統(tǒng)很好的克服了這些缺點(diǎn),并且有檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等優(yōu)點(diǎn)。這些優(yōu)點(diǎn)能夠極大地提高賓館管理的效率,該賓館管理系
7、統(tǒng)以Microsoft SQL Server 2000作為后臺數(shù)據(jù)庫,C# 語言為前臺開發(fā)工具,運(yùn)用自頂向下逐層分解的模塊化結(jié)構(gòu)設(shè)計思想、面向?qū)ο蟮脑O(shè)計方法,完成了賓館管理系統(tǒng)的主要模塊?,F(xiàn)如今隨著經(jīng)濟(jì)的不斷發(fā)展</p><p><b> 2. 相關(guān)技術(shù)簡介</b></p><p> 2.1 Microsoft Visual Studio 2005</p&
8、gt;<p> Microsoft Visual Studio .NET和.NET框架為開發(fā)人員提供了一套完整的解決方案。Visual Studio .NET提供了一個能夠基于.NET框架來創(chuàng)建應(yīng)用程序的開發(fā)環(huán)境,該開發(fā)環(huán)境提供了一些工具,這些工具可以簡化Web應(yīng)用程序和XML WebService的創(chuàng)建、部署和升級。用.NET開發(fā)環(huán)境所創(chuàng)建的Web應(yīng)用程序和XML Web Service具有安全性、可伸縮性以及高可用性
9、的特點(diǎn)。</p><p> 2.2 SQL Server 2000</p><p> SQL Server 2000 支持關(guān)系數(shù)據(jù)庫的結(jié)構(gòu)化查詢語言SQL,提供了一整套豐富的圖形化管理工具和實(shí)用程序,使用這些工具和程序,可以設(shè)置和管理SQL Server 進(jìn)行數(shù)據(jù)庫管理和備份,并保證數(shù)據(jù)的安全和一致。SQL Server 數(shù)據(jù)庫可伸縮性強(qiáng),可用性強(qiáng)。</p><p
10、><b> 2.3 C#語言</b></p><p> C#又讀作 C Sharp,是由C/C++進(jìn)化而來的新一代編程語言。C#是微軟公司發(fā)布的一種面向?qū)ο蟮?,運(yùn)行于.NET framework 之上的高級程序設(shè)計語言。從表面上看來C#與java驚人的相似,它包括單一繼承和界面,并且和Java擁有幾乎相同的語法。但是C#與Java有著明顯的不同,它與com是直接集成的,而且它是微
11、軟公司.NET windows網(wǎng)絡(luò)框架的主角。C#擁有的獨(dú)特特點(diǎn)如下:</p><p><b> 1.中間代碼;</b></p><p> 2.命名空間中的聲明; </p><p><b> 3.基本的數(shù)據(jù)類型</b></p><p><b> 4.兩個基本類;</b>
12、</p><p><b> 5.參數(shù)傳遞;</b></p><p> 6. 與com集成;</p><p><b> 3. 系統(tǒng)需求分析</b></p><p> 賓館管理系統(tǒng)的基本需求歸納如下:</p><p> ?。?)客房類型管理應(yīng)該提供有關(guān)客房類型情況的規(guī)范,
13、如標(biāo)準(zhǔn)間和雙人間的各自設(shè)置。</p><p> ?。?)客房信息管理用來管理各個客房的信息和狀況,包括房間位置、價格、額定人數(shù)和實(shí)際人數(shù)等。</p><p> ?。?)客房查詢是在客戶入住之前根據(jù)客戶的要求提供給客戶的客房的情況。</p><p> ?。?)客戶查詢主要是根據(jù)客戶的號碼來顯示客戶的住宿記錄,以便用戶管理和計算。</p><p>
14、; ?。?)客戶入住就是登記客戶入住信息。</p><p> ?。?)客戶結(jié)算是客戶付清住宿費(fèi)用并注銷房間。</p><p> ?。?)系統(tǒng)幫助是用來提示工作人員怎么使用該賓館管理系統(tǒng)的模塊</p><p> ?。?)登錄設(shè)計要求工作人員正確輸入ID 和密碼且查詢相對應(yīng)之后才能登陸系統(tǒng),同時設(shè)置不同的登錄身份便于對系統(tǒng)的管理和保密工作。</p><
15、;p> 4. 數(shù)據(jù)庫的設(shè)計</p><p> 4.1 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計</p><p> 系統(tǒng)框架當(dāng)中包含八個子項(xiàng)目,分別用來實(shí)現(xiàn)不同的功能??蚣苋缦聢D所示:</p><p><b> 圖4.1.1</b></p><p><b> 圖 4.1.2</b></p>
16、<p> 圖4.1.3 </p><p> 由圖4.1.1可知,此系統(tǒng)分為四個大模塊。其中在4.1.2描述的是系統(tǒng)管理模塊所包含的四個頁面,圖4.1.3當(dāng)中描述的是數(shù)據(jù)維護(hù)模塊當(dāng)中所包含的兩個頁面,圖4.1.4當(dāng)中描述的是前臺操作模塊所包含的兩個頁面。</p><p><b> 圖4.1.4</b><
17、;/p><p> 根據(jù)要求和各模塊的功能設(shè)計出賓館管理系統(tǒng)的E-R圖如下所示:</p><p><b> 圖4.1.5</b></p><p> 根據(jù)上圖可知,在此系統(tǒng)當(dāng)中一共存在四個實(shí)體,客房類型和客房兩個實(shí)體之間的關(guān)系是“屬于”,多個客房可以屬于一個客房類型即客房類型和客房之間是1:N 的關(guān)系;客戶和客房之間的關(guān)系是“選擇”,一個客戶可以
18、訂多個客房即客戶和客房之間是1:N的關(guān)系;客戶和客戶記錄之間的關(guān)系是“入住”,一個客戶入住賓館后可能有多條入住記錄即客戶和客戶記錄之間是1:N 的關(guān)系。</p><p> 4.2 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計</p><p> 4.2.1 數(shù)據(jù)表設(shè)計</p><p> 表4.2.1.1客房類型表(roomtype)</p><p> room
19、type表的主鍵是roomtypename字段,用來標(biāo)識房間類型名稱。其內(nèi)容不能為空。 </p><p> 表4.2.1.2 客房表(room)</p><p> 客房表(Room)表的主鍵是房間號碼(roomid)且是標(biāo)識列,用來唯一標(biāo)識一個房間。房間類型名稱(Roomtypename)是外鍵,對應(yīng)客房類型表(roomtype)表中的房間類型名稱(roomtypename)。<
20、/p><p> 表4.2.1.3客戶表(client)</p><p> 客戶表(client)的主鍵是客戶編號(Clientid)。此表中顯示的就是當(dāng)客戶入住時要登記的內(nèi)容</p><p> 表4.2.1.4 客戶記錄表(clientrecord)</p><p> 客戶記錄表(Clientrecord)中的客戶編號(clientid)
21、、客戶名稱(roomid)都是外鍵。分別對應(yīng)客戶表中的clientid和客房表(room)中的roomid。</p><p> 表4.2.41.5用戶表(usermanage)</p><p> 此表當(dāng)中userid是主鍵,當(dāng)工作人員輸入的password是正確的時候才能進(jìn)入系統(tǒng)進(jìn)行操作。</p><p> 4.2.2 關(guān)系模型</p><
22、p><b> 圖4.2.2.1</b></p><p><b> 圖4.2.2.2</b></p><p><b> 圖4.2.2.3</b></p><p><b> 圖4.2.2.4</b></p><p> 4.3 數(shù)據(jù)完整性設(shè)計&
23、lt;/p><p> 設(shè)計好表的結(jié)構(gòu)后,需要根據(jù)實(shí)際應(yīng)用和操作規(guī)則為表指定一系列的約束和規(guī)則,從而達(dá)到保證數(shù)據(jù)完整性原則的目的。</p><p> ?。?)主鍵約束、非空值約束</p><p> 在五個表的設(shè)計中已經(jīng)規(guī)定了每個表的主鍵列、非空列,這些規(guī)定都是在實(shí)際應(yīng)用環(huán)境中所必須的。比如在roomtype表中定義了客房類型名稱:roomtypename為主鍵,則在表
24、roomtype中roomtypename必須是唯一的。也就是說在這個賓館管理系統(tǒng)當(dāng)中不可能出現(xiàn)2個相同的客房類型名稱,price不能為空是因?yàn)槊恳粋€類型的客房都有自己價格,這樣方便后面的操作和查詢。</p><p> 4.4 存儲過程和視圖</p><p> ?。?)存儲過程client_add,功能是當(dāng)客戶辦理房間入住手續(xù)時,把相應(yīng)的客房入住人數(shù)增加1。</p>&l
25、t;p> ?。?)存儲過程client_delete,功能是當(dāng)客戶辦理結(jié)算手續(xù)時,把相應(yīng)的客房入住人數(shù)減1。</p><p> ?。?)存儲過程roomsearch,功能是進(jìn)行模糊查詢,根據(jù)輸入的參數(shù)將數(shù)據(jù)庫當(dāng)中符合查詢條件的客房全部查詢出來。</p><p> (4)視圖view_clientrecord,功能是根據(jù)多張表形成一個視圖,此視圖包含三張表共九個字段,供程序調(diào)用查詢使
26、用。</p><p> 5. “賓館管理系統(tǒng)”應(yīng)用程序結(jié)構(gòu)設(shè)計與功能實(shí)現(xiàn)</p><p> 設(shè)計該賓館管理系統(tǒng)的應(yīng)用程序結(jié)構(gòu),需要從該管理系統(tǒng)的用戶需求下手,根據(jù)系統(tǒng)功能和實(shí)際應(yīng)用流程設(shè)計科學(xué)、合理、舒適的程序流程和操作流程。</p><p> 5.1 功能模塊設(shè)計</p><p> 功能模塊設(shè)計是根據(jù)系統(tǒng)功能的需求,合理地將各類相
27、關(guān)的功能分解成相對獨(dú)立的功能模塊。劃分功能模塊有利于提高系統(tǒng)開發(fā)效率,便于設(shè)計代碼的維護(hù)和更新,并且是系統(tǒng)更加結(jié)構(gòu)化。根據(jù)系統(tǒng)功能的要求,把程序分為客房類型管理、客房管理、客房查詢、客戶查詢、客戶入住、客戶結(jié)算、用戶管理、系統(tǒng)幫助8個頁面。</p><p> ?。?)客房類型管理頁面。客房類型管理應(yīng)該提供有關(guān)客房類型情況的規(guī)范,比如現(xiàn)數(shù)據(jù)庫中存在的一等,二等,三等…各種類型的客房其各自的設(shè)置比如是否有電視,是否有
28、空調(diào),是否有衛(wèi)生間,是否有電視等。工作人員可以新建客房類型,刪除客房類型,查找符合要求的客房,可以退出該頁面。</p><p> ?。?)客房管理頁面??头抗芾碛脕砉芾砀鱾€客房的信息和狀況,包括房間類型,房間位置、價格、額定人數(shù)和實(shí)際人數(shù)等。工作人員可以通過該界面新建客房,刪除客房記錄,查找客房,退出該頁面。</p><p> ?。?)客房查詢頁面??头坎樵兪窃诳蛻羧胱≈案鶕?jù)客戶的要求提
29、供給客戶的客房的情況。工作人員可以根據(jù)輸入的查詢條件查詢相關(guān)的客房,可以查找到未注滿的客房,可以查找到空房的記錄,可以選擇一個客房后進(jìn)入入住界面,可以退出該頁面。</p><p> ?。?)客戶查詢頁面。主要是根據(jù)客戶的號碼來顯示客戶的住宿記錄,以便用戶管理和計算。工作人員可以通過輸入客戶編號查找客戶的入住記錄,工作人員可以查找全部的客戶記錄,可以查找處于“在住”狀態(tài)的客戶記錄,可以選定某個客戶記錄后進(jìn)行結(jié)算操作
30、,可以退出該頁面。</p><p> ?。?)客戶入住頁面??蛻羧胱【褪堑怯浛蛻羧胱⌒畔?。該頁面要求能輸入并保存該入住客戶的編號,客戶的姓名,客戶的性別,客戶的籍貫,客戶的入住日期同時記錄其它一些信息。</p><p> ?。?)客戶結(jié)算頁面。客戶結(jié)算是客戶付清住宿費(fèi)用并注銷房間。對于此頁面的要求是能實(shí)現(xiàn)打折后的結(jié)算金額。</p><p> ?。?)系統(tǒng)幫助頁面。系
31、統(tǒng)幫助是用來提示工作人員怎么使用該賓館管理系統(tǒng)的頁面。</p><p> ?。?)用戶管理頁面。此頁面當(dāng)中要求如果是賓館管理人員則具有修改所有人密碼的權(quán)利;如果只是普通工作人員則只具有修改自己密碼的權(quán)限。</p><p> 另外,除以上八個頁面外,在登錄系統(tǒng)時有登陸界面,登陸界面要求工作人員輸入自己所屬的分類,并且準(zhǔn)確輸入ID和密碼后才能登陸系統(tǒng)。</p><p>
32、; 在這九個頁面中,我主要負(fù)責(zé)登錄頁面,客戶入住頁面和客戶結(jié)算頁面,在下一節(jié)里面將對這三個頁面做詳細(xì)的介紹。</p><p> 5.2 用戶界面設(shè)計</p><p> 系統(tǒng)登陸時的登錄窗體(圖5.2.1)</p><p><b> 圖5.2.1</b></p><p><b> 圖5.2.2<
33、/b></p><p> 當(dāng)用戶登錄時,會首先出現(xiàn)登錄窗口如上圖所示,工作人員應(yīng)該首先選擇用戶身份填寫工作人員的工號(用戶號碼)以及用戶密碼。點(diǎn)擊“確定”按鈕后查詢密碼與用戶號碼是否對應(yīng),如果對應(yīng)則彈出歡迎消息框;如果發(fā)生錯誤會提示“輸入密碼有誤,請重新輸入”對話框;如果點(diǎn)擊“取消”按鈕則清空界面上三個控件的內(nèi)容等待重新輸入;如果點(diǎn)擊“退出系統(tǒng)”則退出該系統(tǒng)。</p><p>
34、客戶記錄查詢窗口(圖5.2.3)</p><p><b> 圖5.2.3</b></p><p> 如圖5.2.3所示為客戶記錄查詢界面。這個界面可以查詢某個客戶的入住情況,可以查詢所有入住客戶的情況,可以查詢當(dāng)前在住的客戶情況,當(dāng)有客戶需要結(jié)算時,系統(tǒng)對客戶記錄了具體的入住情況,所以結(jié)算時當(dāng)點(diǎn)擊某個客戶時,會自動彈出應(yīng)交的費(fèi)用,如果賓館有折扣,員工只需選擇相應(yīng)的
35、折扣,系統(tǒng)會自動計算出打完折扣后的價格,即客戶最后需要交的客房費(fèi)用。</p><p> 當(dāng)需要查詢某個客戶是只需在客戶號后面的方框中輸入相應(yīng)的客戶號后,點(diǎn)擊“查找”按鈕,如果有此客戶的記錄,則顯示在界面上如圖5.2.3所示,客戶的具體情況將全部顯示;如果沒有相關(guān)記錄,說明沒有要查詢的此人,則顯示如圖5.2.4所示的提示。</p><p> 當(dāng)單擊“全部”按鈕時,顯示的是所有客戶的住宿信
36、息,如圖5.2.6所示。</p><p> 當(dāng)單擊“在住”按鈕時,界面顯示的是到現(xiàn)在為止還沒有結(jié)算的客戶住宿信息如圖5.2.3所示。當(dāng)選中某條沒有結(jié)算的記錄后單擊“結(jié)算”按鈕,則如圖5.2.7所示,會顯示應(yīng)收客戶的金額,還有相應(yīng)的折扣,點(diǎn)擊折扣一欄的下拉菜單,可以選擇相應(yīng)的折扣,最后系統(tǒng)會自動顯示打過折扣后實(shí)收的金額。操作方便,無需員工親自去計算。如果沒有選中某條要結(jié)算的記錄則顯示如圖5.2.5所示的提示,在圖
37、5.2.7當(dāng)中工作人員可以進(jìn)行打折計算。</p><p> 如圖5.2.4 圖5.2.5</p><p><b> 圖5.2.6</b></p><p><b> 圖5.2.7</b></p><p> 客戶入住登記窗口(圖5.2.8)</p
38、><p> 在主界面中選擇客戶入住標(biāo)簽后,彈出客戶入住登記對話框,在這一對話框中需要填入以下各項(xiàng)客戶的相關(guān)信息。如房間號,根據(jù)客戶選擇的房間的標(biāo)準(zhǔn)來填入相應(yīng)的房間號碼;顧客ID號有員工填入,并且記住該ID;填入客戶的姓名,性別和籍貫,在性別后面的文本框里有一個下拉菜單,可以選擇男或女;在籍貫文本框后面也有一個下拉菜單,可以選擇相應(yīng)的籍貫,如果沒有相應(yīng)的籍貫,可以自行填入;對于入住時間,系統(tǒng)會自動給出。如有備注信息,
39、可在信息備注后面的文本框中填入相應(yīng)的備注。當(dāng)全部信息填完后,并且確認(rèn)無誤后,可以點(diǎn)擊“保存”按鈕,會彈出如圖5.2.9所示的“已添加信息”的對話框,點(diǎn)擊“確認(rèn)”按鈕后會彈出如圖5.2.10所示的“客戶添加成功”的對話框,此時,對于客戶入住登記的信息已添加完成。</p><p><b> 圖5.2.8</b></p><p> 圖5.2.9
40、 圖5.2.10</p><p><b> 總結(jié)</b></p><p> 本畢業(yè)設(shè)計是一個新一代的賓館管理系統(tǒng),通過自學(xué)C#語言并且利用C#語言、SQL Server 2000數(shù)據(jù)庫開發(fā)的。這個系統(tǒng)已經(jīng)全部完成。但同時也存在一些不足的地方,比如整個系統(tǒng)是否可以添加更多功能,外觀上是否可以再修飾修飾,整個系統(tǒng)的并發(fā)性如何,,以及用戶資料
41、的保密性和安全性還沒有考慮和研究。</p><p> 經(jīng)過近幾個月的設(shè)計、編碼與測試,畢業(yè)設(shè)計基本完成。在此期間,教師的悉心指導(dǎo)、同學(xué)的熱心幫助,使我獲益非淺。同時我學(xué)到了更</p><p> 多新知識,也加深鞏固了以前所學(xué)知識,無論理論上還是實(shí)踐操作上。同時還讓我知道了團(tuán)隊(duì)合作的精神是非常的重要,學(xué)會了互相幫助和配合。該系統(tǒng)還有許多不盡如人意的地方。但是從這個系統(tǒng)的開發(fā)中學(xué)到了很多東
42、西。不光技術(shù)上,還有如何跟項(xiàng)目組成員溝通交流上。</p><p> 實(shí)踐出真知,這次畢業(yè)設(shè)計把我以前所學(xué)的理論知識得以充分地運(yùn)用,并加以鞏固。理論與實(shí)踐相結(jié)合,動手能力得以很大的提高。開發(fā)一個良好的系統(tǒng)需要豐富的知識,由于水平有限,系統(tǒng)功能不夠完善,需更進(jìn)一步的改善。</p><p><b> 致謝</b></p><p> 此次畢業(yè)設(shè)計
43、和論文撰寫過程中,得到了老師、各位同學(xué)和朋友的關(guān)心、指導(dǎo)和幫助。入學(xué)以來各位老師的辛勤工作和教誨使我能順利地度過了這難忘的三年,使我在綜合素質(zhì)提高、專業(yè)理論知識學(xué)習(xí)和實(shí)踐工作能力等各方面受益匪淺。</p><p> 在此,衷心地感謝我的指導(dǎo)老師給予了很大的幫助,他的悉心指導(dǎo),認(rèn)真的工作態(tài)度,豐富的知識、全面的指導(dǎo),讓我有了很大的進(jìn)步,對我啟發(fā)頗多,收獲頗豐。xx老師平日里工作繁多,但在我做畢業(yè)設(shè)計的每個階段,項(xiàng)
44、目框架設(shè)計的確定和修改,中期檢查,后期詳細(xì)設(shè)計等整個過程中都給予了我悉心的指導(dǎo)。除了邊老師的專業(yè)水平外,他的治學(xué)嚴(yán)謹(jǐn)和科學(xué)研究的精神也是我永遠(yuǎn)學(xué)習(xí)的榜樣,并將積極影響我今后的學(xué)習(xí)和工作。</p><p> 其次要感謝和我一起作畢業(yè)設(shè)計的高欣欣和王寶忠同學(xué),他們在這次畢業(yè)設(shè)計中勤奮工作,克服了許多困難來完成此次畢業(yè)設(shè)計。如果沒有他們的努力工作,此次設(shè)計的完成將變得非常困難。</p><p>
45、; 感謝學(xué)校對我的培養(yǎng),感謝三年來我的所有老師,沒有您的耐心指導(dǎo)與教育,就沒有我今天的成績。</p><p> 感謝三年以來眾多同學(xué)和朋友的幫助,大家一起在緊張的學(xué)習(xí)之余度過了許多愉快的時光。</p><p> 感謝父母多年以來的關(guān)愛!養(yǎng)育之恩,無以回報。</p><p><b> 8.參考文獻(xiàn)</b></p><p
46、> 微軟公司,數(shù)據(jù)庫程序設(shè)計-SQL Server2000 數(shù)據(jù)庫程序設(shè)計,高等教育出版社,2006年11月.</p><p> 張奇,Visual C# 2005數(shù)據(jù)庫項(xiàng)目案例導(dǎo)航,清華大學(xué)出版社,2007年10月</p><p> ?。溃﹥?nèi)格爾,C#高級編程,清華大學(xué)出版社,2008年4月.</p><p> (美)Karli Watson Chr
47、istian Nagel,c#經(jīng)典入門(第三版),清華大學(xué)出版社,2005年3月.</p><p> ?。ㄓⅲ┫钠?,visual c# 從入門到精通,清華大學(xué)出版社,2006年6月.</p><p> ?。溃溗箍?,c#設(shè)計模式——開發(fā)大師系列,中國電力出版社,2005年7月</p><p> 鄒建,中文版SQL Server2000管理與開發(fā)應(yīng)用實(shí)例,人民郵電
48、出版社,2005年8 月</p><p> 陳明,數(shù)據(jù)庫系統(tǒng)及應(yīng)用— SQL Server 2000,清華大學(xué)出版社,2007年2月</p><p> 萊恩工作室,Microsoft SQL Server2000技術(shù)內(nèi)幕,北京大學(xué)出版社,2002年12月</p><p> 龔波,SQL Server 2000教程,北京希望電子出版社,2002年7月</p
49、><p> 9.附錄(核心代碼)</p><p><b> 用戶登錄:</b></p><p> using System;</p><p> using System.Collections.Generic;</p><p> using System.ComponentModel;<
50、;/p><p> using System.Data;</p><p> using System.Drawing;</p><p> using System.Text;</p><p> using System.Data.SqlClient;</p><p> using System.Windows.Fo
51、rms;</p><p> namespace WindowsApplication1</p><p><b> {</b></p><p> public partial class login : Form</p><p><b> {</b></p><p>
52、 private string str;</p><p> private SqlCommand sqlcommand1;</p><p> private SqlConnection sqlconnnection1;</p><p> //private mainform mainform;</p><p> private Dat
53、aSet ds;</p><p> private SqlDataAdapter mydata;</p><p> public string name;</p><p> private bool IsLoginOK = false;</p><p> public login()</p><p><
54、b> {</b></p><p> InitializeComponent();</p><p> sqlcommand1 = new SqlCommand();</p><p> sqlconnnection1 = new SqlConnection(hotelmanage.connection.connstring);</p>
55、;<p> sqlcommand1.Connection = this.sqlconnnection1;</p><p> sqlcommand1.CommandType = CommandType.Text;</p><p> //mainform = new mainform(name);</p><p><b> }</b
56、></p><p> private void btncancle_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> this.comboBox1.Text = this.txtuserid.Text = this.txtuserpwd.Text = &quo
57、t;";</p><p> this.comboBox1.Focus();</p><p><b> }</b></p><p> private void btnok_Click(object sender, EventArgs e)</p><p><b> {</b><
58、/p><p> str = string.Format("select password from usermanage where userid='{0}'", txtuserid.Text);</p><p> sqlcommand1.CommandText = this.str;</p><p> this.sqlcom
59、mand1.Connection.Open();</p><p> sqlcommand1.ExecuteNonQuery();</p><p> ds = new DataSet();</p><p><b> try</b></p><p><b> {</b></p>&
60、lt;p> mydata = new SqlDataAdapter(str, this.sqlConnection1.ConnectionString);</p><p> mydata.SelectCommand = sqlcommand1;</p><p> this.mydata.Fill(ds, "usermanage");</p>&
61、lt;p> //this.name = this.comboBox1.Text;</p><p><b> }</b></p><p><b> catch</b></p><p><b> {</b></p><p> MessageBox.Show(&quo
62、t;從數(shù)據(jù)庫獲取信息失??!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);</p><p><b> return;</b></p><p><b> }</b></p><p> if (this.txtuserpwd.Text
63、 == this.ds.Tables["usermanage" ].Rows[0]["password"].ToString().Trim())</p><p><b> {</b></p><p> IsLoginOK = true;</p><p> MessageBox.Show("
64、歡迎光臨賓館管理系統(tǒng)", "Welcome!");</p><p> this.DialogResult = DialogResult.OK;</p><p><b> }</b></p><p><b> else</b></p><p><b>
65、{</b></p><p> MessageBox.Show("輸入密碼有錯,請出新輸入!", "錯誤提示", MessageBoxButtons.OK, MessageBoxIcon.Error);</p><p> this.txtuserpwd.Focus();</p><p><b> }&
66、lt;/b></p><p><b> }</b></p><p> private void button1_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> Application.Exit();</p
67、><p><b> }</b></p><p> private void login_Load(object sender, EventArgs e)</p><p><b> {</b></p><p> comboBox1.SelectedIndex = 1;</p><
68、;p><b> }</b></p><p> private void login_FormClosing(object sender, FormClosingEventArgs e)</p><p><b> {</b></p><p> //if (!IsLoginOK)</p><p
69、> if (!IsLoginOK && MessageBox.Show("您確定要退出系統(tǒng)嗎?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.No)</p><p> e.Cancel = true;</p><p>
70、<b> }</b></p><p><b> }</b></p><p><b> }</b></p><p><b> 客戶入?。?lt;/b></p><p> using System;</p><p> using
71、System.Collections.Generic;</p><p> using System.ComponentModel;</p><p> using System.Data;</p><p> using System.Drawing;</p><p> using System.Text;</p><
72、p> using System.Data.SqlClient;</p><p> using System.Windows.Forms;</p><p> namespace WindowsApplication1</p><p><b> {</b></p><p> public partial cl
73、ass clientbookin : Form</p><p><b> {</b></p><p> private string roomid;</p><p> private string selectstr;</p><p> private SqlCommand sqlcommand1;</p&
74、gt;<p> private SqlConnection sqlconnection1;</p><p> public clientbookin()</p><p><b> {</b></p><p> this.sqlcommand1 = new SqlCommand();</p><p>
75、 this.sqlconnection1 = new SqlConnection(hotelmanage.connection.connstring);</p><p> this.sqlcommand1.Connection = this.sqlconnection1;</p><p> this.sqlcommand1.CommandType = CommandType.Text
76、;</p><p> InitializeComponent();</p><p><b> }</b></p><p> public clientbookin(string roomid)</p><p><b> {</b></p><p> this.roo
77、mid = roomid;</p><p> this.sqlcommand1 = new SqlCommand();</p><p> this.sqlconnection1 = new SqlConnection(hotelmanage.connection.connstring);</p><p> this.sqlcommand1.Connection
78、 = this.sqlconnection1;</p><p> this.sqlcommand1.CommandType = CommandType.Text;</p><p> InitializeComponent();</p><p><b> }</b></p><p> public bool cli
79、entbookin_add(string clientid, string clientname, string roomid, DateTime indate, DateTime checkdate, double totamoney)</p><p><b> {</b></p><p> this.selectstr = string.Format(&quo
80、t;insert into clientrecord values('{0}','{1}','{2}',{3},{4},{5})", clientid, clientname, roomid, indate, checkdate, totamoney);</p><p> this.sqlcommand1.CommandText = this.selec
81、tstr;</p><p><b> try</b></p><p><b> {</b></p><p> this.sqlcommand1.Connection.Open();</p><p> this.sqlcommand1.ExecuteNonQuery();</p>
82、<p> this.roompeoplenum_add(roomid);//調(diào)用roompeoplenum_add函數(shù)把入住人數(shù)加1</p><p> return true;</p><p><b> }</b></p><p> catch (System.Exception e)</p><p>
83、;<b> {</b></p><p> MessageBox.Show(e.ToString());</p><p> this.sqlconnection1.Close();</p><p> return false;</p><p><b> }</b></p>&l
84、t;p><b> finally</b></p><p><b> {</b></p><p> this.sqlconnection1.Close();</p><p><b> }</b></p><p><b> }</b></
85、p><p> private bool client_search(string clientid)</p><p><b> {</b></p><p> this.selectstr = string.Format("select * from client where clientid='{0}'",
86、 clientid);</p><p> this.sqlcommand1.CommandText = this.selectstr;</p><p> if (this.sqlcommand1.Connection.State == ConnectionState.Closed)</p><p> this.sqlcommand1.Connection.Op
87、en();</p><p> this.sqlcommand1.ExecuteNonQuery();</p><p> if (Convert.ToInt32(this.sqlcommand1.ExecuteScalar()) > 0)</p><p><b> {</b></p><p> this.sq
88、lcommand1.Connection.Close();</p><p> return true;</p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> t
89、his.sqlcommand1.Connection.Close();</p><p> return false;</p><p><b> }</b></p><p><b> }</b></p><p> public bool client_add(string clientid,
90、string clientname, string sex, string nativeplace)</p><p><b> {</b></p><p> if (this.client_search(this.txtclientid.Text))</p><p><b> {</b></p><
91、;p> MessageBox.Show("已有該客戶信息", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);</p><p> return false;</p><p><b> }</b></p><p> selectstr = s
92、tring.Format("insert into client values('{0}','{1}','{2}','{3}')", this.txtclientid.Text.Trim(), this.txtclientname.Text.Trim(), this.cbsex.Text.Trim() , this.cbjiguan.Text.Trim(
93、));</p><p><b> try</b></p><p><b> { </b></p><p> this.sqlconnection1.Open();</p><p> this.sqlcommand1.CommandText = selectstr;</p>&
94、lt;p> this.sqlcommand1.ExecuteNonQuery();</p><p> MessageBox.Show("已添加信息", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);</p><p> return true;</p><
95、p><b> }</b></p><p> catch (System.Exception e)</p><p><b> {</b></p><p> MessageBox.Show(e.ToString());</p><p> this.sqlconnection1.Close
96、();</p><p> return false;</p><p><b> }</b></p><p><b> finally</b></p><p><b> {</b></p><p> this.sqlconnection1.Clo
97、se();</p><p><b> }</b></p><p><b> }</b></p><p> private void roompeoplenum_add(string roomid)</p><p><b> {</b></p><p&
98、gt; this.sqlcommand1.CommandText = "exec dbo.client_add";</p><p> this.sqlcommand1.Parameters.Add(new SqlParameter("@roomid", SqlDbType.Char, 4));</p><p> this.sqlcommand1
99、.Parameters["@roomid"].Value = roomid;</p><p><b> try</b></p><p><b> {</b></p><p> if (this.sqlconnection1.State == ConnectionState.Closed)</
100、p><p> this.sqlconnection1.Open();</p><p> this.sqlcommand1.ExecuteNonQuery();</p><p><b> }</b></p><p> catch (Exception e)</p><p><b>
101、{</b></p><p> MessageBox.Show(e.ToString());</p><p><b> }</b></p><p><b> finally</b></p><p><b> {</b></p><p>
102、 this.sqlconnection1.Close();</p><p> //this.txtroomid.Focus();</p><p><b> }</b></p><p><b> }</b></p><p> private void btnsave_Click(object
103、 sender, EventArgs e)</p><p><b> {</b></p><p> if (txtroomid.Text.Length == 0 || txtclientid.Text.Length == 0 || txtclientname.Text.Length == 0 || cbjiguan.Text.Length == 0)</p&
104、gt;<p> MessageBox.Show("請正確填寫客戶信息,否則不能添加!", "警告", MessageBoxButtons.OK, MessageBoxIcon.Information);</p><p> string clientid = this.txtclientid.Text;</p><p> strin
105、g clientname = this.txtclientname.Text;</p><p> string sex = this.cbsex.Text;</p><p> string clientnativeplace = this.cbjiguan.Text;</p><p> string roomid = this.txtroomid.Text;&
106、lt;/p><p> DateTime indate = this.dtpruzhu.Value;</p><p> string remark = this.txtbeizhu.Text;</p><p> if (this.client_add(clientid, clientname, sex, clientnativeplace ) == true)<
107、;/p><p><b> {</b></p><p> MessageBox.Show("客戶添加成功!");</p><p><b> }</b></p><p><b> else</b></p><p><b>
108、 {</b></p><p> MessageBox.Show("客戶添加失??!");</p><p><b> return;</b></p><p><b> }</b></p><p> //if (this.client_add(clientid, c
109、lientname, sex, clientnativeplace) == true)</p><p><b> //{</b></p><p> // this.Close();</p><p><b> //}</b></p><p><b> }</b>&l
110、t;/p><p> private void btncancle_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> this.Close();</p><p><b> }</b></p><p>
111、 private void btnchongzhi_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> this.txtroomid.Text = this.txtclientid.Text = this.txtclientname.Text = this.cbsex.Text =this.
112、cbjiguan.Text =this.txtbeizhu.Text ="";</p><p> this.txtroomid.Focus();</p><p><b> }</b></p><p><b> }</b></p><p><b> }</b
113、></p><p><b> 客戶查詢 </b></p><p> clientcheck.cs:</p><p> using System;</p><p> using System.Collections.Generic;</p><p> using System.Com
114、ponentModel;</p><p> using System.Data;</p><p> using System.Drawing;</p><p> using System.Text;</p><p> using System.Data.SqlClient;</p><p> using Sy
115、stem.Windows.Forms;</p><p> namespace WindowsApplication1</p><p><b> {</b></p><p> public partial class clientcheck : Form</p><p><b> {</b>&
116、lt;/p><p> private double facttotalmoney, totamoney;</p><p> private clientsearch cs;</p><p> public double FactTotalMoney</p><p><b> {</b></p><
117、p> get { return this.facttotalmoney; }</p><p> set { this.facttotalmoney = value; }</p><p><b> }</b></p><p> public clientcheck(double totamoney, clientsearch cli
118、ents)</p><p><b> {</b></p><p> InitializeComponent();</p><p> cs = clients;</p><p> this.txttotamoney.Text = totamoney.ToString();</p><p>
119、 this.facttotalmoney = this.totamoney = totamoney;</p><p><b> }</b></p><p> private void clientcheck_Load(object sender, EventArgs e)</p><p><b> {</b><
120、/p><p> this.txtfacttotalmoney.Text = this.txttotamoney.Text;</p><p> this.facttotalmoney = this.totamoney;</p><p><b> }</b></p><p> private void cbdazhe_S
121、electedIndexChanged(object sender, EventArgs e)</p><p><b> {</b></p><p> this.facttotalmoney = this.totamoney * Convert.ToUInt32(this.cbdazhe.Text.Split(' ')[0])/10;</p&
122、gt;<p> this.txttotamoney.Text = this.facttotalmoney.ToString();</p><p> cs.p = facttotalmoney;</p><p><b> }</b></p><p> private void btnexit_Click(object sen
123、der, EventArgs e)</p><p><b> {</b></p><p> this.facttotalmoney = 0;</p><p> this.DialogResult = DialogResult.Cancel;</p><p><b> }</b></p&
124、gt;<p> private void btnok_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> MessageBox.Show("應(yīng)收款" + this.facttotalmoney + "元", "收銀臺結(jié)賬&quo
125、t;, MessageBoxButtons.OK, MessageBoxIcon.Information);</p><p> this.DialogResult = DialogResult.OK;</p><p><b> }</b></p><p><b> }</b></p><p>
126、<b> }</b></p><p> clientsearch.cs:</p><p> using System;</p><p> using System.Collections.Generic;</p><p> using System.ComponentModel;</p><
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)論文——賓館服務(wù)管理系統(tǒng)
- 畢業(yè)論文——賓館服務(wù)管理系統(tǒng)
- 畢業(yè)論文——賓館服務(wù)管理系統(tǒng)
- 賓館住宿管理系統(tǒng)畢業(yè)論文
- 賓館管理系統(tǒng)畢業(yè)論文開題報告
- vc++賓館管理管理系統(tǒng)畢業(yè)論文
- 軟件編程畢業(yè)論文--賓館管理系統(tǒng)
- 賓館管理系統(tǒng)設(shè)計與實(shí)現(xiàn)畢業(yè)論文
- 畢業(yè)論文范文——賓館客房管理系統(tǒng)
- 賓館空調(diào)系統(tǒng)畢業(yè)論文設(shè)計
- 畢業(yè)設(shè)計論文——賓館管理系統(tǒng)
- 北京溫馨賓館空調(diào)系統(tǒng)設(shè)計【畢業(yè)論文】
- 某賓館半集式空調(diào)系統(tǒng)設(shè)計【畢業(yè)論文】
- 計算機(jī)系畢業(yè)論文--賓館管理系統(tǒng)的設(shè)計與實(shí)現(xiàn)
- 畢業(yè)論文——畢業(yè)論文管理系統(tǒng)
- 計算機(jī)科學(xué)與技術(shù)畢業(yè)論文-賓館管理系統(tǒng)的設(shè)計與實(shí)現(xiàn)
- 上海市永興賓館空調(diào)系統(tǒng)設(shè)計【畢業(yè)論文】
- 畢業(yè)論文——畢業(yè)論文管理系統(tǒng) (2)
- 賓館管理系統(tǒng)論文
- 畢業(yè)論文——畢業(yè)論文管理系統(tǒng) (2)
評論
0/150
提交評論