🎈系统亮点:WebSocket实时通讯、协同过滤算法、地图API、Echarts图形化分析;
一.系统开发工具与环境搭建
1.系统设计开发工具
后端使用Java编程语言的Spring boot框架
项目架构:B/S架构
运行环境:win10/win11、jdk17
前端:
技术:框架Vue.js;UI库:ElementUI;
开发工具:Visual Studio Code;
后端:
技术:Java语言、mybatis plus、Spring boot框架;
开发工具:IDEA 2023.3.3版本;
数据库:
数据库:mysql5.7/8.0
数据库工具:Navicat12版本;
二.系统功能需求分析
房屋匹配系统分为三个角色,购房者、销售人员和管理员。下面根据这三个角色进行需求分析。
2.1 系统购房者用例
系统购房者用例需求分析,可归纳为以下几点:
(1) 个人中心:购房者可以进行注册系统账号,进行登录系统,修改个人信息以及密码。
(2) 热门楼盘:购房者可以通过输入面积、户型特色、户型、物业类型等信息进行搜索楼盘信息。查看楼盘的详细信息,比如实景图、户型图等信息。地图展示楼盘的具体位置。可以对喜欢的楼盘进行收藏,和楼盘的销售人员进行咨询楼盘相关问题,还可以选择楼盘及预约的时间进行申请看房操作。并查看用户对楼盘的留言情况。
(3) 地图找房:可以根据地图搜索楼盘信息,点击楼盘,显示该楼盘在地图的位置。查看楼盘的详细信息。
(4) 我的预约看房:购房者可查看自己的预约记录,根据自己的选择进行取消看房,查看楼盘,联系销售人员。
(5) 我的合同:购房者可以查看自己的购房合同信息,查看详情,进行签订和取消合同。
2.2 系统销售人员用例
系统销售人员用例需求分析,可归纳为以下几点:
(1) 个人中心:销售人员可以登录账号,修改个人信息及密码。
(2) 客户管理:销售人员可以查看联系自己的购房者信息,手机号等信息,方便线下沟通。也可以线上进行回复购房者的问题。
(3) 楼盘管理:销售人员有权维护楼盘相关的资讯信息,进行增删改查操作,让用户更加了解楼盘的资讯信息。销售人员可以查看所有人对楼盘的留言信息,允许销售人员进行删除楼盘信息。支持销售人员查看购房者收藏的楼盘信息。
(4) 房源管理:销售人员可以为楼盘上传对应的户型详细信息。查看楼盘的房源情况,对房源信息进行增删改查以及签订合同操作。当房源签订合同,房源信息状态就会改为已售出。
(5) 业务管理:销售人员可以查看自己成交的合同列表,根据关键字搜索对应的合同信息。当购房者预约了销售人员线下看房,销售人员可以看到购房者预约的时间以及购房者基本信息,销售人员可以选择同意或者拒绝购房者的看房申请。
2.3 系统管理人员用例
系统管理人员用例需求分析,可归纳为以下几点:
(1) 个人中心:管理人员可以登录到后台管理,修改个人信息及密码。
(2) 用户管理:管理人员具备查看所有的用户列表、销售人员列表。支持对用户、销售人员进行增删改查以及导出操作。
(3) 图形化分析:通过折线图展示楼盘周成交量、收藏量及咨询量的变化趋势。运用柱状图与折线图相结合的方式,对销售人员的已售数量、预约数量、负责楼盘数量及咨询数量进行综合分析。楼盘综合分析,对楼盘销售情况一目了然,房源价格分布、户型分布、物业类型分布、面积区间分布以及地区分布等多维度数据,可帮助了解楼盘。借助房屋特点词云,形象展示房屋突出特性。
(4) 楼盘管理:管理人员进行维护楼盘信息,绑定楼盘地址,后续购房者可以只管看到在地图里的位置。对资讯进行增删改查操作。具备对楼盘资讯进行增删改查。有权对留言信息进行删除。维护销售人员和楼盘的关联信息。
(5) 业务管理:管理人员有权查看销售人员成交的合同列表。查看所有的用户预约记录,有权拒绝用户的申请。
三.系统实现(部分截图)
3.1 购房者
3.1.1 登录
用户登录系统,根据界面提示输入账号、密码,选择角色,输入验证码,进行登录。前端调用后端登录方法,根据输入的信息查询数据库是否满足用户记录。若查询结果列表不为空,说明用户登录信息正确。将用户Id和角色类型分别以SysConst.UserIdClaim和SysConst.RoleTypeClaim为键存入Map中。然后调用JWTUtils.getToken方法,传入这个Map对象,生成一个JWT令牌。返回这个令牌,用于后续用户在系统中的身份验证。