新增业主反馈
接口地址:/openapi/houseOwnerFeedback/create
请求方式:POST
请求数据类型:application/json
响应数据类型:application/json
接口描述:
请求示例:
{
"projectId":"123",
"feedbackDesc":"一张图",
"feedbackImages":"[\"https://reiniot-dcp.oss-cn-zhangjiakou.aliyuncs.com/ALI/aaa.png\"]",
"houseOwnerPhone": "13013001300"
}请求参数:工地ID和工地合同号不能同时为空
| 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema |
|---|---|---|---|---|---|
| houseOwnerPhone | 业主手机号 | body | true | string | |
| projectId | 工地ID,优先使用这个 | false | integer(int64) | ||
| contractNo | 工地合同号,若工地ID为空,则使用这个 | false | string | ||
| feedbackDesc | 反馈描述 | true | string | ||
| feedbackImages | 反馈图片 | false | string | 数组 |
响应参数:
{
"code": 200,
"data": "123456789522562",
"message": "",
"successful": true
}查询业主反馈
接口地址:/openapi/houseOwnerFeedback/page?pageNo=1&pageSize=10
请求方式:POST
请求数据类型:application/json
响应数据类型:application/json
接口描述:
分页查询业主反馈。支持三类筛选条件,可任意组合(多个条件之间是 AND 关系):
- 按工地精确定位:
projectId(优先)或contractNo - 按反馈时间范围:
startDate/endDate - 模糊搜索:
contractNoLike(合同号)/projectNameLike(工地名称)
结果按反馈ID(id)升序返回,适合增量翻页拉取。数据自动限定在调用方所属租户内。
请求参数:
| 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema |
|---|---|---|---|---|---|
| projectId | 工地ID,精确匹配,优先使用这个 | body | false | integer(int64) | |
| contractNo | 工地合同号,精确匹配,若工地ID为空则使用这个;查不到对应工地会直接报错 | body | false | string | |
| contractNoLike | 工地合同号模糊搜索,与精确的 contractNo 互不影响,可同时传 |
body | false | string | |
| projectNameLike | 工地名称模糊搜索 | body | false | string | |
| startDate | 反馈开始日期(含当天),格式 yyyy-MM-dd |
body | false | string(date) | |
| endDate | 反馈结束日期(含当天),格式 yyyy-MM-dd |
body | false | string(date) | |
| pageNo | 分页号 | query param | false | int | 1 |
| pageSize | 每页大小 | query param | false | int | 10 |
参数校验规则(不满足会返回 code: 300):
| 规则 | 报错信息 |
|---|---|
projectId和contractNo 都为空时,startDate 和endDate必填 |
工地ID、工地合同号都为空时,开始日期和结束日期不能为空! |
startDate 不能晚于 endDate |
开始日期不能晚于结束日期! |
startDate 与 endDate 跨度不能超过 180 天 |
每次查询范围不能大于180天 |
contractNo 传了但查不到对应工地 |
根据合同号【xxx】查不工地 |
注意:
contractNoLike/projectNameLike不算「按工地精确定位」。只传模糊条件而不传日期范围,仍会因为缺日期而报错——模糊条件可能命中大量工地,日期范围是必要的数据量闸门。
请求示例:
- 按工地ID查(日期可不传,行为与改造前一致):
{
"projectId": 1234567890123456789
}- 按合同号精确查某个工地某段时间的反馈:
{
"contractNo": "HT20260101001",
"startDate": "2026-06-01",
"endDate": "2026-08-31"
}- 单纯根据时间范围查询
{
"startDate": "2026-08-01",
"endDate": "2026-08-31"
}- 不指定工地,按时间范围 + 工地名称/合同号模糊搜索:
{
"startDate": "2026-08-01",
"endDate": "2026-08-31",
"projectNameLike": "阳光小区",
"contractNoLike": "HT2026"
}响应参数:
| 参数名称 | 参数说明 | 类型 | 格式 |
|---|---|---|---|
| id | 反馈ID | long | JSON 中为字符串 |
| houseOwnerName | 业主姓名 | string | |
| houseOwnerPhone | 业主电话 | string | 明文,未脱敏 |
| createdTime | 反馈创建时间 | string(date-time) | yyyy-MM-dd HH:mm:ss |
| projectId | 工地ID | long | JSON 中为字符串 |
| projectName | 工地名称 | string | |
| contractNo | 工地合同号 | string | |
| feedbackDesc | 反馈描述 | string | |
| feedbackImages | 反馈图片 | string | JSON 数组字符串 |
| feedbackProjectStatus | 反馈时工地状态 | string | 见下方枚举 |
| feedbackProjectStatusName | 反馈时工地状态名称 | string | |
| replyStatus | 处理状态 | string | 见下方枚举 |
| replyStatusName | 处理状态名称 | string | |
| replyTime | 处理时间 | string(date-time) | yyyy-MM-dd HH:mm:ss |
| replyDesc | 处理描述 | string | |
| replyImages | 处理图片 | string | JSON 数组字符串 |
| replyUserId | 处理人ID | long | JSON 中为字符串 |
| replyUserName | 处理人名称 | string | |
| replyConsumeDay | 处理耗时天数 | int | |
| replyConsumeHours | 处理耗时小时 | int | |
| evaluationDesc | 业主评价描述 | string | |
| evaluationStar | 业主评价星级 | int |
枚举取值:
| 字段 | 取值 |
|---|---|
replyStatus |
NOT_REPLY 未处理、REPLIED 已处理 |
feedbackProjectStatus |
IN_BUILDING 在建、CHECK_IN 已入住 |
响应体中
projectStatus、projectStatusDesc、orgId、orgName、companyName、deptName、supervisorId、supervisorName、thirdTenantId本接口不查询,恒为 null,请勿依赖。
响应示例:
{
"code": 200,
"message": "成功",
"data": {
"records": [
{
"id": "1",
"houseOwnerName": "张先生",
"houseOwnerPhone": "13800138000",
"createdTime": "2026-08-06 16:37:05",
"projectId": "1234567890123456789",
"projectName": "阳光小区3栋1单元502",
"contractNo": "HT20260101001",
"projectStatus": null,
"projectStatusDesc": null,
"orgId": null,
"orgName": null,
"companyName": null,
"deptName": null,
"supervisorId": null,
"supervisorName": null,
"feedbackDesc": "业主反馈1106第二条",
"feedbackImages": "["https://reiniot-dcp.oss-cn-zhangjiakou.aliyuncs.com/ALI/202407/42913519-2312-4d2c-a6fc-9d1ecb20e6af.jpg"]",
"feedbackProjectStatus": "IN_BUILDING",
"feedbackProjectStatusName": "在建",
"replyUserId": null,
"replyUserName": null,
"replyStatus": "REPLIED",
"replyStatusName": "已处理",
"replyTime": "2026-08-06 16:39:36",
"replyDesc": null,
"replyImages": null,
"replyConsumeDay": 0,
"replyConsumeHours": 0,
"evaluationDesc": null,
"evaluationStar": null
},
{
"id": "2",
"houseOwnerName": "李女士",
"houseOwnerPhone": "13900139000",
"createdTime": "2026-08-18 18:18:01",
"projectId": "1234567890123456790",
"projectName": "阳光小区5栋2单元301",
"contractNo": "HT20260101002",
"projectStatus": null,
"projectStatusDesc": null,
"orgId": null,
"orgName": null,
"companyName": null,
"deptName": null,
"supervisorId": null,
"supervisorName": null,
"feedbackDesc": "业主第三次反馈,测试数据",
"feedbackImages": null,
"feedbackProjectStatus": "IN_BUILDING",
"feedbackProjectStatusName": "在建",
"replyUserId": null,
"replyUserName": null,
"replyStatus": "REPLIED",
"replyStatusName": "已处理",
"replyTime": "2026-08-18 18:18:34",
"replyDesc": null,
"replyImages": null,
"replyConsumeDay": 0,
"replyConsumeHours": 0,
"evaluationDesc": null,
"evaluationStar": null
}
],
"total": "11",
"size": "10",
"current": "1",
"orders": [],
"optimizeCountSql": true,
"hitCount": false,
"countId": null,
"maxLimit": null,
"searchCount": true,
"pages": "2"
},
"successful": true
}参数校验失败响应示例:
{
"code": 300,
"message": "工地ID、工地合同号都为空时,开始日期不能为空!",
"successful": false
}业主问题处理推送
接口地址:(第三方提供)
请求方式:POST
请求数据类型:application/json
响应数据类型:*/*
接口描述:
请求参数:
| 参数名称 | 参数说明 | 类型 | 格式 |
|---|---|---|---|
| id | 反馈ID | long | |
| createdTime | 创建时间 | string(date-time) | yyyy-MM-dd HH:mm:ss |
| feedbackDesc | 反馈描述 | string | |
| feedbackImages | 反馈图片 | string | 数组 |
| replyStatus | 处理状态 | string | |
| replyStatusName | 处理状态名称 | string | |
| replyTime | 处理时间 | string(date-time) | yyyy-MM-dd HH:mm:ss |
| replyDesc | 处理描述 | string | |
| replyImages | 处理图片 | string | 数组 |
| replyUserId | 处理人ID | long | |
| replyUserName | 处理人名称 | string |
正常响应示例:
{
"code":200,
"message":"成功"
}作者:wanglejiang 创建时间:2025-05-30 11:32
最后编辑:liangxiong 更新时间:2026-09-16 10:51
最后编辑:liangxiong 更新时间:2026-09-16 10:51