房屋出租管理计划系统需求分析汇报.doc

上传人:一*** 文档编号:2487613 上传时间:2020-04-12 格式:DOC 页数:30 大小:2.64MB
返回 下载 相关 举报
房屋出租管理计划系统需求分析汇报.doc_第1页
第1页 / 共30页
房屋出租管理计划系统需求分析汇报.doc_第2页
第2页 / 共30页
点击查看更多>>
资源描述

《房屋出租管理计划系统需求分析汇报.doc》由会员分享,可在线阅读,更多相关《房屋出租管理计划系统需求分析汇报.doc(30页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、+*学 号: 2014554330湖南财政经济院课程设计报告课 程面向对象程序设计题 目 房屋出租管理系统专 业信息管理与信息系统班 级14信管二班姓 名王文雅指导教师龚春红2017年56月512日课程设计成绩评定表系别:信息管理与信息技术学院 专业:2014级信息管理与信息系统学 号20145543300姓 名王文雅专题*(设计题目)房屋出租管理系统评定成绩功能要求数据库要求项目 评判标准 (在每一项目对应的标准下方空格内标记)优秀 良好 中等 及格 不及格 工作量资料收集方案设计综合应用能力能力技术水平报告撰写质量实习态度评语: 指导老师: 年月日目录1 绪论42 需求分析52.2数据流程

2、图:72.3功能需求分析103系统总体设计103.1系统功能模块图103.2系统功能描述114数据库设计114.1概念设计114.2逻辑设计124.3表设计125 系统功能模块实现145.1 model层145.2数据访问层145.3业务逻辑层155.4界面层155.5功能展示以及代码166遇到的问题和解决办法277总结281 绪论该管理系统采用企业现有的软硬件环境及科学的管理系统开发方案,建立房屋租赁信息管理系统,实现房屋租赁信息管理的计算机自动化。系统应符合物业管理企业原有的房屋租赁管理制度,并达到操作直观、方便、实用、安全等要求。将房屋租赁过程中产生的房屋信息归入系统, 并利用计算机实现

3、对房屋的分类、查询、统计等功能。高效的房屋信息查询、预警功能, 建立一个多角度的查询系统, 为用户提供强大的查询功能, 将房屋位置、户型、房屋面积、以及租赁合同等房屋管理中的每一要素都作为查询点, 形成计算机查询与租赁合同期预警体系, 提供高效便捷的查询服务。以合同管理为主线, 实现出租房登记、客户管理、合同鉴定、租金管理等功能。该系统实现的是系统管理员对房东,房客,房屋,合同的管理;房客对房屋,房东的查询以及合同的上传打印功能;房东对房屋,房客,合同,租金的管理以及对租房请求的申请的管理。不同的对象有不同的而功能界面,功能比较完善。本系统总共有23个窗体,6张表格,采用三层架构的方法实现。课

4、程设计要求实现:1. 房屋管理:实现管理员或者房东对房屋信息的增删改查功能;2. 房东管理:实现管理员对房东信息的增删改查功能;3. 房客管理:实现管理员或者房东对房客信息的查询,房东对房客租房请求的审核功能;4. 合同管理:房客把合同上传,房东审核合同。5. 租房管理:房客的租房请求,房东的同意租房功能。实验环境:一台装有Microsoft Visual 2012,Microsoft SQL server 2008 R2软件的计算机。2 需求分析2.1业务流程分析2.1.1顶层业务流程图:2.1.2一级业务流程图:一级业务流程图之房屋管理:一级业务流程图之房客管理:一级业务流程图之房东管理:

5、一级业务流程图之合同管理:一级业务流程图出租管理:2.2数据流程图:用户登录模块:该系统的用户包括:管理员,房东,房客。查询数据库中的用户表(manager表)之后,有该用户就显示登录成功,没有该用户就显示登录失败,则显示提示注册用户的提示,注册之后更新用户表。管理员功能界面模块:包括房屋管理,房客管理,房东管理,合同管理。房东管理功能界面:包括房屋管理,房客管理,合同管理,租金管理,接受租房。房客管理功能界面:包括查询房屋,查询房东,租房请求,打印合同。2.3功能需求分析2.3.1总的功能流程图:该系统首先是用户根据自己的权限进入该系统,不同的用户有不同的权限和功能。选择用户类型之后即可登陆

6、不同类型的功能模块。 2.3.2细化功能:1. 登录管理:实现以正确登录人员身份才能登陆系统的功能,正确登录之后才能进行之后的管理。2.添加:添加房屋信息和添加房东信息的功能。3.删除:删除房屋信息和删除房东信息的功能。4.修改:修改房屋信息和修改房东信息的功能。5.查询房屋信息的功能:房屋位置、价格、以及房屋管理中的每一要素都可以作为查询点。6. 查询房东信息的功能:房东类型、房东姓名、以及房东管理中的每一要素都可以作为查询点。7.修改密码:用户可以修改密码。8.房主或者管理员查询房客的功能:请求租房房客的详细信息。9.房主上传合同:将word文档以文件的形式存储在磁盘内,在数据库中以路径的

7、格式存储文件。10.租客下载合同并上传,通过word格式下载下来填写并上传,更新磁盘文件中的内容。3系统总体设计3.1系统功能模块图 3.2系统功能描述1. 登录管理:实现以正确用户名、密码和登录人员身份(或权限)才能登陆系统的功能,正确登录之后才能进行之后的管理。如果登录失败,进行注册操作。2.管理员管理模块:房屋信息的增删改查,房客信息的查询,房东信息的增删改查,合同的获取和核查;3.房东管理模块:房屋的增删改查,房客的查询,合同的获取和审核,租金的查询,接受租房请求五大功能。4.房客管理模块:查询房屋,查询房东,租房请求,打印合同进行签字。4数据库设计4.1概念设计E-R图:这里的用户包

8、括管理员,房东和房客,所以用户和房屋信息表,房东信息表之间是用户操作两张表的关系,这里的操作试着增删改查。对于租房信息表的操作。房东和管理员是查询的操作,对于房客来说是指插入信息的而操作。而用户对于用户表的操作是指登录时的查询和未登录时的注册。4.2逻辑设计用户信息表(用户名,密码,权限);房屋信息表(房屋编号,房屋位置,房东姓名,房屋的租赁状态,房屋类型,装修状况,屋内设施,房屋价格,入住时间,备注信息,房屋图片);房东信息表(身份证号,姓名,性别,电话,房东账户余额,房东的类型,房东照片);租房信息表(房屋编号,身份证号,房客的姓名,开始租住时间,租住月份数,联系电话,月租金,房客照片);

9、房东类型表(类型编号,类型名称);房屋类型表(类型编号,类型名称);4.3表设计用户信息表:(manager表)usernchar(10)Passwordnchar(10)TypeInt房屋信息表:(roominf表)numnchar(10)locationnchar(10)namenchar(10)typenchar(10)designnchar(10)Faclitiesnchar(10)pricefloatlivetimedatetimeinstruductionvarchar(50)statuenchar(10)imgimage房东信息表:(hosterinformation)idnum

10、nvarchar(50)typeNamenchar(10)hosternamenchar(10)sexnchar(10)telphonenvarchar(50)accountfloatimgimage租房信息表(rentroom表):roomnumnchar(10)idnumnvarchar(50)namenchar(10)starttimedatetimemonthnumintmonthlyrentfloattelphonenvarchar(50)imgimage房东类型表(hostertype表):TypeidIntTypenamenchar(10)房屋类型表(housetype表):Ty

11、peidIntTypenamenchar(10)建立表约束:(1)电话号码要为11位:(len(telphone)=(11));(2)房屋编号要为8位:(len(num)=(8));(3)用户密码为6位:(len(password)=(6));(4)身份证号码为18位:(len(idnum)=(18));5 系统功能模块实现5.1 model层实体(Model)用于实现UIBLLDAL之间的数据传递。实体(Model)用于封装实体类数据结构,映射数据库的数据表或视图,用以描述业务中客观存在的对象。Model分离出来是为了更好地解耦,为了更好地发挥分层的作用,更好地进行复用和扩展,增强灵活性。这

12、个就是该系统的Model层,包括了用户类,房东类,租房类,房屋类,房屋类型类,房东类型类。5.2数据访问层数据访问层:使用 ADO.NET 中的数据操作类,为数据库中的每个表,设计 1 个数据访问类。类中实现:记录的插入、删除、单条记录的查询、记录集的查询、单条记录的有无判断等基本的数据操作方法。封装每个数据表的基本记录操作,为实现业务逻辑提供数据库访问基础。这是该系统的数据访问层,包括数据库的连接类,数据库的增删改查操作,用户类,房屋类,房客类,租房类的增删改查操作。5.3业务逻辑层业务逻辑层是数据访问层与界面层之间的桥梁。通过业务逻辑层,界面层能够调用数据逻辑层中对数据库操作的方法。同时,

13、用过业务逻辑层,数据访问层能够把数据库的操作结果返回该界面层。这是该系统的业务逻辑层,包括了房东类,房屋类,用户类,租房类的所有业务操作。5.4界面层展现给用户的界面,即用户在使用一个系统的时候他的所见所得。用于接收用户输入的数据和显示处理后用户需要的数据。这是该系统的界面层,通过连接数据库,实现系统所需的所有功能。清晰明了地展示后台数据。非常便捷。5.5功能展示以及代码1.登录模块:选择用户类型,通过用户名和密码进行登录操作。如果无法登陆请先进行注册。实现不同用户类型登录的代码如下:string s1 = comboBox1.Text; int flag = 0; if (s1 = 管理员)

14、 ma.Type = 0; flag = ma.Type; if (s1 = 房东) ma.Type = 1; flag = ma.Type; if (s1 = 房客) ma.Type = 2; flag = ma.Type; ma.User = comboBox2.Text; ma.Password = textBox1.Text; /验证登录 if (auser.managerlogin(comboBox2.Text,textBox1.Text,flag) MessageBox.Show(该用户登录成功!); this.Hide(); if (ma.Type = 0) /管理员的主窗体 M

15、ainofManager mai = new MainofManager(ma); mai.ShowDialog(); if (ma.Type = 1) /房东的主窗体 MainofHoster mah = new MainofHoster(ma); mah.ShowDialog(); if (ma.Type = 2) /房客的主窗体 RenterMain mar = new RenterMain(ma); mar.ShowDialog(); else MessageBox.Show(没有该用户,请先注册!); 2.管理员管理模块:从中可以看出包括房屋管理,房客管理,房东管理,合同管理四大模块

16、。2.1房屋管理:treeview中显示房屋的各种类型,listview中显示房屋的图片,以及datagrid中显示该类型房屋的所有信息。一目了然。房屋管理模块的而功能是对房屋的增删改查。在这里也可以修改用户的密码。2.1.1房屋的增删改查以及修改当前的用户密码:房屋的增加:房屋的修改:房屋的查询:房屋类型的增删改查操作:修改用户密码:这里在点击用户中心修改密码的时候,用户名,用户类型,密码要自动显示在修改密码窗体上。2.2房东管理模块:和房屋管理模块的思路是一样的。所以该部分的功能实现就不贴照片了。2.3合同管理:获取word文档,这个word文档是房客已经签过字的文档,所以可以查看房客的签

17、名。(下图中最后一行可以看到房客的签名)实现的代码如下:/调用打开文件对话框获取要打开的文件WORD文件,RTF文件,文本文件路径名称 OpenFileDialog opd = new OpenFileDialog(); opd.InitialDirectory = D:/14信管二30班王文雅三层架构实例/wordfile; opd.Filter = Word文档(*.doc)|*.doc|文本文档(*.txt)|*.txt|RTF文档(*.rtf)|*.rtf|所有文档(*.*)|*.*; opd.FilterIndex = 1; if (opd.ShowDialog() = Dialog

18、Result.OK & opd.FileName.Length 0) /建立Word类的实例,缺点:不能正确读取表格,图片等等的显示 ApplicationClass app = new Microsoft.Office.Interop.Word.ApplicationClass(); Document doc = null; object missing = System.Reflection.Missing.Value; object FileName = opd.FileName; object readOnly = false; object isVisible = true; obj

19、ect index = 0; try doc = app.Documents.Open(ref FileName, ref missing, ref readOnly, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref isVisible, ref missing, ref missing, ref missing, ref missing); doc.ActiveWindow.Selection.WholeStory(); do

20、c.ActiveWindow.Selection.Copy(); /从剪切板获取数据 IDataObject data = Clipboard.GetDataObject(); this.richTextBox1.Text = data.GetData(DataFormats.Text).ToString(); finally if (doc != null) doc.Close(ref missing, ref missing, ref missing); doc = null; if (app != null) app.Quit(ref missing, ref missing, ref

21、missing); app = null; 2.4房客管理:这里是管理员对已经递交了租房请求的房客的查询。3.房客管理模块:包括查询房屋,查询房东,租房请求,打印合同四大模块。3.1查询房屋:可以通过备注,居住日期,价格等房屋信息查询房屋。3.2查询房东:通过身份证号码,房东姓名等租房信息可以查询到房东的信息。3.3申请租房:需要把房客自己的所有信息都上传,以便房东的审核。3.4打印合同:打印合同是为了签字,签完字之后将文件已房屋编号为名的格式保存。方便房东的获取合同进行审核。实现打印的代码如下:Microsoft.Office.Interop.Word.Application wordApp

22、 = new Microsoft.Office.Interop.Word.Application(); object fileName = D:/14信管二30班王文雅三层架构实例/wordfile/合同.doc; object confirmConversions = Type.Missing; object readOnly = true; object addToRecentFiles = Type.Missing; object passwordDoc = Type.Missing; object passwordTemplate = Type.Missing; object reve

23、rt = Type.Missing; object writepwdoc = Type.Missing; object writepwTemplate = Type.Missing; object format = Type.Missing; object encoding = Type.Missing; object visible = Type.Missing; object openRepair = Type.Missing; object docDirection = Type.Missing; object notEncoding = Type.Missing; object xml

24、Transform = Type.Missing; Microsoft.Office.Interop.Word.Document doc = wordApp.Documents.Open( ref fileName, ref confirmConversions, ref readOnly, ref addToRecentFiles, ref passwordDoc, ref passwordTemplate, ref revert, ref writepwdoc, ref writepwTemplate, ref format, ref encoding, ref visible, ref

25、openRepair, ref docDirection, ref notEncoding, ref xmlTransform); wordApp.Visible = true; doc.PrintPreview(); 4.房东管理模块:包括房屋管理,租金管理,房客管理,合同管理以及接受租房。合同管理功能和上面的管理员的合同管理是一样的就不写了。4.1租金管理:查询每个房子的租金。4.2房客管理:查询目前有哪些房客要租房。(和上面的管理员的房客管理一样,不再啰嗦)。4.3接受租房:首先是要查看合同,然后是查看房客信息,这里在datagrid中没选中一行即可显示房客的详细信息。点击同意出租的时候

26、要在房屋信息表中把表明未出租的信息变为已出租。同意出租的代码如下所示: /显示出租之后房客的所有信息 string constr = Properties.Settings.Default.constr; private void AgreeRent_Load(object sender, EventArgs e) DataTable dtb = new DataTable(); SqlConnection con = new SqlConnection(constr); string sql = string.Format(Select * from roomrent ); SqlDataA

27、dapter ada = new SqlDataAdapter(sql, con); ada.Fill(dtb); dataGridView1.DataSource = dtb; dataGridView1.Columnsimg.Visible = false; /同意出租,即意味着:房间的未出租状态要变为已出租 private void button2_Click(object sender, EventArgs e) /roominformation room = new roominformation(); /修改房屋的出租状态 HouseDal hda = new HouseDal()

28、; if (hda.statue( num,已出租 ) MessageBox.Show(num+ 号房已经被同意出租啦!); else MessageBox.Show(房东还没有同意,建议电话咨询!); 6遇到的问题和解决办法(1) 在将查询之后的数据填充到datagrid中时因为忘记将数据加到datagrid中的行中而不能显示。type.TypeId = (int)dataGridView1.CurrentRow.Cells0.Value;textBox1.Text = dataGridView1.CurrentRow.Cells0.Value.ToString();type.TypeNam

29、e = textBox2.Text = dataGridView1.CurrentRow.Cells1.Value.ToString();(2) 不能实现获取合同和打印合同时,解决的办法是:首先在添加引入中引入:Microsoft.Office.Interop.Word;然后:using Microsoft.Office.Interop.Word;这样做完之后还是或有Application接口不能使用的错误,这个问题的解决就是:在引用中右Microsoft.Office.Interop.Word引用,打开它的属性,把嵌入互操作类型改为:false。 7总结 当我把所有的代码都写完的时候,真的是

30、一种满足感和成就感油然而生,就算是已经连续熬夜两天的状况。但是我也要自我检讨一下,因为代码是三个晚上熬夜写的,因为当我开始建数据库的时候就就一直感觉无从下手,我想的太多,做的太少。我觉得写系统的时候一定要克服为难的心理,不要一直自己想呀想,试图通过想象就可以一步到位,不用经过多的修改就可以写出一个完美的系统。这是不可能的,一定要先实现再完美,系统的完善一定是不断得试错,不断地改错才会逐步完善。所以写系统的时候可以先不需要建一个完美的数据库出来,数据库的完善也是要通过代码的调整而调整的。所以可以一边调研,一边完善数据库,一边实现功能。我觉得这个系统我的数据库建的不好,没有实现所有的实体关系都是1

31、:n的关系。所以数据库的建立还需要改进。尽管现在所有的代码都实现了,但是还是有很多细节没有注意到,下面这些细节都是需要后续的工作去完成。1. 自动登录和记住密码的功能没有实现。我是用读取文档和写文档的方法实现,但是没有成功。我是想用数据库的方法去实现它。2. 当选择用户权限登录的时候,房东和管理员的注册时应该被限制的,不然随便一个人注册一个账号就可以修改房屋,房东和房客的信息是很不合理的。所以这里要有一个超级用户去实现登录与注册的管理。3. 我没有用存储过程写,老师说大型一点的系统一定要用存过程去实现。存储过程的使用可以少些很多代码。一定要多用。4. 房东账户余额的设置那里很不好,因为我没有实现房东的余额通过房屋出租的完成实现自动添加。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 施工组织

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com