[TOC]
## 房源筛选
* 请求地址: `/house_info/filter`
* 请求方式: get
* 请求参数:
| 字段名 | 字段类型 | 字段长度 | 是否必填 | 字段说明 |
| --- | --- | --- | --- | --- |
| mode | int | 0,1,2,3 | `是` | 租房方式 |
| city | string | 2-16 | 否 | 市名 |
| province | string | 2-16 | 否 | 省名 |
| county | string | 2-16 | 否 | 区名 |
| landmark | string | 2-16 | 否 | 地标名 |
| metro | int | 11 | 否 | 地铁线路 |
| site | string | 2-16 | 否 | 地铁站点 |
| price | int | 11 | 否 | 价格区间id |
| area | int | 11 | 否 | 面积区间id |
| community | string | 2-16 | 否 | 小区名 |
| type | string | 2-16 | 否 | 房源户型 |
| facility | string | 0 | 否 | 配套设施 |
>[info] 配套设施格式
~~~
1,2,3
~~~
>[danger] 里面的数字是前端选择的配套设施里面的id
>把选出的id以**英文**逗号拼接
>[info] 租房方式 0 短租合租 1 短租整租 2 长租整租 3 长租合租
> 价格区间id 传从接口中获取出的 价格区间的id
> 面积区间id 传从接口中获取出的 面积区间的id
> 地区可以不用传 但是为了避免出现较多房源 最好加上地区
* 成功返回
```json
{
"code": 0,
"data": {
"data": [
{
"id": 1,//小区id
"name": "光华中心",//小区名
"longitude": "103.970194",//小区经度
"latitude": "30.675829",//小区纬度
"house_num": 2//小区下可租房源
}
]
}
}
```
* 失败返回:
```json
{
"code": -1,
"msg": "参数错误!"
}
```
## 小区下的房源
* 请求地址: `/house_info/list`
* 请求方式: get
* 请求参数:
| 字段名 | 字段类型 | 字段长度 | 是否必填 | 字段说明 |
| --- | --- | --- | --- | --- |
| mode | int | 0,1,2,3 | `是` | 租房方式 |
| city | string | 2-16 | 是 | 市名 |
| province | string | 2-16 | 否 | 省名 |
| county | string | 2-16 | 否 | 区名 |
| landmark | string | 2-16 | 否 | 地标名 |
| metro | int | 11 | 否 | 地铁线路 |
| site | string | 2-16 | 否 | 地铁站点 |
| price | int | 11 | 否 | 价格区间id |
| area | int | 11 | 否 | 面积区间id |
| community | string | 2-16 | 否 | 小区名 |
| type | string | 2-16 | 否 | 房源户型 |
| facility | json | 0 | 否 | 配套设施 |
| community_id | int | 11 | 否 | 小区id |
| special | int | 11 | 否 | 是否是特殊房源 |
| currentPage | int | 11 | 否 | 当前页 |
| pageNumber | int | 11 | 否 | 页码 |
>[success] 可以和筛选的参数一致提交来查询
>[info] 租房方式 0 短租合租 1 短租整租 2 长租整租 3 长租合租
> 价格区间id 传从接口中获取出的 价格区间的id
> 面积区间id 传从接口中获取出的 面积区间的id
> 是否是特殊房源 special =1 就筛选特殊房源 special =0 就是普通房源
* 成功返回
```json
{
"code": 0,
"data": {
"data": [
{
"id": 1,
"h_video": null,//房源视频
"h_img": null,//房源图片 json
"r_mode": 0,//出租方式 0 短租合租 1 短租整租 2 长租整租 3 长租合租 4 长短合租 5 长短整租
"h_name": "",//房源名
"h_metro": 1,//地铁线路
"h_site": "",//地铁站点
"h_floor": "",//房源楼层
"h_l_rent": 1000,//长租租金
"h_s_rent": null,//短租租金
"h_s_p_m": [//短租支付方式
{
"day": 1,
"rent": 200,//租金
"deposit": 2000//押金
}
],
"h_l_p_n": null,//长租支付方式名
"h_community": "",//小区名
"h_type": "",//户型
"money": 60000//长租合租房源 返回房间租金
}
]
}
}
```
>[info] 只有长租合租才会返回 money 字段
* 失败返回:
```json
{
"code": -1,
"msg": "参数错误!"
}
```
## 房源搜索
* 请求地址: ` /house_info/search`
* 请求方式: get
* 请求参数:
| 字段名 | 字段类型 | 字段长度 | 是否必填 | 字段说明 |
| --- | --- | --- | --- | --- |
| search | string | 1-255 | `是` | 搜素内容(房源名、小区名、户型) |
| mode | int | 0,1,2,3 | `是` | 租房方式 |
| special | int | 11 | 否 | 是否是特殊房源 |
>[info] 搜索内容 小区名 房源户型
> 是否是特殊房源 special =1 就筛选特殊房源 special =0 就是普通房源
* 成功返回:
```json
{
"code": 0,
"data": {
"data": [
{
"id": 1,
"h_video": null,//房源视频
"h_img": null,//房源图片
"r_mode": 0,//出租方式 0 短租合租 1 短租整租 2 长租整租 3 长租合租 4 长短合租 5 长短整租
"h_name": "",//房源名
"h_metro": 1,//地铁线路
"h_site": "中坝",//地铁站点
"h_floor": "",//所在楼层
"h_l_rent": 1000,//长租租金
"h_s_rent": null,//短租租金
"h_s_p_m": [//短租支付方式
{
"day": 2,//天数
"rent": 200,//租金
"deposit": 2000//押金
}
],
"h_l_p_n": null,//长租支付方式名
"h_community": "",//小区名
"h_type": ""//户型
}
]
}
}
```
* 失败返回:
```json
{
"code": -1,
"msg": "参数错误!"
}
```
## 房源详情
* 请求地址: `/house_info/read`
* 请求方式: get
* 请求参数:
| 字段名 | 字段类型 | 字段长度 | 是否必填 | 字段说明 |
| --- | --- | --- | --- | --- |
| `id` | int | 11 | `是` | 房源id |
* 成功返回:
```json
{
"code": 0,
"data": {
"house": {
"id": 1,
"h_video": "",//房源视频地址
"h_img": [],//房源图片 json形式 可能有多张 图片都是自动加了水印的
"r_mode": 4,//出租方式 0 短租合租 1 短租整租 2 长租整租 3 长租合租 4 长短合租 5 长短整租
"h_name": "赫海",//房源名
"h_unit": "18栋18单元18号",//所在单元
"h_floor": "18楼/18层",//所在楼层
"h_fitment": "豪华装修",//装修程度
"h_area": 8,//房源面积
"h_site": "蔡桥",//地铁站点名
"h_metro": 4,//地铁线路名
"h_l_p_n": "押二付一",//房源出租方式
"h_type": "五室四厅四卫",//房源户型
"h_community": "光华中心",//小区名
"h_facilities": [//配套设施
{
"id": 1,
"name": "洗衣机"
}
],
"h_sex": 0,//性别限制 0 女 1 男 2 不限
"h_l_rent": 80000,//长租租金
"h_s_rent": null,//短租租金
"h_l_p_m": 1,//长租支付方式id
"h_s_p_m": [//短租支付方式
{
"day": 1,//出租天数
"rent": 100,//租金
"deposit": 100//押金
}
],
"status": 1,//房源状态
"community_id": 1//所在小区id
},
"room": [//房源下的房间信息
{
"id": 1,
"r_name": "厕所",//房间名
"r_area": 35,//房间面积
"h_l_rent": 120000,//长租租金
"h_s_rent": null,//短租租金
"h_l_p_n": "押二付一",//长租支付方式
"h_s_p_m": [],//短租支付方式
"h_facilities": [//配套设施
{
"id": 1,
"name": "冰箱"//配套设施名
}
],
"h_toward": "东",//房间朝向
"status": 0,//房间状态 0 可租 1 已出租
"h_fitment": "精装修",//装修类型
"h_sex": 0,//性别限制 0 女 1 男 2 不限
"sex": 1//租客性别 0 女 1 男
}
],
"community": {//小区信息
"longitude": "103.970194",//所在经度
"latitude": "30.675829"//所在纬度
},
"sale": {//管家信息
"phone": "15181474781",//管家手机号
"name": "测试账号1",//管家姓名
"photo": null//管家
},
"collect": 0//是否收藏过 0 没有 1已收藏
}
}
```
>[danger] 若房间没有被出租 房间信息中的sex返回值为 null
* 失败返回:
```json
{
"code": -1,
"msg": "参数错误!"
}
```
## 获取可开门物业
* 请求地址: `/house_info/property`
* 请求方式: get
* 请求参数:
| 字段名 | 字段类型 | 字段长度 | 是否必填 | 字段说明 |
| --- | --- | --- | --- | --- |
| `id` | int | 11 | `是` | 房源id |
| `r_id` | int | 11 | 否 | 房间id |
* 成功返回:
```json
{
"code": 0,
"data": {
"property": 1,//当前可以开门的物业人员id
"data": [
{
"id": 1,
"name": "测试账号",//物业人员姓名
"phone": "15181474781",//手机号
"landline": "028-88888888"//座机号
}
]
}
}
```
>[info] 有物业的情况就会返回物业人员的列表信息
> 没有物业人员就会返回 负责该房源的销售信息
```json
{
"code": 0,
"data": {
"data": {
"name": "测试账号",//销售名
"phone": "15181474781"//销售手机号
}
}
}
```
* 失败返回:
```json
{
"code": -1,
"msg": "参数错误!"
}
```
## 申请看房
* 请求地址: `/house_info/look`
* 请求方式: post
* 请求参数:
| 字段名 | 字段类型 | 字段长度 | 是否必填 | 字段说明 |
| --- | --- | --- | --- | --- |
| `id` | int | 11 | `是` | 房源id |
| `r_id` | int | 11 | 否 | 房间id |
* 成功返回:
**第一种情况**
>[success] 无电子锁
> 无电子锁也没有物业公司
> 返回的内容如下:负责该房源的销售信息
```json
{
"code": 0,
"data": {
"data": {
"name": "测试账号1",
"phone": "15181474781"
}
}
}
```
**第二种情况**
>[success] 无电子锁
> 无电子锁有物业公司
> 返回的内容如下:物业人员信息
```json
{
"code": 0,
"data": {
"data": {
"name": "",//物业人员姓名
"phone": "",//物业人员手机号
"landline": "",//物业人员座机号
"company": "",//物业人员所在物业公司
"h_community": "",//房源小区名
"h_unit": "",//房源所在单元
"h_floor": "",//房源所在楼层
"id": "1"
}
}
}
```
**第三种情况**
>[success] 有电子锁
> 有物业公司
> 返回的内容如下:物业人员信息
```json
{
"code": 0,
"data": {
"data": {
"name": "",//物业人员姓名
"phone": "",//物业人员手机号
"landline": "",//物业人员座机号
"company": "",//物业人员所在物业公司
"h_community": "",//房源小区名
"h_unit": "",//房源所在单元
"h_floor": "",//房源所在楼层
"id": "1
}
}
}
```
**第四种情况**
>[success] 有电子锁
> 有物业公司 且物业人员 **授权开门电子锁** 且物业人员没有被冻结
> 返回的内容如下:物业人员信息
```json
{
"code": 0,
"data": {
"data": {
"name": "",//物业人员姓名
"phone": "",//物业人员手机号
"landline": "",//物业人员座机号
"company": "",//物业人员所在物业公司
"h_community": "",//房源小区名
"h_unit": "",//房源所在单元
"h_floor": "",//房源所在楼层
"id": "1"
}
}
}
```
**第五种情况**
>[success] 有电子锁
> 有物业公司 且物业人员**未被授权开门电子锁** 或者物业人员**被冻结**
> 用户的看房押金不足
> 返回的内容如下:需要充值押金
```json
{
"code": 1
}
```
**第六种情况**
>[success] 有电子锁
> 有物业公司 且物业人员**未被授权开门电子锁** 或者物业人员**被冻结**
> 用户的看房押金充足
> 返回的内容如下:用户自己扫码看房
```json
{
"code": 0
}
```
* 失败返回:
```json
{
"code": -1,
"msg": "参数错误!"
}
```
## 跳过物业
* 请求地址: `/house_info/jump`
* 请求方式: post
* 请求参数:
| 字段名 | 字段类型 | 字段长度 | 是否必填 | 字段说明 |
| --- | --- | --- | --- | --- |
| `id` | int | 11 | `是` | 返回物业信息中的id |
* 成功返回:
>[info] 需要用户先交押金才可以看房
```json
{
"code": 1
}
```
>[info] 用户可以扫码开门
```json
{
"code": 0
}
```
* 失败返回:
```json
{
"code": -1,
"msg": "参数错误!"
}
```