当前位置:文档之家› 房屋出租管理系统需求分析报告报告材料

房屋出租管理系统需求分析报告报告材料

湖南财政经济院课程设计报告课程面向对象程序设计题目房屋出租管理系统专业信息管理与信息系统班级14信管二班姓名王文雅指导教师龚春红2017 年56 月512 日课程设计成绩评定表系别:信息管理与信息技术学院专业:2014级信息管理与信息系统目录1 绪论 (4)2 需求分析 (5)2.2数据流程图: (7)2.3功能需求分析 (10)3系统总体设计 (10)3.1系统功能模块图 (10)3.2系统功能描述 (11)4数据库设计 (11)4.1概念设计 (11)4.2逻辑设计 (12)4.3表设计 (12)5 系统功能模块实现 (14)5.1 model层 (14)5.2数据访问层 (14)5.3业务逻辑层 (15)5.4界面层 (15)5.5功能展示以及代码 (16)6遇到的问题和解决办法 (27)7总结 (28)1 绪论该管理系统采用企业现有的软硬件环境及科学的管理系统开发方案,建立房屋租赁信息管理系统,实现房屋租赁信息管理的计算机自动化。

系统应符合物业管理企业原有的房屋租赁管理制度,并达到操作直观、方便、实用、安全等要求。

将房屋租赁过程中产生的房屋信息归入系统, 并利用计算机实现对房屋的分类、查询、统计等功能。

高效的房屋信息查询、预警功能, 建立一个多角度的查询系统, 为用户提供强大的查询功能, 将房屋位置、户型、房屋面积、以及租赁合同等房屋管理中的每一要素都作为查询点, 形成计算机查询与租赁合同期预警体系, 提供高效便捷的查询服务。

以合同管理为主线, 实现出租房登记、客户管理、合同鉴定、租金管理等功能。

该系统实现的是系统管理员对房东,房客,房屋,合同的管理;房客对房屋,房东的查询以及合同的上传打印功能;房东对房屋,房客,合同,租金的管理以及对租房请求的申请的管理。

不同的对象有不同的而功能界面,功能比较完善。

本系统总共有23个窗体,6张表格,采用三层架构的方法实现。

课程设计要求实现:1.房屋管理:实现管理员或者房东对房屋信息的增删改查功能;2.房东管理:实现管理员对房东信息的增删改查功能;3.房客管理:实现管理员或者房东对房客信息的查询,房东对房客租房请求的审核功能;4.合同管理:房客把合同上传,房东审核合同。

5.租房管理:房客的租房请求,房东的同意租房功能。

实验环境:一台装有Microsoft Visual 2012,Microsoft SQL server 2008 R2软件的计算机。

2 需求分析2.1业务流程分析2.1.1顶层业务流程图:2.1.2一级业务流程图:一级业务流程图之房屋管理:一级业务流程图之房东管理:一级业务流程图出租管理:2.2数据流程图:用户登录模块:该系统的用户包括:管理员,房东,房客。

查询数据库中的用户表(manager表)之后,有该用户就显示登录成功,没有该用户就显示登录失败,则显示提示注册用户的提示,注册之后更新用户表。

管理员功能界面模块:包括房屋管理,房客管理,房东管理,合同管理。

房东管理功能界面:包括房屋管理,房客管理,合同管理,租金管理,接受租房。

房客管理功能界面:包括查询房屋,查询房东,租房请求,打印合同。

2.3功能需求分析2.3.1总的功能流程图:该系统首先是用户根据自己的权限进入该系统,不同的用户有不同的权限和功能。

选择用户类型之后即可登陆不同类型的功能模块。

2.3.2细化功能:1. 登录管理:实现以正确登录人员身份才能登陆系统的功能,正确登录之后才能进行之后的管理。

2.添加:添加房屋信息和添加房东信息的功能。

3.删除:删除房屋信息和删除房东信息的功能。

4.修改:修改房屋信息和修改房东信息的功能。

5.查询房屋信息的功能:房屋位置、价格、以及房屋管理中的每一要素都可以作为查询点。

6. 查询房东信息的功能:房东类型、房东姓名、以及房东管理中的每一要素都可以作为查询点。

7.修改密码:用户可以修改密码。

8.房主或者管理员查询房客的功能:请求租房房客的详细信息。

9.房主上传合同:将word文档以文件的形式存储在磁盘内,在数据库中以路径的格式存储文件。

10.租客下载合同并上传,通过word格式下载下来填写并上传,更新磁盘文件中的内容。

3系统总体设计3.1系统功能模块图3.2系统功能描述1. 登录管理:实现以正确用户名、密码和登录人员身份(或权限)才能登陆系统的功能,正确登录之后才能进行之后的管理。

如果登录失败,进行注册操作。

2.管理员管理模块:房屋信息的增删改查,房客信息的查询,房东信息的增删改查,合同的获取和核查;3.房东管理模块:房屋的增删改查,房客的查询,合同的获取和审核,租金的查询,接受租房请求五大功能。

4.房客管理模块:查询房屋,查询房东,租房请求,打印合同进行签字。

4数据库设计4.1概念设计E-R图:这里的用户包括管理员,房东和房客,所以用户和房屋信息表,房东信息表之间是用户操作两张表的关系,这里的操作试着增删改查。

对于租房信息表的操作。

房东和管理员是查询的操作,对于房客来说是指插入信息的而操作。

而用户对于用户表的操作是指登录时的查询和未登录时的注册。

4.2逻辑设计用户信息表(用户名,密码,权限);房屋信息表(房屋编号,房屋位置,房东姓名,房屋的租赁状态,房屋类型,装修状况,屋内设施,房屋价格,入住时间,备注信息,房屋图片);房东信息表(身份证号,姓名,性别,电话,房东账户余额,房东的类型,房东照片);租房信息表(房屋编号,身份证号,房客的姓名,开始租住时间,租住月份数,联系电话,月租金,房客照片);房东类型表(类型编号,类型名称);房屋类型表(类型编号,类型名称);4.3表设计建立表约束:(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)用于实现UI—>BLL—>DAL之间的数据传递。

实体(Model)用于封装实体类数据结构,映射数据库的数据表或视图,用以描述业务中客观存在的对象。

Model分离出来是为了更好地解耦,为了更好地发挥分层的作用,更好地进行复用和扩展,增强灵活性。

这个就是该系统的Model层,包括了用户类,房东类,租房类,房屋类,房屋类型类,房东类型类。

5.2数据访问层数据访问层:使用 中的数据操作类,为数据库中的每个表,设计 1 个数据访问类。

类中实现:记录的插入、删除、单条记录的查询、记录集的查询、单条记录的有无判断等基本的数据操作方法。

封装每个数据表的基本记录操作,为实现业务逻辑提供数据库访问基础。

这是该系统的数据访问层,包括数据库的连接类,数据库的增删改查操作,用户类,房屋类,房客类,租房类的增删改查操作。

5.3业务逻辑层业务逻辑层是数据访问层与界面层之间的桥梁。

通过业务逻辑层,界面层能够调用数据逻辑层中对数据库操作的方法。

同时,用过业务逻辑层,数据访问层能够把数据库的操作结果返回该界面层。

这是该系统的业务逻辑层,包括了房东类,房屋类,用户类,租房类的所有业务操作。

5.4界面层展现给用户的界面,即用户在使用一个系统的时候他的所见所得。

用于接收用户输入的数据和显示处理后用户需要的数据。

这是该系统的界面层,通过连接数据库,实现系统所需的所有功能。

清晰明了地展示后台数据。

非常便捷。

5.5功能展示以及代码1.登录模块:选择用户类型,通过用户名和密码进行登录操作。

如果无法登陆请先进行注册。

实现不同用户类型登录的代码如下:string s1 = comboBox1.Text;int flag = 0;if (s1 == "管理员"){ma.Type = 0;flag = ma.Type;}if (s1 == "房东"){ma.Type = 1;flag = ma.Type;}if (s1 == "房客"){ma.Type = 2;flag = ma.Type;}er = comboBox2.Text;ma.Password = textBox1.Text;//验证登录if (auser.managerlogin(comboBox2.Text,textBox1.Text,flag)) {MessageBox.Show("该用户登录成功!");this.Hide();if (ma.Type == 0){//管理员的主窗体MainofManager 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.管理员管理模块:从中可以看出包括房屋管理,房客管理,房东管理,合同管理四大模块。

2.1房屋管理:treeview中显示房屋的各种类型,listview中显示房屋的图片,以及datagrid中显示该类型房屋的所有信息。

一目了然。

房屋管理模块的而功能是对房屋的增删改查。

在这里也可以修改用户的密码。

2.1.1房屋的增删改查以及修改当前的用户密码:房屋的增加:房屋的修改:房屋的查询:房屋类型的增删改查操作:修改用户密码:这里在点击用户中心修改密码的时候,用户名,用户类型,密码要自动显示在修改密码窗体上。

2.2房东管理模块:和房屋管理模块的思路是一样的。

所以该部分的功能实现就不贴照片了。

2.3合同管理:获取word文档,这个word文档是房客已经签过字的文档,所以可以查看房客的签名。

(下图中最后一行可以看到房客的签名)实现的代码如下://调用打开文件对话框获取要打开的文件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() == DialogResult.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;object 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();doc.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 missing);app = null;}}}2.4房客管理:这里是管理员对已经递交了租房请求的房客的查询。

相关主题