选题背景与意义
- 背景:随着城市化进程加快,租房需求日益增长。传统的租房信息获取方式(如线下门店、网页搜索)存在信息更新慢、虚假房源多、看房成本高等问题。
- 意义:本系统利用微信小程序“即用即走”的特性,结合腾讯云开发(CloudBase)技术,为地产中介和租客提供一个高效、低成本、信息透明的租房平台。中介可降低人力成本,租客可快速筛选房源,实现双赢。
系统需求分析
- 用户端(小程序端): 房源浏览:按区域、户型、价格、面积筛选。 地图找房:查看房源地理位置及地图导航。 详情查看:查看房屋图片、设施、水电费用、详细描述。 搜索功能:关键字搜索房源。
- 管理端(后台端):
房源管理:新增、修改、删除、下架房源(含图片、位置、费用等)。
小区管理:录入小区信息、特点、外观图。
中介管理:管理经纪人信息。
用户管理:查看用户列表,管理员权限分配。
日志管理:查看操作日志。
数据库设计 (ER图与表结构)
根据文档中提到的“房源管理”、“小区管理”和“用户管理”,设计以下核心数据表(集合)。由于使用的是云开发数据库(MongoDB),数据结构为JSON格式。 概念结构设计 (ER图描述): 管理员 (Admin) ——(管理)——> 房源 (House) 管理员 (Admin) ——(管理)——> 小区 (Estate) 用户 (User) ——(浏览/收藏)——> 房源 (House)
| 字段名 (Field) | 类型 | 说明 |
|---|---|---|
_id | String | 房源唯一ID (数据库自动生成) |
title | String | 房源标题 (如:精装一室一厅) |
address | String | 房屋详细地址 |
location | Object | 地理位置坐标 (经度、纬度) |
price | Number | 租金 (元/月) |
area | Number | 面积 (平方米) |
floor | String | 楼层信息 |
rooms | String | 户型 (如:2室1厅1卫) |
images | Array | 室内图片 URL 列表 |
desc | String | 房源详细介绍 |
facilities | Array | 房屋设施列表 (如:['空调', '洗衣机']) |
water_fee | String | 水费说明 |
electric_fee | String | 电费说明 |
status | String | 状态 (0:下架, 1:在售/出租中) |
create_time | Timestamp | 创建时间 |
| 字段名 | 类型 | 说明 |
|---|---|---|
_id | String | 小区ID |
name | String | 小区名称 |
location | Object | 小区坐标 |
features | Array | 小区特点标签 (如:['地铁房', '学区房']) |
intro | String | 小区详细介绍 |
cover_img | String | 小区外观封面图 |
traffic | String | 交通情况 (地铁/公交) |
| 字段名 | 类型 | 说明 |
|---|---|---|
_id | String | 用户ID |
username | String | 登录账号 (如:admin) |
password | String | 加密后的密码 (MD5或bcrypt) |
nickname | String | 昵称/真实姓名 |
avatar | String | 头像URL |
role | String | 角色 (super:超级管理员, normal:普通管理员) |
| 字段名 | 类型 | 说明 |
|---|---|---|
_id | String | OpenID (微信用户唯一标识) |
nickname | String | 微信昵称 |
avatar | String | 微信头像 |
phone | String | 绑定手机号 (可选) |
collect | Array | 收藏的房源ID列表 |
系统功能模块图
地产中介租房售房小程序 ├── 用户端 (小程序) │ ├── 首页模块 (轮播图/推荐) │ ├── 房源列表模块 (筛选/搜索) │ ├── 地图找房模块 (定位/导航) │ ├── 房源详情模块 (图片/介绍/咨询) │ └── 个人中心模块 (收藏/浏览记录) └── 管理端 (后台) ├── 仪表盘 (数据统计) ├── 房源管理 (CRUD操作) ├── 小区管理 (CRUD操作) ├── 用户管理 (查看/禁用) ├── 中介管理 (经纪人信息) └── 系统设置 (管理员/日志)
系统界面原型设计 (UI设计)
管理系统设计
核心代码实现 (关键逻辑)
// app.js
App({
onLaunch() {
if (!wx.cloud) {
console.error('请使用 2.2.3 或以上的基础库以使用云能力');
} else {
wx.cloud.init({
env: '你的云环境ID', // 从配置文件读取
traceUser: true,
});
}
this.globalData = {};
}
});