酒店管理系統(tǒng)文檔參考模板_第1頁(yè)
酒店管理系統(tǒng)文檔參考模板_第2頁(yè)
酒店管理系統(tǒng)文檔參考模板_第3頁(yè)
酒店管理系統(tǒng)文檔參考模板_第4頁(yè)
酒店管理系統(tǒng)文檔參考模板_第5頁(yè)
已閱讀5頁(yè),還剩28頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、摘 要隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能已為人們深刻認(rèn)識(shí),它已進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來(lái)越重要的作用。作為計(jì)算機(jī)應(yīng)用的一部分,使用計(jì)算機(jī)對(duì)旅店進(jìn)行管理,具有手工管理無(wú)法比擬的優(yōu)點(diǎn)。例如:檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、保密性好、成本低等。這些優(yōu)點(diǎn)能夠極大地提旅店管理的效率,也是旅店的科學(xué)化、正規(guī)化管理和與世界接軌的重要條件。因此,開發(fā)這樣一套旅店管理系統(tǒng)已成為很有必要的事情。JAVA是一門很優(yōu)秀的編程語(yǔ)言,具有面向?qū)ο?、與平臺(tái)無(wú)關(guān)、安全、穩(wěn)定和多線程等特點(diǎn),是目前軟件設(shè)計(jì)中極為健壯的編程語(yǔ)言。JAVA不僅可以用來(lái)開發(fā)大型的應(yīng)用程序。而且特別適合Intern

2、et的應(yīng)用開發(fā)。JAVA確實(shí)具備“一次寫成,處處運(yùn)行”的特點(diǎn),JAVA以成為網(wǎng)絡(luò)時(shí)代最重要的編程語(yǔ)言之一。本報(bào)告中介紹了用JAVA語(yǔ)言實(shí)現(xiàn)旅店管理系統(tǒng)的全部過(guò)程。本次課程設(shè)計(jì)是配合JAVA程序設(shè)計(jì)課程,幫助學(xué)生深入學(xué)習(xí)掌握J(rèn)AVA語(yǔ)言,熟練運(yùn)用這個(gè)工具來(lái)編寫的。通過(guò)課程設(shè)計(jì)各個(gè)項(xiàng)目的綜合訓(xùn)練,培養(yǎng)學(xué)生實(shí)際分析問(wèn)題、編程和動(dòng)手能力、提高學(xué)生的綜合素質(zhì)。本課程設(shè)計(jì)嘗試使用一些較生動(dòng)的示例和設(shè)計(jì)項(xiàng)目,激發(fā)學(xué)生學(xué)習(xí)興趣,引導(dǎo)學(xué)生主動(dòng)學(xué)習(xí),正確理解、接受需要重點(diǎn)掌握的知識(shí)點(diǎn),為參加項(xiàng)目開發(fā)及更深入學(xué)習(xí)做好準(zhǔn)備。本次課程設(shè)計(jì)主要是用JAVA實(shí)現(xiàn)旅店管理系統(tǒng),其系統(tǒng)主要完成以下功能模塊: 客房登記模塊: 可

3、以實(shí)現(xiàn)添加客戶的基本信息功能;客房預(yù)定管理模塊: 可以實(shí)現(xiàn)取消預(yù)定和更改預(yù)定功能;退房管理和服務(wù)費(fèi)用模塊:可以實(shí)現(xiàn)計(jì)算客戶消費(fèi)信息和錄入客戶服務(wù)功能;客戶管理模塊:可以查詢客戶信息和服務(wù)信息情況;房間管理模塊:可以實(shí)現(xiàn)房?jī)r(jià)調(diào)整、查詢空房和房?jī)r(jià)情況;服務(wù)管理和顧客數(shù)目統(tǒng)計(jì)模塊:可以實(shí)現(xiàn)服務(wù)價(jià)格調(diào)整、查詢服務(wù)和統(tǒng)計(jì)顧客數(shù)目。關(guān)鍵詞:旅店管理系統(tǒng),Access數(shù)據(jù)庫(kù),客戶管理,客房管理,JAVA / 33目 錄摘 要I第1章 緒論1第2章 系統(tǒng)功能介紹22.1系統(tǒng)功能總框圖22.2 功能模塊介紹22.3 組內(nèi)任務(wù)分工3第3章 數(shù)據(jù)庫(kù)設(shè)計(jì)43.1 數(shù)據(jù)庫(kù)需求分析43.2 數(shù)據(jù)庫(kù)表設(shè)計(jì)4第4章 具體功能

4、實(shí)現(xiàn)64.1 系統(tǒng)登陸界面64.2 系統(tǒng)界面設(shè)計(jì)84.3 客房登記功能模塊104.4 客房預(yù)定功能模塊124.5 退房和服務(wù)管理模塊144.6 客戶管理模塊194.7 房間管理模塊234.8 顧客數(shù)目統(tǒng)計(jì)模塊25結(jié) 論29致 謝30參考文獻(xiàn)31第1章 緒論世界的發(fā)展,社會(huì)的進(jìn)步,人們的物質(zhì)生活和精神生活都得到了很大的飛躍,人們以前的意識(shí)里就是所謂的人工管理??墒侨祟愒谶M(jìn)步、國(guó)家在進(jìn)步、世界在進(jìn)步,那么必然會(huì)帶來(lái)新的產(chǎn)物,由前一個(gè)階段向后一階段過(guò)度。隨著電子電子計(jì)算機(jī)技術(shù)的進(jìn)步,為各行各業(yè)的自動(dòng)化管理打開了方便之門。在新的條件下,有必要實(shí)現(xiàn)旅店的自動(dòng)化管理,提高旅店工作人員的效率。本系統(tǒng)從對(duì)旅店

5、的核心業(yè)務(wù)客戶的管理出發(fā),著眼于為旅店管理創(chuàng)造自動(dòng)化的辦公環(huán)境而開發(fā) 在計(jì)算機(jī)飛速發(fā)展的今天,將計(jì)算機(jī)這一信息處理利器應(yīng)用于旅店的日常管理已是勢(shì)必所然,而且這也將為旅店管理帶來(lái)前所未有的改變,它可以帶來(lái)意想不到的效益,同時(shí)也會(huì)為旅店的飛速發(fā)展提供無(wú)限潛力。采用計(jì)算機(jī)管理信息系統(tǒng)已成為企業(yè)、旅店管理科學(xué)化和現(xiàn)代化的重要標(biāo)志,它給旅店管理帶來(lái)了明顯的經(jīng)濟(jì)效益和社會(huì)效益。主要體現(xiàn)在:極大的提高了管理人員的工作效率,大大減少了以往入出存流程繁瑣,雜亂,周期長(zhǎng)的弊端。減少的出錯(cuò)率,更大程度避免了不必要的誤差,使旅店管理正規(guī)化、標(biāo)準(zhǔn)化、社會(huì)化。 基于旅店管理的全面自動(dòng)化,可以減少客房管理、客戶管理及旅店服

6、務(wù)管理中的漏洞,可以節(jié)約不少管理開支,增加企業(yè)收入。這樣可使旅店有更大的發(fā)展空間,被人們和社會(huì)所認(rèn)同,在社會(huì)上有它的位置和地位。對(duì)于客房管理的操作自動(dòng)化和信息化,全面提高了公司管理的水平,讓管理人員很容易的實(shí)現(xiàn)客房的查詢和管理。對(duì)于客戶的管理,更明確和準(zhǔn)確化,既保證了客戶的安全,又利于管理者進(jìn)行統(tǒng)計(jì)和查詢。對(duì)于旅店服務(wù)管理,很方便的提供客戶必要的服務(wù),讓顧客得到滿足。具體信息的處理有強(qiáng)大的數(shù)據(jù)庫(kù)做后盾,它里面保存大量且重要的信息,實(shí)現(xiàn)了旅店管理的數(shù)據(jù)化,因?yàn)楝F(xiàn)在可以說(shuō)是數(shù)據(jù)的時(shí)代,其實(shí)就是所謂的信息時(shí)代。 隨著我國(guó)改革開放的不斷深入,經(jīng)濟(jì)飛速的發(fā)展,旅店要想生存、發(fā)展,要想在激烈的市場(chǎng)競(jìng)爭(zhēng)中立

7、于不敗之地,沒(méi)有現(xiàn)代化的管理是萬(wàn)萬(wàn)不行的,旅店管理的全面自動(dòng)化、信息化則是其中極其重要的部分。為了旅店管理自動(dòng)化的步伐,提高旅店管理業(yè)務(wù)處理效率,建旅店管理系統(tǒng)已變得十分重要。旅店管理已經(jīng)成為現(xiàn)在的發(fā)展趨勢(shì),目前為止,旅店采用自動(dòng)化管理的很少,還有大部分采用人工管理,不過(guò)就是比較正規(guī)化,改善了以前的人工管理的部分缺點(diǎn)??墒窃诤艽蟪潭壬喜](méi)有解決問(wèn)題,因?yàn)樯鐣?huì)目前的發(fā)展對(duì)它們的要求僅限于此,但是就目前的社會(huì)發(fā)展趨勢(shì)看,社會(huì)在不段的發(fā)展,而且向全面自動(dòng)話靠攏,那么旅店管理系統(tǒng)就將成為一大亮點(diǎn),是社會(huì)發(fā)展的必然產(chǎn)物。因此開發(fā)一個(gè)標(biāo)準(zhǔn)化的旅店管理系統(tǒng)是很有必要的,而且JAVA是一種面向?qū)ο蟮摹o(wú)平臺(tái)的

8、編程語(yǔ)言,具有很大的發(fā)展空間,用它編寫旅店管理系統(tǒng)可以更體現(xiàn)出旅店管理的優(yōu)勢(shì)。 第2章 系統(tǒng)功能介紹2.1系統(tǒng)功能總框圖 經(jīng)過(guò)需求分析和系統(tǒng)的概要設(shè)計(jì),得到系統(tǒng)功能總框圖,如圖2.1所示。旅店管理系統(tǒng)客房登記退房和服務(wù)客戶管理服務(wù)信息查詢客戶信息查詢服務(wù)錄入服務(wù)更改客戶退房客房預(yù)定更改預(yù)定取消預(yù)定房間管理空房查詢房?jī)r(jià)調(diào)整圖2.1 旅店管理系統(tǒng)總體結(jié)構(gòu)框圖2.2 功能模塊介紹在旅店管理系統(tǒng)中管理員先通過(guò)登陸界面進(jìn)入系統(tǒng)。首先管理員需要錄入客戶的基本信息,包括身份證號(hào)、姓名、電話、房間號(hào)、預(yù)定日期、逗留天數(shù)等,并將這些數(shù)據(jù)通過(guò)JAVA連接到數(shù)據(jù)庫(kù),等待其他的功能使用。然后就是預(yù)定的設(shè)置,在預(yù)定設(shè)置

9、里包括取消預(yù)定和更改預(yù)定,管理員根據(jù)客戶的不同需求,對(duì)客戶的預(yù)定進(jìn)行設(shè)置。下來(lái)就是錄入客戶的服務(wù)和退房處理,錄入客戶服務(wù)時(shí)是根據(jù)客戶的房間號(hào),進(jìn)行處理的,在錄入時(shí),會(huì)對(duì)數(shù)據(jù)庫(kù)做相應(yīng)的改動(dòng);退房處理是根據(jù)客戶住的房間類型、客戶的服務(wù)和逗留的天數(shù)來(lái)確定的??蛻舻墓芾恚菫榱烁奖愕墓芾砜蛻?,它包括客戶信息的查詢(入住客人)、客戶信息的查詢(基于姓名)、客戶信息的查詢(基于房間號(hào))和服務(wù)的查詢,完成它們都需要調(diào)用相應(yīng)的數(shù)據(jù)庫(kù),針對(duì)自己的查詢的需要設(shè)計(jì)對(duì)應(yīng)的JAVA語(yǔ)句。房間管理是為了了解房間的情況,有助于讓管理員妥善的為客戶安排房間,它包括房間查看、空房查詢、空客房查詢、空豪華間查詢、房?jī)r(jià)查詢和房?jī)r(jià)

10、的調(diào)整,房間的查看是為了總體查看現(xiàn)在有多少房間被用;空房查詢是細(xì)化的查看房間有多少被用,都是那些房間被占;房間更改是根據(jù)不同的需要更改房?jī)r(jià),以達(dá)到客戶的需求??蛻魯?shù)目統(tǒng)計(jì),它是按客戶來(lái)自不同國(guó)家進(jìn)行統(tǒng)計(jì)的,這樣可以分析,現(xiàn)在有那些國(guó)家對(duì)旅店的需求大,沒(méi)需求的國(guó)家又是為什么,進(jìn)行長(zhǎng)時(shí)間的統(tǒng)計(jì),在根據(jù)本旅店自身的問(wèn)題,得出解決的辦法,最后就是退出系統(tǒng)。2.3 組內(nèi)任務(wù)分工組員們經(jīng)過(guò)商量后,得到小組任務(wù)分工情況表,如表2-1所示。表2-1 小組任務(wù)分工情況表姓 名任務(wù)分工組長(zhǎng)溫周洋整體設(shè)計(jì)、數(shù)據(jù)庫(kù)創(chuàng)建、主界面設(shè)計(jì),登陸界面、背景音樂(lè)客戶登記、預(yù)定設(shè)置和退房管理模塊組員沈聰杰房間管理模塊客房管理模塊石

11、鈞瑋服務(wù)管理模塊朱衛(wèi)鋒客戶管理模塊 第3章 數(shù)據(jù)庫(kù)設(shè)計(jì)3.1 數(shù)據(jù)庫(kù)需求分析需求分析簡(jiǎn)單地說(shuō)就是分析用戶的需求。需求分析是設(shè)計(jì)數(shù)據(jù)庫(kù)的起點(diǎn),需求分析的結(jié)果是否準(zhǔn)確地反映了用戶的實(shí)際要求,將直接影響到后面各個(gè)階段的設(shè)計(jì),并影響到設(shè)計(jì)結(jié)果是否合理和實(shí)用。本系統(tǒng)的數(shù)據(jù)庫(kù)需求分析應(yīng)該分為六部分:客戶信息部分、房間信息部分、房間類型部分、客房服務(wù)部分、客戶登記部分和轉(zhuǎn)化部分。通過(guò)調(diào)查人們的基本的信息,綜合分析后,選出有代表性的作為客戶信息部分;房間用那種方式好管理,主要采用的方式,將分析出房間信息部門;而現(xiàn)在的房間都有那些類型,包括什么部分,各類型的房間需配備那些設(shè)備,價(jià)格是多少,綜合分析后得出房間類型

12、部分;根據(jù)人們現(xiàn)在的不同需要,調(diào)查那些服務(wù)是人們必須有的,而且是人們想有的,從而得到客房服務(wù)部門;客戶要進(jìn)行房間的結(jié)算就必須由管理員進(jìn)行必要的登記,在登記的基礎(chǔ)上分析出客戶主要的消費(fèi)方式,綜合得到客戶登記部分和轉(zhuǎn)化部分。3.2 數(shù)據(jù)庫(kù)表設(shè)計(jì)針對(duì)本系統(tǒng)的特點(diǎn),在對(duì)所搜集的數(shù)據(jù)進(jìn)行規(guī)范化之后,定義了如下七張表格,分別是管理員密碼表、客戶信息表,房間信息表,房間類型表,客房服務(wù)表,客戶登記表和轉(zhuǎn)化表。通過(guò)對(duì)這六張表格的操作可以較好地完成系統(tǒng)設(shè)計(jì)的各項(xiàng)功能,六張表格之間有著不同程度的聯(lián)系。表定義說(shuō)明如下:表3-1 管理員密碼表字段名稱數(shù)據(jù)類型長(zhǎng)度備注usernamenchar10passwordnch

13、ar6表3-2 客戶信息表字段名稱數(shù)據(jù)類型長(zhǎng)度備注GuestIdchar18取'0-9'或'x'GuestNamechar30GuestPhonechar11取'0-9'GuestCodezipchar6取'0-9'GuestCountrychar12表3-3房間信息表字段名稱數(shù)據(jù)類型長(zhǎng)度備注RoomNochar6RoomPositionchar5RoomTypechar2default 'DX'RoomStatechar2default 'DX'表3-4 房間類型信息表字段名稱數(shù)據(jù)類型長(zhǎng)度備注Ro

14、omTypechar2default 'DX'RoomPricefloatRoomPrice>=119RoomEquipmentschar400表3-5 服務(wù)信息表字段名稱數(shù)據(jù)類型長(zhǎng)度備注ServerIdchar2取'0-9'ServerNamechar60ServerPricefloat8<=ServerPrice表3-6 客戶登記表字段名稱數(shù)據(jù)類型長(zhǎng)度備注GuestIdchar18取'0-9'或'x'RoomNochar6RoomTypechar2AtDatechar10MM/DD/YYFromDatechar10

15、MM/DD/YYToDatechar10MM/DD/YYDaysintroomcostfloatservercostfloattotalcostfloat表3-7 轉(zhuǎn)化信息表字段名稱數(shù)據(jù)類型長(zhǎng)度備注GuestIdchar18取'0-9'或'x'ServerIdchar2取'0-9'AtDatechar10MM/DD/YY其中還將客戶信息表,房間信息表,服務(wù)信息表,客戶登記表,轉(zhuǎn)化信息表進(jìn)行關(guān)聯(lián)。第4章 具體功能實(shí)現(xiàn)4.1 系統(tǒng)登陸界面在程序啟動(dòng)后,系統(tǒng)自動(dòng)彈出系統(tǒng)管理登陸界面。它需要管理員輸入正確的用戶名和密碼,如果密碼錯(cuò)誤,會(huì)進(jìn)行必要的提示,當(dāng)

16、然如果密碼正確,會(huì)進(jìn)入順利的進(jìn)入系統(tǒng),在此,用戶名和密碼都存在數(shù)據(jù)庫(kù)中,在你輸入用戶名和密碼時(shí),程序會(huì)連接到數(shù)據(jù)庫(kù),將你輸入的信息和數(shù)據(jù)庫(kù)中的信息比較。因此得到旅店管理登陸界面圖,如圖4.1所示。圖4.1旅店管理登陸界面圖程序代碼如下:private Dimension d = Toolkit.getDefaultToolkit().getScreenSize(); / Determine user's screen size /* Creates new form NewAccount */ public Login_1() initComponents(); private voi

17、d initComponents() setResizable (false); setLocation (d.width / 2 - getWidth() / 2, d.height / 2 - getHeight() / 2); jLabel1 = new JLabel(); jLabel2 = new JLabel(); admin_userid = new JTextField(); admin_password = new JPasswordField(); btnOk = new JButton(); /new ImageIcon("img/login.jpg"

18、) Icon login = new ImageIcon("img/login.jpg"); JLabel computer = new JLabel(login); Icon tabbed = new ImageIcon("img/admin.gif"); JLabel tab = new JLabel(tabbed); getContentPane().setLayout(null); setTitle("旅館管理登陸界面"); getContentPane().add(computer); computer.setBounds(

19、40, 0, 273, 216); /Admin Username label jLabel1.setForeground (Color.black); jLabel1.setHorizontalAlignment(SwingConstants.RIGHT); jLabel1.setFont(new Font("Tahoma", 1, 11); jLabel1.setText("Username :"); getContentPane().add(jLabel1); jLabel1.setBounds(50, 265, 75, 25); /Admin P

20、assword label jLabel2.setForeground (Color.black); jLabel2.setHorizontalAlignment(SwingConstants.RIGHT); jLabel2.setFont(new Font("Tahoma", 1, 11); jLabel2.setText("Password :"); getContentPane().add(jLabel2); jLabel2.setBounds(50, 300, 75, 25); getContentPane().add(admin_userid)

21、; getContentPane().add(admin_password); admin_userid.setBounds(130, 265, 150, 25); admin_password.setBounds(130, 300, 150, 25); getContentPane().setBackground(Color.white); getContentPane().add(btnOk); getContentPane().add(tab); tab.setBounds(35, 225, 280,110); /Login button btnOk.setText("LOGI

22、N"); btnOk.setFont(new Font("Tahoma", 1, 9); btnOk.setBackground(Color.white); btnOk.setBounds (236, 336, 70, 25); btnOk.setToolTipText("Click to login");btnOk.addActionListener(new ActionListener() public void actionPerformed(ActionEvent evt) if(!admin_userid.getText().equa

23、ls("")&& !admin_password.getText().equals("")/輸入的用戶名和密碼不能為空verifyadminLogin(); elseJOptionPane.showMessageDialog(Component) null, "請(qǐng)輸入正確用戶名和密碼!", "Login Error", JOptionPane.INFORMATION_MESSAGE); ); setIconImage (getToolkit().getImage ("img/logo_1.

24、png");setSize (330, 400);setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);setVisible(true); public static void main(String args) Login_1 ad=new Login_1(); 4.2 系統(tǒng)界面設(shè)計(jì) 系統(tǒng)界面設(shè)計(jì),采用合理的布局和標(biāo)準(zhǔn)的規(guī)格,操作方便快捷,插入的圖片形象化,相當(dāng)于快捷方式。界面的左邊是一個(gè)樹型結(jié)構(gòu),目的是快捷的實(shí)現(xiàn)管理員的操作;菜單條分各功能,簡(jiǎn)單明了;切片按扭,使得按扭和面板一體化。因此得到系統(tǒng)界面設(shè)計(jì)圖,如圖4.2所示。

25、 圖4.2系統(tǒng)界面設(shè)計(jì)圖程序代碼如下:class Hotel extends Frame private Font f; private JTabbedPane jtp; /切片按鈕AudioClip clip; public Hotel() f = new Font("TimesChinese",Font.PLAIN,12); setFont(f); jtp=new JTabbedPane(); jtp.addTab("客房登記",new ImageIcon("img/3.gif"),new RoomEnrollTabPane(),

26、"客房登記"); /new ImageIcon("img1/1.png") jtp.addTab("取消預(yù)訂",new ImageIcon("img/7.gif"),new BookCancelTabPane(),"取消預(yù)訂"); jtp.addTab("更改預(yù)訂",new ImageIcon("img/9.gif"),new BookReworkTabPane(),"更改預(yù)訂"); jtp.addTab("退還房間"

27、;,new ImageIcon("img/10.gif"),new RoomReturnTabPane(),"退還房間"); jtp.addTab("服務(wù)費(fèi)用入帳",new ImageIcon("img/11.gif"),new ServerCostEnrollTabPane(),"服務(wù)費(fèi)用入帳"); add("Center",jtp); /菜單條、菜單和菜單項(xiàng)的設(shè)置與添加MenuBar bar = new MenuBar(); Menu guestMenu=new Menu

28、("客戶管理"); guestMenu.add("入住客戶信息查詢");guestMenu.add("客戶信息查詢(基于姓名)"); guestMenu.add("客戶信息查詢(基于房號(hào))"); guestMenu.add("服務(wù)信息查詢(基于房號(hào))"); Menu roomMenu=new Menu("房間管理"); roomMenu.add("房間查看"); roomMenu.add("空房列表"); roomMenu.add(&q

29、uot;空豪華間"); roomMenu.add("空余客房"); roomMenu.add("房?jī)r(jià)查詢"); roomMenu.add("房?jī)r(jià)調(diào)整"); Menu serverMenu=new Menu("服務(wù)管理"); serverMenu.add("服務(wù)列表"); serverMenu.add("服務(wù)價(jià)格調(diào)整"); serverMenu.add("服務(wù)事項(xiàng)列表(基于日期)"); Menu numberMenu=new Menu("

30、顧客數(shù)目統(tǒng)計(jì)"); numberMenu.add("顧客數(shù)目"); /numberMenu.add("顧客數(shù)(基于國(guó)家)"); Menu QuitMenu=new Menu("退出系統(tǒng)"); QuitMenu.add("退出系統(tǒng)"); bar.add(guestMenu); bar.add(roomMenu); bar.add(serverMenu); bar.add(numberMenu); bar.add(QuitMenu); setMenuBar(bar); show(); /窗口接口 addWin

31、dowListener(new WindowAdapter() /當(dāng)單擊窗口上的關(guān)閉按鈕時(shí),監(jiān)視器首先調(diào)用windowClosing方法,該方法的執(zhí)行必須保證窗口調(diào)用dispose()方法,這樣才能觸發(fā)“窗口已關(guān)閉”,監(jiān)視器才會(huì)調(diào)用windowClosed方法。 public void windowClosing(WindowEvent e) dispose(); System.exit(0); ); 4.3 客房登記功能模塊系統(tǒng)進(jìn)入后,首先看到的就是客房登記界面,登記的內(nèi)容包括客戶的身份證號(hào)、姓名、電話、郵編、來(lái)自的國(guó)家、所住的房間、預(yù)定的日期、開始住的日期、退房的日期和逗留的天數(shù)。輸入時(shí)有

32、相應(yīng)的提示,輸入完成后,確定后,程序會(huì)將輸入的信息保存到數(shù)據(jù)庫(kù),以備具體應(yīng)用時(shí)再調(diào)用??头康怯浌δ芙缑?,如圖4.3所示。圖4.3客房登記界面程序代碼如下:public class MyActionListener implements ActionListener public void actionPerformed(ActionEvent evt) GuestId=idtxt.getText().toString(); GuestName=nametxt.getText().toString(); GuestPhone=phonetxt.getText().toString(); Gues

33、tCodezip=codeziptxt.getText().toString(); GuestCountry=countrychoice.getSelectedItem().toString(); RoomNo=RNtxt.getText().toString(); RoomType=RTchoice.getSelectedItem().toString(); AtDate=ADtxt.getText().toString(); FromDate=FDtxt.getText().toString(); ToDate=TDtxt.getText().toString(); Days=Intege

34、r.parseInt(daystxt.getText(); sqlstring0=new String("select RoomPrice from RoomTypes where RoomType='"+RoomType+"'"); try Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection con=DriverManager.getConnection("jdbc:odbc:hotel"); Statement stmt=con.c

35、reateStatement(); System.out.println(sqlstring0); ResultSet result0=stmt.executeQuery(sqlstring0); while(result0.next() roomprice=result0.getFloat(1); stmt.close(); con.close(); catch(Exception e) System.out.println(e); roomcost=roomprice*Days; servercost=0; totalcost=roomcost+servercost; sqlstring1

36、=new String("insert into Guest values ('"+GuestId+"','"+GuestName+"','"+ GuestPhone+"','"+GuestCodezip+"','"+GuestCountry+"')"); sqlstring2=new String("insert into Reservations values ('"

37、;+GuestId+"','"+RoomNo+"','"+ RoomType+"','"+AtDate+"','"+FromDate+"','"+ToDate+"',"+Days+","+roomcost+","+servercost+","+totalcost+")"); try Class.forName(

38、"sun.jdbc.odbc.JdbcOdbcDriver"); Connection con1=DriverManager.getConnection("jdbc:odbc:hotel"); Statement stmt1=con1.createStatement(); System.out.println(sqlstring1); ResultSet result1=stmt1.executeQuery(sqlstring1); stmt1.close(); con1.close(); catch(Exception e) System.out.pr

39、intln(e); Try Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection con2=DriverManager.getConnection("jdbc:odbc:hotel"); Statement stmt2=con2.createStatement(); System.out.println(sqlstring2); ResultSet result2=stmt2.executeQuery(sqlstring2); stmt2.close(); con2.close(); catc

40、h(Exception e) System.out.println(e); try Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection con3=DriverManager.getConnection("jdbc:odbc:hotel"); Statement stmt3=con3.createStatement(); System.out.println(sqlstring3); ResultSet result3=stmt3.executeQuery(sqlstring3); stmt3

41、.close(); con3.close(); catch(Exception e) System.out.println(e); 4.4 客房預(yù)定功能模塊客房預(yù)定包括取消預(yù)定和更改預(yù)定,當(dāng)客戶想取消預(yù)定時(shí),輸入客戶的身份證號(hào)和房間號(hào),取消客戶的預(yù)定;當(dāng)更改預(yù)定時(shí),輸入客戶的身份證號(hào)、房間號(hào)和逗留的天數(shù),更改用戶的預(yù)定,程序自動(dòng)修改數(shù)據(jù)庫(kù)。因此,得到客房預(yù)定功能圖,如圖4.4所示。 圖4.4客房預(yù)定功能界面 程序代碼如下:public class MyActionListener implements ActionListener public void actionPerformed(Act

42、ionEvent evt) GuestId=idtxt.getText().toString(); RoomNo=RNtxt.getText().toString(); Days=Integer.parseInt(daystxt.getText(); sqlstring1=new String("select servercost from Reservations where GuestId='"+GuestId+"' and RoomNo='"+RoomNo+"'"); try Class.forN

43、ame("sun.jdbc.odbc.JdbcOdbcDriver"); Connection con=DriverManager.getConnection("jdbc:odbc:hotel"); Statement stmt=con.createStatement(); System.out.println(sqlstring1); ResultSet result1=stmt.executeQuery(sqlstring1); while(result1.next() sercost=result1.getFloat(1); stmt.close(

44、); con.close(); catch(Exception e) System.out.println(e); sqlstring2=new String("select Roomtypes.RoomPrice from Room,Roomtypes where Room.RoomType=Roomtypes.RoomType and Room.RoomNo='"+RoomNo+"'"); try Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection c

45、on=DriverManager.getConnection("jdbc:odbc:hotel"); Statement stmt=con.createStatement(); System.out.println(sqlstring2); ResultSet result2=stmt.executeQuery(sqlstring2); while(result2.next() price=result2.getFloat(1); stmt.close(); con.close(); catch(Exception e) System.out.println(e); cos

46、t=price*Days; sqlstring3=new String("update Reservations set Days="+Days+",roomcost="+cost+",totalcost="+sercost+"+"+cost+" where GuestId='"+GuestId+"' and RoomNo='"+RoomNo+"'"); try Class.forName("sun.jdbc.od

47、bc.JdbcOdbcDriver"); Connection con=DriverManager.getConnection("jdbc:odbc:hotel"); Statement stmt=con.createStatement(); System.out.println(sqlstring3); ResultSet result3=stmt.executeQuery(sqlstring3); stmt.close(); con.close(); catch(Exception e) System.out.println(e); public class

48、cancel_ActionListener implements ActionListener public void actionPerformed(ActionEvent e) idtxt.setText(""); RNtxt.setText(""); daystxt.setText(""); 4.5 退房和服務(wù)管理模塊系統(tǒng)中的退房和服務(wù)管理,包括客戶退房、管理員錄入客戶的服務(wù)信息、查詢服務(wù)、更改服務(wù)的費(fèi)用。客戶退房,輸入客戶身份證號(hào)和房間號(hào),確定后,客戶的各項(xiàng)消費(fèi)將列出,包括住房費(fèi)用和服務(wù)費(fèi)用;管理員錄入客戶的服務(wù)信息,輸入客戶的房間號(hào)、服務(wù)項(xiàng)和服務(wù)日期,添加后,程序會(huì)將此服務(wù)加到客戶的消費(fèi)中;查詢服務(wù),根據(jù)添加服務(wù)的日期,調(diào)用數(shù)據(jù)庫(kù),顯示客戶的各項(xiàng)服務(wù);更改服務(wù),選擇相應(yīng)的服務(wù),填寫更改后的價(jià)格,程序?qū)⒄{(diào)用數(shù)據(jù)庫(kù)更改相應(yīng)服務(wù)的費(fèi)用。因此,得到退房和服務(wù)管理功能圖,如圖4.5,4.6所示。圖4.5退房服務(wù)管理功能圖 圖4.6服務(wù)費(fèi)用入賬功能圖程序代碼如下:public class MyActionListener implements ActionListener public void action

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論