摘要:隨著信息化建設(shè)的逐步深入,如何利用現(xiàn)有的計(jì)算機(jī)技術(shù)建立一套高效、靈活、功能強(qiáng)大的管理系統(tǒng),正成為計(jì)算機(jī)專業(yè)人員關(guān)注的重要問(wèn)題。信息化進(jìn)程不斷推進(jìn),使得其更加逐步地滲透到了普通人的生活領(lǐng)域。本文通過(guò)對(duì)部分房屋出租方的功能分析、需求分析,進(jìn)行房屋出租管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)。具體實(shí)現(xiàn)了房屋出租房、客戶等相關(guān)信息的添加等。
關(guān)鍵詞:房屋出租管理;需求分析;系統(tǒng)設(shè)計(jì)
中圖分類號(hào):TP311文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2009)04-0787-05
The Design and Implementation of Rental Housing Management System
WEI Pei-xian1,WEI Pei-li2
(1.Computer College of HuaQiao University,Quanzhou 362000,China;2.Information Technology Lab.of Quanzhou Normal University,Quanzhou 362000,China)
Abstract: As the gradually depth of Information Construction, more and more people concern to how to make an efficient, flexible and powerful management system using existing computer technology. They also enter into the common people’s lift. This article related to the resent-house management system using the important function and demand. We can use it to add the information of order and landlord.
Key words: Rental Housing Management,Requirements Analysis,System Design
1 系統(tǒng)分析
利用計(jì)算機(jī)實(shí)現(xiàn)房屋租賃管理勢(shì)在必行。對(duì)于房主或中介來(lái)說(shuō),利用計(jì)算機(jī)支持企業(yè)高效率完成房屋租賃管理的日常事務(wù),是適應(yīng)現(xiàn)代企業(yè)制度要求、推動(dòng)企業(yè)勞動(dòng)型管理走向科學(xué)化、規(guī)范化的必要條件;而房屋租賃管理是一項(xiàng)瑣碎、復(fù)雜而又十分細(xì)致的工作,房屋的基本資料,客戶資料的管理,房屋租賃管理,各項(xiàng)收費(fèi)以及統(tǒng)計(jì)報(bào)表的管理,一般不允許出錯(cuò),如果實(shí)行手工操作,須手工填制大量的表格,這就會(huì)耗費(fèi)工作人員大量的時(shí)間和精力,計(jì)算機(jī)進(jìn)行房屋租賃工作的管理,不僅能夠保證各項(xiàng)信息準(zhǔn)確無(wú)誤、快速輸出,同時(shí)計(jì)算機(jī)具有手工管理所無(wú)法比擬的優(yōu)點(diǎn)。例如:檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、保密性好、壽命長(zhǎng)、成本低、打印方便等。這些優(yōu)點(diǎn)能夠極大地提高物業(yè)管理的效率,也是企業(yè)的科學(xué)化、正規(guī)化管理,與世界接軌的重要條件。
開(kāi)發(fā)本系統(tǒng)就是為了解決房屋租賃信息管理中的一些不規(guī)范,使房屋租賃信息的管理向著規(guī)范化、簡(jiǎn)單化、有效化的方向發(fā)展。
1.1 可行性分析
1) 經(jīng)濟(jì)可行性分析
本系統(tǒng)開(kāi)發(fā)簡(jiǎn)單但要耗去一定的時(shí)間,系統(tǒng)采用快速開(kāi)發(fā)工具VB,數(shù)據(jù)庫(kù)是用戶常用的ACCESS桌面數(shù)據(jù)庫(kù)成本低且效率高。由于系統(tǒng)能夠在未來(lái)較長(zhǎng)的一段時(shí)期內(nèi)穩(wěn)定地發(fā)揮作用,這對(duì)于房屋租賃信息的自動(dòng)化管理,對(duì)企業(yè)的人力和財(cái)力都有很大的幫助。由此可見(jiàn)在,開(kāi)發(fā)此系統(tǒng)在經(jīng)濟(jì)上是完全可行的。
2) 操作可行性分析
如今的計(jì)算機(jī)已經(jīng)走進(jìn)千家萬(wàn)戶,硬件成本的下降,導(dǎo)致計(jì)算機(jī)購(gòu)買成本的降低。我開(kāi)發(fā)的這套系統(tǒng)是利用Microsoft Visual Basic作為軟件的開(kāi)發(fā)平臺(tái),使開(kāi)發(fā)出來(lái)的系統(tǒng)有友好的用戶界面、有良好的安全性設(shè)置、易操作等特點(diǎn),這樣更使各類用戶很快地掌握系統(tǒng)的使用方法,因此在操作上是可行的。
3) 技術(shù)可行性分析
從目前IT業(yè)界比較流行的數(shù)據(jù)庫(kù)開(kāi)發(fā)、管理軟件來(lái)看,對(duì)于比較簡(jiǎn)單的中小型數(shù)據(jù)庫(kù),Visual Basic 6.0和Windows 2000/XP的結(jié)合無(wú)疑是在實(shí)際應(yīng)用中較為成功的一種解決方案。為用戶提供了業(yè)界軟件開(kāi)發(fā)一直堅(jiān)持的非常友好、操作簡(jiǎn)單的用戶界面、完善強(qiáng)大的數(shù)據(jù)庫(kù)操作功能和簡(jiǎn)潔明了的數(shù)據(jù)庫(kù)接口。所以技術(shù)實(shí)行起來(lái)相對(duì)會(huì)容易。
2 系統(tǒng)目標(biāo)
采用企業(yè)現(xiàn)有的軟硬件環(huán)境及科學(xué)的管理系統(tǒng)開(kāi)發(fā)方案,建立房屋租賃信息管理系統(tǒng),實(shí)現(xiàn)房屋租賃信息管理的計(jì)算機(jī)自動(dòng)化。 系統(tǒng)應(yīng)符合物業(yè)管理企業(yè)原有的房屋租賃管理制度,并達(dá)到操作直觀、方便、實(shí)用、安全等要求。當(dāng)前,很多物業(yè)管理企業(yè)的房屋租賃信息管理都是以紙張為介質(zhì)作記錄,人力管理的比例比較大,往往是各個(gè)主要負(fù)責(zé)人以書(shū)面的形式管理房屋租賃信息,效率低,數(shù)據(jù)打印、匯總和更新不及時(shí),容易丟失,不易保存且保密性較差。
2.1 系統(tǒng)總體流程圖
圖1為系統(tǒng)總體流程圖。
2.2 系統(tǒng)的數(shù)據(jù)流程圖及分析
圖2為數(shù)據(jù)流程圖。
整個(gè)系統(tǒng)從總體上分為系統(tǒng)管理、客戶資料管理、房間信息管理、費(fèi)用管理以及統(tǒng)計(jì)報(bào)表五大部分,每一部分實(shí)現(xiàn)的功能如下:
首先分析一個(gè)系統(tǒng)的主要功能。
1) 管理員通過(guò)系統(tǒng)管理界面進(jìn)入,建立房間基本信息、系統(tǒng)用戶信息等,并將所有信息保存在數(shù)據(jù)庫(kù)中,同時(shí)管理員還能夠?qū)σ陨闲畔⑦M(jìn)行添加、刪除等基本操作。
2) 操作人員可以通過(guò)使用該系統(tǒng)查詢房間基本信息、客戶基本信息、費(fèi)用結(jié)算信息等。
3) 系統(tǒng)生成客戶應(yīng)繳費(fèi)用,同時(shí)可以生成催款單。
4) 提供相應(yīng)報(bào)表分析入住率、客戶情況分析等,為房主、中介公司決策提供依據(jù)。
為了直觀描述房屋出租管理系統(tǒng)的各項(xiàng)功能,我們用圖3來(lái)大體講述一下該系統(tǒng)的總體架構(gòu)。
2.3 系統(tǒng)功能模塊圖
圖4為系統(tǒng)功能模塊圖。
2.4 系統(tǒng)功能描述
根據(jù)以上房屋出租管理系統(tǒng)功能模塊圖,為使房屋出租管理系統(tǒng)的各模塊更為清晰,以下具體描述了房屋出租管理系統(tǒng)的各模塊功能。
1) 系統(tǒng)管理模塊
系統(tǒng)管理模塊用于對(duì)系統(tǒng)的用戶的基本信息進(jìn)行管理,如設(shè)定系統(tǒng)使用權(quán)限、進(jìn)行新用戶注冊(cè)、修改用戶密碼等。它是出于系統(tǒng)的安全考慮和用戶所具有軟件操作權(quán)限控制。
2) 房間信息管理模塊
房間信息管理模塊主要用于對(duì)房間的基本信息(房間號(hào)、朝向、是否上網(wǎng)、人數(shù)等)進(jìn)行管理,包括添加房間基本信息、查詢房間基本信息、瀏覽房間基本信息等。
3) 客戶檔案管理模塊
檔案管理模塊主要用于對(duì)客戶的檔案信息即入住檔案(姓名、性別、入住時(shí)間、家庭住址、身份證號(hào)等)進(jìn)行管理,包括添加客戶入住登記信息、刪除客戶入住登記信息、修改客戶信息、查詢客戶信息等。
4) 客戶費(fèi)用結(jié)算管理模塊
客戶費(fèi)用結(jié)算管理模塊是用于對(duì)客戶的基本住宿費(fèi)用、水費(fèi)、電費(fèi)、上網(wǎng)費(fèi)等基本信息進(jìn)行管理,包括添加客戶基本交費(fèi)信息等。
5) 報(bào)表分析模塊
根據(jù)客戶的入住情況,系統(tǒng)查詢產(chǎn)生當(dāng)前、每月、整年的入住率,為物業(yè)或中介公司提供數(shù)據(jù)分析。系統(tǒng)可以按條件產(chǎn)生入住客戶的分布情況。
3 數(shù)據(jù)庫(kù)設(shè)計(jì)
數(shù)據(jù)庫(kù)需求分析是數(shù)據(jù)庫(kù)設(shè)計(jì)的第一階段也是很重要的一個(gè)階段,它是收集基本數(shù)據(jù)以及數(shù)據(jù)處理的流程,為以后進(jìn)一步設(shè)計(jì)打下基礎(chǔ),需求分析主要解決兩個(gè)問(wèn)題:
處理要求。弄清應(yīng)用系統(tǒng)用戶需求對(duì)數(shù)據(jù)庫(kù)進(jìn)行什么樣的處理,及數(shù)據(jù)庫(kù)中各種數(shù)據(jù)之間的關(guān)系;
內(nèi)容要求。弄清應(yīng)用系統(tǒng)用戶所需要操作的數(shù)據(jù),決定在數(shù)據(jù)庫(kù)中存儲(chǔ)什么數(shù)據(jù)。
在數(shù)據(jù)庫(kù)需求分析后,應(yīng)該得到一個(gè)數(shù)據(jù)字典文檔,包括3個(gè)方面的內(nèi)容:
數(shù)據(jù)項(xiàng)。包括名稱、含義、類型、取值范圍、長(zhǎng)度以及和其它數(shù)據(jù)項(xiàng)之間的邏輯關(guān)系。如房間號(hào)、朝向、類型、是否上網(wǎng)、人數(shù)、電表號(hào)等。
數(shù)據(jù)結(jié)構(gòu)。若干數(shù)據(jù)項(xiàng)的有意義的集合,包括名稱、含義以及組成數(shù)據(jù)結(jié)構(gòu)的數(shù)據(jù)項(xiàng)。如房間基本信息表(HouseInfo)、客戶基本信息表(OrderInfo)等。
數(shù)據(jù)流。指數(shù)據(jù)庫(kù)中數(shù)據(jù)的處理過(guò)程,包括輸入、處理、輸出。
利用Microsoft Access 2003對(duì)房屋出租管理系統(tǒng)進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì),在需求分析階段,通過(guò)對(duì)房屋管理系統(tǒng)的功能進(jìn)行抽象、需求進(jìn)行收集與分析設(shè)計(jì)出如下的系統(tǒng)數(shù)據(jù)信息。
3.1 數(shù)據(jù)庫(kù)概念設(shè)計(jì)
根據(jù)本文提供的數(shù)據(jù)流程圖抽象出圖5的E-R圖。
3.2 數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)
根據(jù)以上的E-R圖,設(shè)計(jì)出OrdeInfo、HouseInfo、jf關(guān)系
1) OrdeInfo表(客戶基本信息表)(如表1)
2) HouseInfo表(房屋基本信息表)(如表2)
4 代碼實(shí)現(xiàn)
4.1用戶登錄代碼
Private Sub Command1_Click()
If Trim(Text1(0).Text) = \"\" Then
MsgBox \"用戶名不能為空!\", vbExclamation + vbOKOnly, \"警告\"
Text1(0).SetFocus
Exit Sub
End If
If Trim(Text1(1).Text) = \"\" Then
MsgBox \"密碼不能為空!\", vbExclamation + vbOKOnly, \"警告\"
Text1(1).SetFocus
Exit Sub
End If
If Trim(Text1(2).Text) = \"\" Then
MsgBox \"確認(rèn)密碼不能為空!\", vbExclamation + vbOKOnly, \"警告\"
Text1(2).SetFocus
Exit Sub
End If
If Trim(Text1(1).Text) <> Trim(Text1(2).Text) Then
MsgBox \"確認(rèn)密碼不正確!\", vbExclamation + vbOKOnly, \"警告\"
Text1(2).SetFocus
Exit Sub
End If
Dim aa As Integer
aa = 0
If Option1(2).Value = True Then
For i = 0 To 3
If Check1(i).Value = 1 Then
aa = 1
Exit For
End If
Next i
If aa = 0 Then
MsgBox \" 普通用戶至少要有一項(xiàng)權(quán)限!\", vbExclamation + vbOKOnly, \"警告\"
Exit Sub
End If
End If
Dim mrc As ADODB.Recordset
txtSQL = \"select * from use where username='\" Trim(Text1(0).Text) \"'\"
Set mrc = ExecuteSQL(txtSQL)
If mrc.EOF = False Then
MsgBox \" 已存在該用戶!\", vbExclamation + vbOKOnly, \"警告\"
Text1(0).SetFocus
Text1(0).SelStart = 0
Text1(0).SelLength = Len(Text1(0).Text)
Exit Sub
End If
txtSQL = \"select * from use\"
Set mrc = ExecuteSQL(txtSQL)
mrc.AddNew
mrc.Fields(0) = Trim(Text1(0).Text)
mrc.Fields(1) = Trim(Text1(1).Text)
For i = 0 To 2
If Option1(i).Value = True Then
Select Case i
Case 0
mrc.Fields(\"admin\") = \"y\"
Case 1
mrc.Fields(\"readonly\") = \"y\"
Case 2
For j = 0 To 2
If Check1(j).Value = 1 Then
Select Case j
Case 0
mrc.Fields(\"qx1\") = \"y\"
Case 1
mrc.Fields(\"qx2\") = \"y\"
Case 2
mrc.Fields(\"qx3\") = \"y\"
End Select
End If
Next j
End Select
End If
Next i
mrc.Update
MsgBox \" 用戶添加成功!\", vbExclamation + vbOKOnly, \"警告\"
Text1(0).Text = \"\"
Text1(1).Text = \"\"
Text1(2).Text = \"\"
End Sub
Private Sub Form_Load()
Option1(2).Value = True
End Sub
Private Sub Form_Resize()
Text1(0).SetFocus
End Sub
Private Sub Option1_Click(Index As Integer)
If Index <> 2 Then
For i = 0 To 2
Check1(i).Enabled = False
Next i
Else
For i = 0 To 2
Check1(i).Enabled = True
Next i
End If
EndS
4.2 房屋出租管理系統(tǒng)客戶信息添加代碼
Dim txtsql1 As String
Private Sub Combo1_Click(Index As Integer)
Dim mrc As ADODB.Recordset
End Sub
Private Sub Combo1_KeyPress(Index As Integer, KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys \"{TAB}\"
End If
End Sub
Private Sub Command1_Click()
For j = 0 To 1
If Text1(j) = \"\" Then
ss = MsgBox(Label1(j).Caption \"不能為空!\", vbExclamation + vbOKOnly, \"警告\")
Text1(j).SetFocus
Text1(j).SelStart = 0
Text1(j).SelLength = Len(Text1(j).Text)
Exit Sub
End If
Next
For j = 3 To 7
If Text1(j) = \"\" Then
ss = MsgBox(Label1(j).Caption \"不能為空!\", vbExclamation + vbOKOnly, \"警告\")
Text1(j).SetFocus
Text1(j).SelStart = 0
Text1(j).SelLength = Len(Text1(j).Text)
Exit Sub
End If
Next
Dim mrc As ADODB.Recordset
If modi = False Then
txtsql1 = \"select * from OrderInfo where 客戶編號(hào)='\" Trim(Text1(0).Text) \"'\"
Set mrc = ExecuteSQL(txtsql1)
If mrc.EOF = False Then
sss = MsgBox(\"已經(jīng)存在該客戶的記錄,客戶編號(hào)不能重復(fù)!\", vbExclamation + vbOKOnly, \"警告\")
Text1(0).SetFocus
Text1(0).SelStart = 0
Text1(0).SelLength = Len(Text1(0).Text)
mrc.Close
Exit Sub
End If
End If
If modi = True Then
txtsql1 = \"update OrderInfoset 客戶編號(hào)='\" Trim(Text1(0).Text) \"',姓名='\" Trim(Text1(1).Text) \"',性別='\" Trim(Combo1(0).Text) \"',終止時(shí)間='\" Trim(DTPicker1.Value) \"',起始時(shí)間=#\" Trim(DTPicker2.Value) \"# ,家庭住址='\" Trim(Text1(3).Text) \"' ,郵政編碼='\" Trim(Text1(4).Text) \"' ,聯(lián)系電話='\" Trim(Text1(5).Text) \"' ,房間號(hào)=#\" Trim(Text1(6).Text) \"# ,備注='\" Trim(Text1(7).Text) \"'where 房間號(hào)='\" Trim(Frmliulan.MSF1.TextMatrix(Frmliulan.MSF1.Row, 1)) \"'\"
Set mrc = ExecuteSQL(txtsql1)
txtsql1 = \"update cj set 房間號(hào)='\" Trim(Text1(0).Text) \"' where 房間號(hào)='\" Trim(Frmliulan.MSF1.TextMatrix(Frmliulan.MSF1.Row, 1)) \"'\"
Set mrc = ExecuteSQL(txtsql1)
txtsql1 = \"update jf set 房間號(hào)='\" Trim(Text1(0).Text) \"' where 房間號(hào)='\" Trim(Frmliulan.MSF1.TextMatrix(Frmliulan.MSF1.Row, 1)) \"'\" 'Set mrc = ExecuteSQL(txtsql1)
Unload Me
Exit Sub
End If
txtsql1 = \"select * from OrderInfo \"
Set mrc = ExecuteSQL(txtsql1)
mrc.AddNew
mrc.Fields(0) = Trim(Text1(0).Text)
mrc.Fields(1) = Trim(Text1(1).Text)
mrc.Fields(2) = Trim(Combo1(0).Text)
mrc.Fields(3) = Trim(DTPicker2.Value)
mrc.Fields(4) = Trim(DTPicker1.Value)
For j = 3 To 7
mrc.Fields(j + 2) = Trim(Text1(j).Text)
Next
mrc.Update
Set mrc = Nothing
For j = 0 To 1
Text1(j) = \"\"
Next
For j = 3 To 7
Text1(j) = \"\"
Next
MsgBox \" 客戶信息添加成功!\", vbExclamation + vbOKOnly, \"警告\"
FrmAddOrder.Hide
End Sub
5 結(jié)束語(yǔ)
根據(jù)使用者的不同,房屋出租管理系統(tǒng)的設(shè)計(jì)側(cè)重點(diǎn)可能不同,也就有其個(gè)性。不同的設(shè)計(jì)人員根據(jù)需求分析對(duì)房屋出租管理系統(tǒng)的理解也不同,因此其并沒(méi)有一成不變的設(shè)計(jì)方案。為了更好地適應(yīng)經(jīng)濟(jì)發(fā)展需要、更好地為系統(tǒng)使用者服務(wù),必須采取整體布局、逐步實(shí)施的長(zhǎng)遠(yuǎn)計(jì)劃,盡可能地減少系統(tǒng)的后期維護(hù),確保系統(tǒng)的穩(wěn)定性。
參考文獻(xiàn):
[1] 李蘭友.Visual Basic應(yīng)用程序設(shè)計(jì)[M].北京:北方交通大學(xué)出版社.
[2] 楊富國(guó).visual basic程序開(kāi)發(fā)案例解析——通用程序設(shè)計(jì)案例叢書(shū)》[M].北京:清華大學(xué)出版社.
[3] 張海藩.軟件工程導(dǎo)論[M].北京:清華大學(xué)出版社.
[4] 崔競(jìng).visual basic 6.0基礎(chǔ)與實(shí)踐教程[M].北京:電子工業(yè)出版社.