賓館管理系統(tǒng)C-數(shù)據(jù)庫課程設計_第1頁
賓館管理系統(tǒng)C-數(shù)據(jù)庫課程設計_第2頁
賓館管理系統(tǒng)C-數(shù)據(jù)庫課程設計_第3頁
賓館管理系統(tǒng)C-數(shù)據(jù)庫課程設計_第4頁
賓館管理系統(tǒng)C-數(shù)據(jù)庫課程設計_第5頁
已閱讀5頁,還剩59頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第一章緒論發(fā)展。勢。理快速,并能在第一時間得知房間的狀態(tài)信息。術改變酒店業(yè)務模式,實現(xiàn)酒店業(yè)務管理的自動化已經(jīng)成為一種必然。國內(nèi)的賓館計算機管理系統(tǒng)于上世紀80年代初起步,到了80年代中后期,國內(nèi)實際的情況下逐步發(fā)展成熟,到90年代初期形成了幾個較成熟的軟件系統(tǒng),同時產(chǎn)生了許多專職從事賓館計算機管理系統(tǒng)的公司。到了90年代中期,隨著不斷涌現(xiàn)。能發(fā)展有如下幾大趨勢:(1).軟件產(chǎn)品集成化(2).操作界面人性化(3).注重客戶關系管理(4).從數(shù)據(jù)處理型向決策型發(fā)展(5).系統(tǒng)開放化操作(6).增值產(chǎn)品/服務功能增加操作(7).支持電子商務(8).賓館集團型管理軟件的虛擬競爭空間。和社會信譽必定有著積極的意義。第二章需求分析求分析描述如下入住2.2數(shù)據(jù)流需求分析:息 息 數(shù)據(jù)庫用戶登登錄數(shù)據(jù)庫需求分析——數(shù)據(jù)流圖客戶類型管理客房管理客戶查詢客戶入住客戶結算用戶管理系統(tǒng)幫助退出系統(tǒng)客戶類型管理客房管理客戶查詢客戶入住客戶結算用戶管理系統(tǒng)幫助退出系統(tǒng)ameNativePlace第三章概要設計系統(tǒng)功能概述圖3.2Client信息E-R圖:3.3ClientBookIn信息E-R圖InDateeymarkserPasswordserSortInDateeymarkserPasswordserSortmIDkInte3.4管理員用戶E-R圖serIDUsermark3.5客房信息E-R圖markmIDPostionmpleNumeaceNumnepleNumionmarkmIDPostionmpleNumeaceNumnepleNumionTypeNameNumtPeopleNum3.6客房類型信息E-R圖TypeName RoomType rCondition第四章數(shù)據(jù)庫的表的建立與實現(xiàn)Client表的建立:ClientBookIn表的建立:Room表的建立:RoomType表的建立:User表的建立:第五章詳細設計能建立一個窗口,從公共控件中添加label,button控件到窗口,編輯按鈕程序,User理員輸入的信息進行驗證,判斷是否可以通過;調(diào)用getNumber()函數(shù)隨機生成驗證碼,保證安全性。關于驗證碼,每次調(diào)要比較時再拿出來,注意驗證碼不分大小寫。相關運行截圖如下:陸界面5-1-2登錄驗證陸出錯陸成功型管理功能建立一個窗口,從公共控件中添加label,button,textbox,GirdView等控件到窗口,編輯按鈕程序,插入圖片;GirdView需要配置數(shù)據(jù)源,對數(shù)據(jù)庫中的對客房類型的的信息進行編輯,包括類型(普通,貧民,豪華)客房面積 (30,60,90)額定床數(shù)(1,2,3,4)額定人數(shù)(1,2,3,4)價錢(50,500)電視 (有,無)電話(有,無)空調(diào)(有,無)衛(wèi)生間(有,無)這些屬性,對客房類型進行增刪改查功能操作。wRowCancelingEdit在一個處于編輯模式的行的Cancel按鈕被單擊,但是在該行退出編輯模式之前發(fā)生。RowCommand單擊一個按鈕時發(fā)生。RowCreated創(chuàng)建一行時發(fā)生。RowDataBound一個數(shù)據(jù)行綁定到數(shù)據(jù)時發(fā)生。RowDeleting,RowDeleted行的Delete按鈕被單擊時發(fā)生。它們分別在該網(wǎng)格控件刪除該行之前和之后激發(fā)。RowEditing當一行的Edit按鈕被單擊時,是在一行的Update按鈕被單擊時發(fā)生。它們分別在該網(wǎng)格控件更新該行之前和之后激發(fā)。SelectedIndexChanging,SelectedIndexChanged這兩個事件都是在一行ect它們分別在網(wǎng)格控件處理排序操作之前和之后激發(fā)相關運行截圖如下:房類型管理界面房類型管理添加功能界面管理功能口,編輯按鈕程序,插入圖片;GirdView需要配置數(shù)據(jù)源,對數(shù)據(jù)庫中的內(nèi)容對客房的的信息進行編輯,包括房間號碼 (1,2,3,4)房間樓層(一樓,二樓,三樓)增刪改查等功能操作??头棵娣e(30,60,90)額定人數(shù)額定床數(shù)這些屬性,對客房進行首先來說控件的屬性,msitems果(3)SelectioModes:獲取或設置在ListBox中選擇項所用的方法。一共有四個e擇;當屬性MultiExtended時,按下Shift鍵的同時單擊鼠標或者同時Shift鍵和箭頭鍵之一(向上鍵、向下鍵、向左鍵和向右鍵),會將選定內(nèi)容從前一選定項擴展到當前項。按Ctrl鍵的同時單擊鼠標將選擇或撤消選擇列表中的某項;的某項。綁數(shù)據(jù)綁定還有一點區(qū)別,ASP.NET中綁定數(shù)據(jù)后還要調(diào)用一個DataBind方法,而在c#中就不需要。而DisplayMember獲取或設置要顯示的屬性。截圖如下房類型管理添加功能界面戶入住功能等控件到窗口,編輯按鈕程序,插入圖片;GirdView需要配置數(shù)據(jù)源,對數(shù)據(jù)庫中的內(nèi)容進行顯示輸入查詢條件,包括的屬性有房間號碼房間類型房間樓底額定床數(shù)額定人數(shù)實際人數(shù)其他條件,與數(shù)據(jù)庫的數(shù)據(jù)進行比對,查找該客住,則進行登記,跳轉(zhuǎn)到客戶入住界面。記錄。將客戶的基本信息包括身份賬號,姓名,性別,籍貫,以及入住的時間,要添加一個日歷的控件是一個傳統(tǒng)的單月份日歷,用戶可以使用該日歷查看和選擇日期。Calendar控件提供的功能:截圖如下客房查詢界面客戶入住界面客戶結算功能等控件到窗口,編輯按鈕程序,插入圖片;GirdView需要配置數(shù)據(jù)源,輸入身,輸入應收金額,確認是否對住戶打折,這里面包括VIP等節(jié)假日的因素不便多說,已經(jīng)結賬的客戶界面賬截圖如下客戶查詢界面要結賬的用戶界面客戶結算界面已結算客戶界面功能等控件到窗口,編輯按鈕程序,插入圖片;GirdView需要配置數(shù)據(jù)源,編輯新使用新用戶進行登錄截圖如下戶管理功能界面小結過,去的東西我們根本不知道。同時也發(fā)現(xiàn)有很多已經(jīng)學過的東西我們沒有理解到位,種文檔一開始話,我,去圖分析現(xiàn)有情況及問題,由于忘記了一些C#語言的規(guī)范使得在調(diào)試過程中一些錯習并應用了SQL語言,對數(shù)據(jù)庫的創(chuàng)建、修改、刪除方法有了一定的了解,通過導入情不是想象中的那么簡單的,它涉及到的各種實體、屬性、數(shù)據(jù)流程、數(shù)據(jù)處理等等。塊和安全性、完整性不覺就會在物理結構設計中添加一些安全設置:主鍵約束、check鍵上建立索引,這樣可以明顯加快檢索的速度,最后別忘記重要的安全性設置,么,我會用哪種編譯工具,后來選擇了MicrosoftVisualStudio,在編寫程序時,編寫程序一步步實現(xiàn)了,通過這次課程設計使我收獲了好多,熟悉了C#的運用,還復習了數(shù)據(jù)庫相關語句的編寫。自事,難點在于數(shù)據(jù)庫的連接和編程語言的選擇。C#的功能很強大,這也是我以步一步實現(xiàn)其功能!的不足,并希望以后能更加用心地運用所學知識和學習新的知識。[2].施平安清華大學出版社,2005[4]數(shù)據(jù)庫系統(tǒng)概論高等教育出版社2006附錄C#語言代碼如下:namespace_2010_HotelManage{publicpartialclasslogin:Form{MainFormmfnewMainForm();authcodeauthcodenewauthcode;conndataconnewconndata;publiclogin(){itializeComponent}privatevoidlogin_Load(objectsender,EventArgse){thcodeCodeImagepictureBox}privatevoidbtn_exit_Click(objectsender,EventArgse){thisClose);}privatevoidbtn_enter_Click(objectsender,EventArgse){stringcheckconcheckthistextBoxTextTrim(),this.textBox2.Text.Trim());if(this.textBox1.Text.Trim()==""||this.textBox2.Text.Trim()==""||thistextBox.Text.Trim()==""){thcodeCodeImagepictureBox}elseifcheckuser"){textBoxText="";textBoxFocus();}elseifcheck"password"){}elseiftextBoxTextTrim.ToLower()!=authcode.ww.ToLower()){thcodeCodeImagepictureBox}elseifcheckpast"){thcodeCodeImagepictureBoxmfpower=con.u_sort.Trim();mfShow();thisHide);}elseifcheckerror"){}{}}}}2.客戶入?。簄amespace_2010_HotelManage{publicpartialclassclient_live:Form{authcodemnewauthcode;livepaylivenewlive_pay();publicstringroom_id;publicclient_live(){itializeComponent}privatevoidbtm_exit_Click(objectsender,EventArgse){thisClose);}privatevoidclient_live_Load(objectsender,EventArgse){}ifroom_id!=null){roomidText=room_id.Trim();}thisbookdateText=DateTime.Now.ToString();}privatevoidbtn_clear_Click(objectsender,EventArgse){arall}privatevoidbtn_ok_Click(objectsender,EventArgse){if(this.roomid.Text==""||this.userid.Text==""||thisusernameText==""||this.sex.Text==""||thisNativePlaceText==""||this.bookdate.Text==""){return;}inglivemessageliveliveuseridText.Trim(),roomidTextTrim(),bookdate.Text.Trim(),remarkTextTrim(),usernameText.Trim(),xtTrimNativePlace.Text.Trim()iflivemessage"error"){thisroomidText="";}elseiflivemessage"ok"){arall}publicvoidclear_all(){thisroomidText="";thisuseridText="";thisusernameText="";thissexText="";thisNativePlaceText="";thisbookdateText="";thisremarkText="";}}}結算namespace_2010_HotelManage{publicpartialclassclient_pay:Form{publicstringpay_userid;publicstringpay_username;publicstringpay_roomnum;publicstringpay_date;livepaylivepaynewlive_pay();authcodemnewauthcode;publicclient_pay(){itializeComponent}privatevoidbtn_exit_Click(objectsender,EventArgse){thisClose);}privatevoidclient_pay_Load(objectsender,EventArgse){ifroomnumTextTrim==""&&username.Text.Trim()==""&&userid.Text.Trim()=={thisroomnumText=pay_roomnum;thisuseridText=pay_userid;thisusernameText=pay_username;}}privatevoidbtn_clear_Click(objectsender,EventArgse){thisroomnumText="";thisuseridText="";thisusernameText="";}privatevoidbtn_find_Click(objectsender,EventArgse){ifroomnumText""&&userid.Text!=""){stringstrlivepayfindroomnumTextTrim,userid.Text.Trim());ifstr"no"){}{username.Text=str;}}essageboxY}privatevoidsum_Click(objectsender,EventArgse){ifuseridText""&&username.Text!=""&&roomnum.Text!=""){mnyText=livepay.sum(roomnum.Text.Trim(),userid.Text.Trim());ctmnyTextmnyText}elsemmessagebox");}}privatevoidbtn_pay_Click(objectsender,EventArgse){ifuseridText""&&username.Text!=""&&factmny.Text!=""){stringoverlivepaypayuseridTextTrim,roomnum.Text.Trim(),ctmnyTextTrimifoverTrim=="ok"){thisroomnumText="";thisuseridText="";thisusernameText="";thismnyText="";thisfactmnyText="";thisdiscountText="";}{}}elsemmessagebox}privatevoiddiscount_TextChanged(objectsender,EventArgse){factmnyTextConvertToInt(mny.Text)*Convert.ToInt32(discount.Text)/}}}namespace_2010_HotelManage{publicpartialclassclient_search:Form{DelchildDelchild=newDel_child();authcodemnewauthcode;clientsearchclientsearchnewclientsearch;publicclient_search(){itializeComponent}privatevoidclient_search_Load(objectsender,EventArgse){gsqlselectRoomIDClientBookInClientIDClientName,Sex,BookInDate,CheckDate,TotalMoney,NativePlace,RemarkfromClientBookInClientwhereClientBookInClientIDClientClientID";lientsearchBindDatasqldataGridView}privatevoidbtn_clear_Click(objectsender,EventArgse){thisusernameText="";thisuseridText="";}privatevoidbtn_find_Click(objectsender,EventArgse){clientsearchfinduseridTextTrimusername.Text.Trim(),dataGridView1);}privatevoidbtn_living_Click(objectsender,EventArgse){gsqlselectRoomIDClientBookInClientIDClientName,Sex,BookInDate,CheckDate,TotalMoney,NativePlace,RemarkfromClientBookIn,ClientwhereClientBookIn.ClientID=Client.ClientIDandCheckDateisnull";clientsearchBindDatasqldataGridView}privatevoidbtn_pay_Click(objectsender,EventArgse){clientpaypaynewclientpay();/stringms=dataGridView1.SelectedRows[0].Cells[5].Value.ToString();ifdataGridViewSelectedRows].Cells[5].Value.ToString()==""){pay.pay_roomnum=dataGridView1.SelectedRows[0].Cells[0].Value.ToString();pay.pay_userid=dataGridView1.SelectedRows[0].Cells[1].Value.ToString();pay.pay_username=dataGridView1.SelectedRows[0].Cells[2].Value.ToString();Del_child.del_child(pay);}{}}privatevoidbtn_exit_Click(objectsender,EventArgse){thisClose);}}}namespace_2010_HotelManage{publicpartialclasshelp:Form{publichelp(){itializeComponent}}}namespace_2010_HotelManage{publicpartialclassroom_edit:Form{roomeditroomedit=newroomedit();publicroom_edit(){itializeComponent}privatevoidroom_edit_Load(objectsender,EventArgse){stringsqlselectRoomIDRoomTypeNameRoomPositionBedNum,PeopleNum,RemarkoomroomeditBindDatasql,dataGridView1);}privatevoidbtn_add_Click(objectsender,EventArgse){roomedit.add(roomnumTextTrim(),roomtypeTextTrim(),roompostionTextTrim(),bednum.Text.Trim(),peoplenum.Text.Trim(),remarkTextTrim()}privatevoidbtn_alter_Click(objectsender,EventArgse){roomeditalter(roomnumTextTrim(),roomtypeTextTrim(),roompostionTextTrim(),bednum.Text.Trim(),peoplenum.Text.Trim(),remarkTextTrim()}privatevoidbtn_del_Click(objectsender,EventArgse){roomeditdelroomnum.Text.Trim());}privatevoidbtn_find_Click(objectsender,EventArgse){roomedit.find(roomnumTextTrim(),roomtypeTextTrim(),roompostionTextTrim(),bednum.Text.Trim(),peoplenum.Text.Trim(),remarkTextTrim(),idView}privatevoidbtn_save_Click(objectsender,EventArgse){roomeditsave);}privatevoidbtn_cancel_Click(objectsender,EventArgse){roomeditcancel();}privatevoidbtn_exit_Click(objectsender,EventArgse){thisClose);}}privatevoiddataGridView1_CellClick(objectsender,DataGridViewCellEventArgse){ifeRowIndex>=0){roomnumText=dataGridView1.Rows[e.RowIndex].Cells[0].Value.ToString();roomtype.Text=dataGridView1.Rows[e.RowIndex].Cells[1].Value.ToString();roompostion.Text=dataGridView1.Rows[e.RowIndex].Cells[2].Value.ToString();bednum.Text=dataGridView1.Rows[e.RowIndex].Cells[3].Value.ToString();peoplenum.Text=dataGridView1.Rows[e.RowIndex].Cells[4].Value.ToString();remark.Text=dataGridView1.Rows[e.RowIndex].Cells[5].Value.ToString();}}}}namespace_2010_HotelManage{publicpartialclassroom_search:Form{DelchildDelchild=newDel_child();roomsearchroomsearch=newroomsearch();publicroom_search(){itializeComponent}privatevoidbtn_exit_Click(objectsender,EventArgse){thisClose);}privatevoidroom_edit_Load(objectsender,EventArgse){stringsqlselectfromRoom;roomsearchBindDatasql,dataGridView1);privatevoidbtn_clear_Click(objectsender,EventArgse){thisroomidText="";thisroomtypeText="";thisroompostionText="";thisbednumText="";thispeoplenumText="";thisfactpeoplenumText="";thisremarkText="";}privatevoidbtn_find_Click(objectsender,EventArgse){roomsearchfindroomidTextTrim(),roomtypeTextTrim(),roompostionTextTrim(),bednum.Text.Trim(),peoplenum.Text.Trim(),tpeoplenumTextTrimremarkTextTrim(),idView}privatevoidbtn_roomempty_Click(objectsender,EventArgse){roomsearchroomemptydataGridView1);}privatevoidbtn_nofull_Click(objectsender,EventArgse){roomsearchnofulldataGridView1);}privatevoidbtn_live_Click(objectsender,EventArgse){clientlivelivenewclientlive();liveroomidthisdataGridView1.SelectedRows[0].Cells[0].Value.ToString();Delchilddelchildlive);}privatevoiddataGridView1_CellClick(objectsender,DataGridViewCellEventArgse){//client_livemessage_sender=newclient_live();/message_sender.room_id=dataGridView1.Rows[e.RowIndex].Cells[0].Value.ToString();//message_sender.room_type=dataGridViewRowseRowIndexCells1].Value.ToString();/message_sender.Show();}}}namespace_2010_HotelManage{publicpartialclassroom_type_edit:Form{roomtypeeditroomtypeedit=newroomtypeedit();publicroom_type_edit(){itializeComponent}privatevoidroom_type_edit_Load(objectsender,EventArgse){stringsqlselectfromRoomType;roomtypeeditBindDatasql,dataGridView1);}privatevoidbtn_add_Click(objectsender,EventArgse){roomtypeedit.add(roomtypeTextTrim(),eaTextTrimbednum.Text.Trim(),peoplenum.Text.Trim(),price.Text.Trim(),VTextTrimtelTextTrim(),rcTextTrimtoiletTextTrim()}privatevoidbtn_save_Click(objectsender,EventArgse){roomtypeeditsave);}privatevoidbtn_alter_Click(objectsender,EventArgse){roomtypeeditalterroomtypeTextTrim(),eaTextTrimbednum.Text.Trim(),peoplenum.Text.Trim(),price.Text.Trim(),VTextTrimtelTextTrim(),rcTextTrimtoiletTextTrim()}privatevoidbtn_del_Click(objectsender,EventArgse){roomtypeeditdelroomtype.Text.Trim());}privatevoidbtn_find_Click(objectsender,EventArgse){roomtypeedit.find(roomtypeTextTrim(),eaTextTrimbednum.Text.Trim(),peoplenum.Text.Trim(),}}price.Text.Trim(),VTextTrimtelTextTrim(),rcTextTrimtoiletTextTrim(),idView}privatevoidbtn_cancel_Click(objectsender,EventArgse){roomtypeeditcancel);}derEventArgse{thisClose);}privatevoiddataGridView1_CellClick(objectsender,DataGridViewCellEventArgse){ifeRowIndex>=0){//this.dataGridView1.SelectedRows[0].Cells[0].Value.ToString();thisroomtypeText=this.dataGridView1.Rows[e.RowIndex].Cells[0].Value.ToString();thisareaText=this.dataGridView1.Rows[e.RowIndex].Cells[1].Value.ToString();thisbednumText=this.dataGridView1.Rows[e.RowIndex].Cells[2].Value.ToString();this.peoplenum.Text=thisdataGridView.Rows[e.RowIndex].Cells[3].Value.ToString();thispriceText=this.dataGridView1.Rows[e.RowIndex].Cells[4].Value.ToString();thisTVText=this.dataGridView1.Rows[e.RowIndex].Cells[5].Value.ToString();thistelText=this.dataGridView1.Rows[e.RowIndex].Cells[6].Value.ToString();thisaircText=this.dataGridView1.Rows[e.RowIndex].Cells[7].Value.ToString();thisto

溫馨提示

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

評論

0/150

提交評論