(建筑工程管理)軟件工程學_第1頁
(建筑工程管理)軟件工程學_第2頁
(建筑工程管理)軟件工程學_第3頁
(建筑工程管理)軟件工程學_第4頁
(建筑工程管理)軟件工程學_第5頁
已閱讀5頁,還剩105頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

度化,規(guī)范化,科學化。統(tǒng)界面友好,操作簡單,較易實用。2.2.1系統(tǒng)項目概述和實施計劃43.1.1數(shù)據(jù)庫需求分析63.1.2功能需求分析74.3.1數(shù)據(jù)庫概要設計304.3.2數(shù)據(jù)庫詳細設計354.4.4分割面板的設計:414.4.5取系統(tǒng)時間模塊設計:424.4.7正則表達式454.4.8獲取系統(tǒng)當天時間的類455.5.2月結(jié)賬和年結(jié)賬605.5.3菜單管理60一些人為因素造成的不可避免的錯誤,已經(jīng)成為我們餐飲經(jīng)營者思考的問題。 眾多,有條件的酒店或賓館采用自主開發(fā)或委托軟件開發(fā)商開發(fā)出的專用軟件, 礎,結(jié)合酒店前臺管理的需要進行擴展性而開發(fā)的一套酒店管理系統(tǒng)。單明了,操作方便,大大提高了操作效率。1)開臺點菜,即根據(jù)客人數(shù)量及需求為客人安排合適的餐桌,然后進行相應的點菜及簽單。2)自動結(jié)賬,即在客人消費之后,對其消費進行匯總結(jié)賬。3)菜品管理,即對酒店菜品種類進行排號、增添及見刪除來適應酒店的動態(tài)經(jīng)營模式,根據(jù)時期、季節(jié)來實時更換菜品種類。4)賬務管理,此管理主要針對管理員,實現(xiàn)對本店一日、一月或一年的5)用戶管理,此管理主要針對管理員,實現(xiàn)對操作員的增添、刪除及自6)超級管理,設計一名超級管理員可以對所有管理員進行管理。7)幫助中心,針對本系統(tǒng)的所有操作輔以文檔加以說明。8)退出,即退出系統(tǒng),防止操作不慎關閉了操作對話框。證了系統(tǒng)運行的安全性。能用。1.競爭可行性:由于現(xiàn)在的人工管理已經(jīng)難以滿足餐飲業(yè)發(fā)展的需要,廣大餐飲業(yè)經(jīng)營者已經(jīng)意識到使用計算機軟件的重要性,因此餐飲業(yè)的管理階層必須引入計算機軟件管理系統(tǒng)以提高本身的競爭力。2.技術(shù)可行性:根據(jù)餐飲業(yè)的特點和實際情況,酒店管理系統(tǒng)以餐飲業(yè)務為基礎,突出前臺管理,重視數(shù)據(jù)分析等功能;從專業(yè)角度出發(fā):努力為餐飲管理者提供科學、有效的管理模式和數(shù)據(jù)分析功能。因為該系統(tǒng)具有友好的人機互操作界面,操作人員只要進行少量的培訓,系統(tǒng)的功能和使用方法就基本上能夠是系統(tǒng)順利運行。3.經(jīng)濟可行性:在以往的人工管理模式中,餐飲業(yè)為了擴大自己的經(jīng)營不得不雇傭更多的人來做財務、服務、分析等等,這就必須增加投資成本,而且還存在著人為情況下的錯誤。然而在引入了計算機管理以后,就可以減少這些部分的設置,降低成本的同時又不影響增加本身的擴張。查看業(yè)務情況等。軟件開發(fā)方式:采用面向?qū)ο蠹夹g(shù)面向?qū)ο蠓椒ㄊ抢贸橄蟆⒎庋b等機制,發(fā)點開發(fā)我們的系統(tǒng),得到了更好的思維方式。2.2.1系統(tǒng)項目概述和實施計劃我們本系統(tǒng)的主要內(nèi)容是用java語言編寫一個酒店管理系統(tǒng)的軟件,它可 來提高自己的競爭力。為了完成本系統(tǒng)的編寫,我們組的成員應該具有一定的java語言功底,能該提交的東西有:java程序、打包文件、數(shù)據(jù)庫相應的文檔說明。管理員又怎么能夠被一個或兩個超級管理員來進行管理。2.2.2Gantt圖系,該方法簡單了然。△△123412341234△△△△△△△△△△△△△△△△3.1.1數(shù)據(jù)庫需求分析數(shù)據(jù)庫中各個數(shù)據(jù)項的關系,同時將相應條目進行分類匯總,加入到相應這將為系統(tǒng)的設計打基礎。在數(shù)據(jù)庫分析階段要1)應用系統(tǒng)用戶所需要操作的數(shù)據(jù)決定在數(shù)據(jù)庫中存儲什么數(shù)據(jù)。2)應用系統(tǒng)用戶要求對數(shù)據(jù)進行什么樣的處理,理清數(shù)據(jù)庫中各個數(shù)據(jù)項菜品信息:包括序號、編號、名稱、助記碼、菜系、單位、消費單:編號、消費臺號、消費時間、消費金額、操作賬務信息:編號、臺號、開臺時間、消費金額,點菜記錄。級別。性別性別性別操作身份證號3.1.2功能需求分析1.歡迎界面:由于我們所做的軟件是一個和sql對系統(tǒng)有一個清晰的認識,不會出現(xiàn)忙等的狀況。2.登陸界面:主要有登錄名文本框、登陸密碼文本框、記住密可以進入系統(tǒng),進行操作。3.操作員界面:此界面主要針對操作員,功能有臺號管理、開單管理、菜使用幫助,操作員修改自身密碼等。具體功能如下:操作員可以對客人的要求做出回應即開單、簽單和收費。開單即為客人安排臺位后進行客戶點菜,點菜完畢后,客戶客戶可以下達簽單指令。當然,考慮到客戶可能對已點菜品的不喜歡,想取消的情況,我們也做了考慮。在沒客戶沒有確定簽單之前,客戶就可以修改所點的菜品,對不想點得菜品在簽單列表中進行刪除。簽單即在點完菜之后進行確認,此時已經(jīng)不能修改所點的菜品。收費即在客人消費完之后進行結(jié)賬交費。并對相應找零情況做彈出對話框,進行提醒,充分保障交易的正確性。防止出現(xiàn)忘記收費、忘記找零、找零數(shù)目不對等錯誤出現(xiàn)。操作員可以對臺號管理,為客人分配餐臺。同時,可以根據(jù)酒店的發(fā)展狀況,添加刪除餐臺的數(shù)量,修改餐臺的座位數(shù)等。操作員還可以對菜品、菜系進行管理,即增添或刪除菜品、菜系。在不同的銷售季節(jié)、不同的的節(jié)日或在材料緊缺或供應新菜品時可以通過瀏覽菜譜對其進行更改。其中菜品信息包括:序號、編號、名稱、助記碼、菜系、單位、單價。菜系信息包括:序號、菜系名稱。操作員可以實現(xiàn)智能點菜,即對點菜功能,用戶可以選擇使用菜品編號或菜品助記碼進行點菜,提高了操作員的工作效率。操作員可以修改自身密碼。退出系統(tǒng)。操作員的添加、刪除。操作員無權(quán)訪問。功能有賬務管理、菜品管理、按鈕,進行操作,提高了管理效率,同時豐富了該系統(tǒng)的功能。賬務管理:包括日結(jié)賬、月結(jié)賬、年結(jié)賬,每張賬單上的信息包括日期、編號、臺號、開臺時間、消費金額、點菜記錄。方便管理者對酒店的實時,從而來調(diào)整經(jīng)營策略,來提高經(jīng)濟效益。菜品管理:菜品管理、菜系管理,主要負責對菜品菜系的添加、刪除。該功能區(qū)主要實現(xiàn)對酒店的實時監(jiān)控,查看酒店的菜品、菜系情況,方便管理。刪除,自身密碼的修改以及系統(tǒng)維護。增加系統(tǒng)的安全性,合理高幫助:版本信息、幫助中心、幫助文檔,主要提供本系統(tǒng)操作的具體說明。讓系統(tǒng)用戶能盡快入手系統(tǒng),增強系統(tǒng)的可使用性。退出:退出系統(tǒng)。確。任務。因此我們將其做的盡量簡單。響到全局部署。依據(jù)上述描述的特點,本系統(tǒng)需要實現(xiàn)下列目標:人性化的系統(tǒng)提示可視化的系統(tǒng)加載過程系統(tǒng)角色層次分明;身份不同,操作不同級別不同,權(quán)限不同人員不同,結(jié)果不同操作簡單方便,界面簡潔大方;人性化的系統(tǒng)使用方式;方便、快捷的開臺點菜功能;智能化定位菜品的功能;按開臺和商品實現(xiàn)的日結(jié)賬功能;按日消費額匯總統(tǒng)計實現(xiàn)的月結(jié)賬功能;按日營業(yè)額實現(xiàn)的年結(jié)賬功能;按消費情況,顯示酒店盈虧情況;動態(tài)獲取系統(tǒng)時間,提高人員的時間概念實現(xiàn)系統(tǒng)的科學化管理;充分降低人為錯誤帶來的損失;系統(tǒng)運行穩(wěn)定、安全可靠;修改否修改否管理員管理員是是核對核對管理員主管理員主 修改密碼更改人員系統(tǒng)維護酒店管理系統(tǒng)數(shù)否否否否管理員操管理員操菜系管理菜品管理菜系管理菜品管理一系列幫助按鈕菜品管理▲幫助文檔▲菜系管理菜系管理操作員操臺號管理開單管理退出系統(tǒng)修改密碼開單管理退出系統(tǒng)修改密碼a)歡迎使用酒店管理系統(tǒng),友好界面如下:戶,用戶可以直接從下拉列表中選擇自己的用戶名,進行登錄,簡單方便,界面如下:c)操作員功能:操作員可以對客人的要求做出回應即開單、簽單和收費。開單即為客人安排臺位進行點菜,在沒簽單之前可以修改所點的菜品。簽單即在點完菜之前進行確認,此時已經(jīng)不能修改所點的菜品。收費即在客人消費完之后進行結(jié)賬交費。主界面如圖所示:為了對進入系統(tǒng)的用戶提供一些系統(tǒng)消息和操作信息,我們在操作員界面下添加了一些簡單的時間面板(時刻獲取系統(tǒng)當前時間同時為了操作提高操作員的結(jié)賬效率,我們提供了簡單的操結(jié)賬面板。如圖:為了完成智能點菜的功能,我們構(gòu)建了一個基于助記碼查詢和編號查詢操作員可以對臺號進行管理、同時為客人選擇餐臺,點擊臺號管理可以操作員還可以對菜品、菜系進行管理,即增添或刪除菜品、菜系。在材料緊缺或供應新菜品時可以通過瀏覽菜譜對其進行更改。操作員通過點操作完結(jié)后可以退出,如圖:在操作員首次使用本系統(tǒng)時,可能有些陌生,不知如何下手。鑒于此種情況,本系統(tǒng)提供了系統(tǒng)使用文檔,便于操作員能快速入手,盡快投入賬務管理:對一段時間的營業(yè)記錄進行匯總、查詢,包括日結(jié)賬、月結(jié)賬、年結(jié)賬。每張賬單上的信息包括日期、編號、臺號、開臺時間、消菜品管理:菜品管理、菜系管理,主要負責對菜品菜系的添加、刪除。根據(jù)現(xiàn)實狀況及時更改菜譜。點擊主界面菜品管理出現(xiàn)以下選擇界面,進得菜品或菜系管理的選擇,界面如下:用戶管理:用戶管理、修改密碼、系統(tǒng)維護,負責對操作員除,自身密碼的修改以及系統(tǒng)維護。軟件必須按照軟件產(chǎn)品設計規(guī)范的步驟進行開發(fā),并充分考慮軟件的可維護性,詳細編寫各階段的文檔資料,以利于未來版本升級以及移植等二次開發(fā)。數(shù)據(jù)庫投入運行標志著開發(fā)任務的基本完成和維護的開始,但并不意味著設計過程已經(jīng)結(jié)束,任何數(shù)據(jù)庫只要它存在一天它的設計就得不斷地進行評價,調(diào)整、修改甚至于完全改變,因此數(shù)據(jù)庫的維護不僅是必須的活動而且是設計的繼續(xù)和提高。),界面如下:幫助:版本信息、幫助中心、幫助文檔,主要提供本系統(tǒng)操作退出:包含系統(tǒng)的版本信息、退出系統(tǒng)等功能。版本信息界面如下:操作數(shù)據(jù)丟失。秀與否,將影響到軟件的開發(fā)進度和性能,所以對數(shù)據(jù)庫的設計就顯得尤為重要,數(shù)據(jù)庫的設計要根據(jù)程序的需求及其功能制定,如果在開發(fā)軟件之前不能很好的設計數(shù)據(jù)庫,在開發(fā)過程中反復修改數(shù)據(jù)庫,這將嚴重影響軟件的開發(fā)進度。4.3.1數(shù)據(jù)庫概要設計1)數(shù)據(jù)庫中的表及表中字段:要的字段有:姓名、密碼、開單、菜品管理、菜系管理、所屬管理員姓名等;開單表中字段為:開單編號、開單的操作員姓名、消費的菜名列表、消費總金菜系編號;管理員表中的字段包括:管理員姓名,管理員編號等;日統(tǒng)計表中消費菜單開單日期等;年消費表中字段為:年消費菜單開單、消費菜單開單時用來描述餐臺信息的只有臺號和座位號,而描述菜系的主要是名稱。餐臺表菜系表(tb_sort)的E-R圖如下:綜合上述表格,得出了酒店管理系統(tǒng)的數(shù)據(jù)庫模型圖(view)如下:單表。首先,在數(shù)據(jù)庫連接類中定義一些常量,包括連接數(shù)據(jù)庫使用的驅(qū)動程序、privatestaticfinalStringDRIVERCLASS=".microsoft.jdbc.sqlserver.SQLServerDriver";privatestaticfinalStringURL="jdbc:microsoft:sqlserver://:1433;DatabaseName=db_Drink避免了反復加載數(shù)據(jù)庫驅(qū)動程序,從而提高軟件的功能。具體代碼如下:static//通過靜態(tài)方法加載數(shù)據(jù)庫驅(qū)動{try{}catch(Exceptione){e.printStackTrace();}}體代碼如下:{privatestaticfinalStringDRIVERCLASS=".microsoft.jdbc.sqlserver.SQLServerDriver";privatestaticfinalStringURL="jdbc:microsoft:sqlserver://:1433;DatabaseName=db_Drinkstatic{//通過靜態(tài)方法加載數(shù)據(jù)庫驅(qū)動try{}catch(Exceptione){e.printStackTrace();}}{//創(chuàng)建數(shù)據(jù)庫連接的方法{//沒有可用的數(shù)據(jù)庫連接try{threadLocal.set(conn);//將數(shù)據(jù)庫連接保存到線程中}{e.printStackTrace();}}}publicstaticbooleancloseConnection()//關閉數(shù)據(jù)庫連接的方法{threadLocal.set(null);//清空線程中的數(shù)據(jù)庫連接if(conn!=null){//數(shù)據(jù)庫連接可用try{conn.close();//關閉數(shù)據(jù)庫連接}{isClosed=false;e.printStackTrace();}}returnisClosed;}}4.3.2數(shù)據(jù)庫詳細設計的指定值和查詢指定記錄的方法,以及用來添加、修改和刪除記錄的方法。用戶編號(id)整型(int)字符型(varchar)性別(sex)字符型(char)出生日期(birthday)身份證號碼(id_card)字符型(varchar)字符型(varchar)字符型(char)用戶編號(id)整型(int)字符型(varchar)性別(sex)字符型(char)出生日期(birthday)身份證號碼(id_card)字符型(varchar)字符型(varchar)用戶狀態(tài)(freeze)字符型(char)列名類別備注整數(shù)型主鍵所屬菜系(sort_id)整型(int)外鍵字符型(varchar)字符型(varchar)單位(unit)字符型(varchar)單價(unit_price)整型(int)狀態(tài)(state)表4-4菜系表(tb_sort)列名類別備注主鍵字符型(varchar)開單結(jié)構(gòu):開單操作員、消費金額、消費菜品列表、消費編號、消費日期。列名類別備注主鍵字符型(varchar)消費日期Date型(datetime)允許為空消費金額操作員編號整型(int)):表4-6消費項目表(tb_order_item)列名類別備注主鍵整型(int)消費金額(total)整型(int)4.4.1主界面1(登陸界面)設計:4.4.2主界面2(操作員界面)設計:修改信息4.4.3主界面3(管理員管理)設計:修改信息查看消費4.4.4分割面板的設計:在開臺簽單工作區(qū)中使用了分割面板,這樣系統(tǒng)操作員可以根據(jù)實際需要,分隔條上得小標記(黑實體三角)將分隔條移動到分割面板的最左側(cè)或最右側(cè),單擊另一個則使分隔條恢復到原位置。finalJSplitPanesplitPane=newJSplitPane();//創(chuàng)建分割面版對象splitPane.setOrientation(JSplitPansplitPane.setDividerLocation(269);//設置面版默認的分割位置splitPane.setDividerSize(10);//設置分割條的寬度splitPane.setOneTouchExpsplitPane.setBorder(newTitledBorder(null,"",TitledBorder.DEFAULT_JUSTIFICATION,TitledBordDEFAULT_POSITION,null,null));//設置面版邊框finalJPanelleftPanel=newJPanel();//創(chuàng)建放于分割面版左側(cè)的普通面版對象leftPanel.setLayout(newBorderLayout());//設置面板的布局管理器4.4.5取系統(tǒng)時間模塊設計:將它們分到不同的區(qū)域以滿足不同使用者的需要。為了實現(xiàn)獲取系統(tǒng)當前時間,{//創(chuàng)建內(nèi)部類publicvoidrun(){//重構(gòu)父類的方法while(true){timeLabel.setText(date.toString().substring(11,19));//獲取當前時間并顯示到時間標簽中try{Thread.sleep(1000);//令線程休眠1秒}catch(InterruptedExceptione){e.printStackTrace();}}}}4.4.6身份選擇面原本的樣貌;退出按鈕用來直接退出本系統(tǒng)。輸入項目:選擇用戶名和密碼。jr1.setOpaque(true);jr1.setActionmand("1");jr2.setOpaque(true);jr2.setActionmand("0");group.add(jr1);group.add(jr2);panel.add(jr1,gro1);panel.add(jr2,gro);jr1.setContentAreaFilled(false);//設置不繪制按鈕的內(nèi)容區(qū)域jr1.setBorderPainted(false);//不繪制單選按鈕的邊框jr2.setContentAreaFilled(false);//設置不繪制按鈕的內(nèi)容區(qū)域jr2.setBorderPainted(false);//不繪制單選按鈕的邊框jr1.setSelected(true);//設置操作員為默認登錄用戶jr1.addActionListener(newActionListener()//管理員單選按鈕監(jiān)聽{{flag=e.getActionmand().toString();//判斷選擇的是操作員還是管理員{}else{for(inti=0;i<userNameV1.size();i++){}for(inti=0;i<userNameV.size();i++){}for(intj=0;j<userNameV.size();j++){}}}});jr2.addActionListener(newActionListener()//操作員單選按鈕添加監(jiān)聽事件{{flag=e.getActionmand().toString();{}else{for(inti=0;i<userNameV1.size();i++){}for(inti=0;i<userNameV.size();i++){}for(intj=0;j<userNameV.size();j++){}}}});4.4.7正則表達式式,所以本系統(tǒng)提供了一個可重用的利用正則表達式來驗證數(shù)據(jù)合法性的方法,用代碼如下:publicclassValidate{publicstaticbooleanexecute(Stringrule,Stringcontent){Patternpattern=Pattern.pile(rule);//利用驗證規(guī)則創(chuàng)建Pattern對象returnmatcher.matches();//返回驗證結(jié)果}}importjava.util.regex.Matcher;importjava.util.regex.Pattern;publicclassValidate{publicstaticbooleanexecute(Stringrule,Stringcontent){Patternpattern=Pattern.pile(rule);//利用驗證規(guī)則創(chuàng)建Pattern對象returnmatcher.matches();//返回驗證結(jié)果}}4.4.8獲取系統(tǒng)當天時間的類以我們在本系統(tǒng)中,書寫了一個系統(tǒng)時間類,從主機{//publicstaticStringgetDate()//獲取系統(tǒng)額日期{}{case7:}{}case1:break;case2:break;case3:break;case4:break;case5:break;case6:break;}}publicstaticStringgetTime(){}publicstaticvoidmain(String[]args){}publicstaticintgetYEAR()//獲取年份{}publicstaticintgetDAY()//獲取當前是那一天{}{}}鑒于現(xiàn)有軟硬件環(huán)境,我決定采用Client/Server體系結(jié)構(gòu)進行軟件開發(fā)。開發(fā)軟件采用。{/**/{/**/setUndecorated(true);//去除登錄界面的邊框體finalMPanelpanel=newMPanel(this.getClass().getResource("/img/wele1.jpg"));//加載界面圖片Toolkittoolkit=Toolkit.getDefaultToolkit();DimensionscreenSize=toolkit.getScreenSizsetLocation((screenSize.width-448)/2,(screenSize.height-280)/2);}publicstaticvoidmain(Stringargs[]){SwingUtilities.invokeLater(newRunnable()//獲取系統(tǒng)的顯示主題{publicvoidrun(){try{}{exception.printStackTrace();}}});Try//加載歡迎界面{wel.setVisible(true);}catch(Exceptione){e.printStackTrace();}for(inti=0;i<=100;i++)//設置進度條的顯示數(shù)據(jù){try{Thread.sleep(10);}catch(InterruptedExceptione){e.printStackTrace();}progressbar.setValue(i);}wel.setVisible(false);}}登錄界面將有效的提高用戶對系統(tǒng)的第一印象。l美觀大方l簡單易懂l安全性高l使用方便l功能明確要使用戶登錄界面美觀大方,就離不開對圖片的使用,但是JPanel類并不支{privatestaticfinallongserialVersionUID=1L;super();//繼承父類的構(gòu)造方法setSize(imageIcon.getIconWidth(),imageIcon.getIconHeight());//設置面板與圖片等大}super.paintponent(g);//調(diào)用JPanel類的paintponent()方法}}景面板,加載進我們選好的圖片,使得登錄界面美觀大方。管理員主要負責賬務的匯總查詢,以及對操作員的添加、刪除。操作員無權(quán)訪問。菜單構(gòu)成,豐富了該系統(tǒng)的功能。己酒店的吸引力,最終實現(xiàn)利潤最大化。以及時看到。這樣可以盡快地熟悉本系統(tǒng)的操作方法。看信息,另一個用來選擇是否要退出本系統(tǒng)。{publicTipWizardFrame1(finalVeprivateJTabbedPanecreateNavigationPanel(finalVectoruser){}//創(chuàng)建導航面板privatefinalclassFrameListenerextendsponentAdapter{}//窗體監(jiān)聽器static{try{}catch(Exceptione){e.printStackTrace();}}}tabbedPane.addTab("退出系統(tǒng)",exits,searchStatisticPanel,"退出系統(tǒng)");操作員可以對客人的要求做出回應即開單、簽單和收費及對菜品菜系進行調(diào)整。簽單:操作員可以在客戶結(jié)賬的時候選擇他們所在的臺號并點擊此按鈕進行簽單、結(jié)賬、然后此臺號可以被重新使用。刪除。進行修改。幫助文檔:該文檔里的內(nèi)容有助于操作員及時明白自己的工作職責。退出系統(tǒng)按鈕:點擊此按鈕可以選擇是否要退出本系統(tǒng)。{Publicstaticvoidmain(Stringargs[]){}PublicTipWizardFrame(finalVectorusr,Stringuser){}PrivateStringgetNum(){}Privatevoida(JLabeldClueOnLabel){}}5.5.1日結(jié)賬功能理酒店的管理事務,有效的調(diào)整經(jīng)營策略。下面我們來簡要介紹實現(xiàn)方a)界面繪制:super();setTitle("日結(jié)賬");setSize(860,620);//設置窗體大小Toolkitkit=Toolkit.getDefaultToolkit();Dimensionscreensize=kit.getScreenSize();intHeight=screensize.height;intyy=(Height-600)/2;setLocation(xx,yy);finalJPanelpanel=newJPanel();{}else{intminYear=Integer.value{}}finalJLabelyearLabel=newJLabel();yearLabel.setText("年");panel.add(yearLabel);{}monthLabel.setText("月");{}finalJLabeldayLabel=newJLabel();dayLabel.setText("日");panel.add(dayLabel);):{{intyear=(Integer)yearboBox.getSelectedItem();{rowV.add(orderForm.get(rowV.add(orderForm.get(3).toString().substring(11,19));//開臺時間rowV.add(orderForm.get(4){rowV.add("——");//商品消費數(shù)量,默認未消費}for(inti=0;i<orderItemV.size();i++){VectororderItem=(Vector)orderItemV.get(i);//消費項目對象{{intamount=(Integer)orderItem.if(rowV.get(column).toString().equals("——"))elsebreak;}}}}totalV.add("總計");totalV.add("——");totalV.add("——");inttotal=0;if(!value.equals("——"))total+=(Integer)value;}totalV.add(total);}tableValueV.add(totalV);}});5.5.2月結(jié)賬和年結(jié)賬所不同。這里不再陳述。5.5.3菜單管理合法;當返回false時表示驗證未通過,數(shù)據(jù)不合法。具體代碼如下:publicclassValidate{publicstaticbooleanexecute(Stringrule,Stringcontent){Patternpattern=Pattern.pile(rule);//利用驗證規(guī)則創(chuàng)建Pattern對象returnmatcher.matches();//返回驗證結(jié)果}}經(jīng)過小組的討論,我們認為,應盡量減少操作員的功能,而是將據(jù)不同情況作了相應的監(jiān)聽事件,在細節(jié)之處,讓系統(tǒng)更加完善。法主要是一些文本區(qū)域、按鈕的監(jiān)聽方法,他們可以規(guī)定一些數(shù)據(jù)輸入的格式和范圍。如下:if((values[2].pareTo("1753-1-1"))<0){Stringinfos[]={"出生日期輸入錯誤!","正確格式為:日期應在1753-1-1以后"};birthdayTextField.setText("");birthdayTextField.requestFocus();return;}人性化和科學化:{{Stringvalues[]=newString[6];values[0]=nameTextField.getText().toString();values[1]=(manRadioButton.isSelected()?"男":"女");values[2]=birthdayTextField.getText();values[3]=idCardTextField.getText().toString();values[4]=passwordTextField.getText().toString();values[5]="正常";if(values[0].length()>4)//對輸入的姓名長度作正則驗證{nameTextField.setText("");return;//如果不正確,返回到輸入對話框,重新輸入}if(!Validate.execute("[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}",values[2])){Stringinfos[]={"出生日期輸入錯誤!","正確格式為:2011-10-8"};birthdayTextField.setText("");birthdayTextField.requestFocus();//生日日期格式不正確,生日輸入文本框重新獲取焦點等待用戶

溫馨提示

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

最新文檔

評論

0/150

提交評論