HC小区接口文档

API 接口文档:添加业主

查询业主
修改业主
添加业主
删除业主

1. 接口名称

添加业主

2. 接口描述

用于第三方系统(如招商系统)同步业主信息到物业管理平台,支持业主基本信息、人脸照片等数据的录入。

3. 接口路径

POST http://{ip}:{port}/app/owner.saveOwner

4. 请求方法

POST

5. 请求头

参数名称 必填 类型 描述
Authorization String 用户认证 Token(Base Token)
app-id String 应用 ID(由系统分配)
transaction-id String 请求流水号(格式:1000000000+YYYYMMDDhhmmss+6位序列
sign String 签名
req-time String 请求时间(YYYYMMDDhhmmss

6. 请求参数(Body JSON)

参数名称 必填 类型 长度 描述 示例
communityId String 30 小区 ID "2022121921870161"
name String 64 业主姓名 "王王"
link String 11 业主手机号 "18909718888"
idCard String 30 业主身份证号 "110101199001011234"
address String 512 地址 "北京市朝阳区XX小区1号楼101"
personType String 12 人员类型(P 个人 / C 公司) "P"
personRole String 12 人员角色(1 业主 / 2 租客 / 3 家庭成员 / 4 公司员工 / 99 其他) "1"
sex String 12 性别(1 男 / 0 女) "0"
remark String 512 备注 "VIP业主"
ownerId String 30 业主 ID(业主填 -1,家庭成员填所属业主 ID) "-1"
ownerPhoto String - 业主人脸照片(Base64 编码,用于门禁系统) "base64..."
attrs Array<Object> - 业主扩展属性(可选) [{"specCd": "1001", "value": "VIP"}]

7. 返回值

参数名称 类型 描述 示例
code int 返回码(0 成功,其他失败) 0
msg String 返回信息 "成功"

8. 示例请求

{
  "name": "王王",
  "link": "18909718888",
  "address": "北京市朝阳区XX小区1号楼101",
  "sex": "0",
  "ownerTypeCd": "1001",
  "remark": "VIP业主",
  "ownerId": "-1",
  "ownerPhoto": "",
  "personType": "P",
  "personRole": "1",
  "idCard": "110101199001011234",
  "communityId": "2022121921870161"
}

9. 示例响应

{
  "code": 0,
  "msg": "成功"
}

10. 业务逻辑说明

  1. 参数校验

    • 必填字段检查(namelinksexcommunityIdpersonTypepersonRole)。
    • 手机号唯一性校验(同一小区内不能重复)。
    • 图片地址长度限制(不超过 500 字符)。
  2. 数据存储

    • 生成唯一 ownerId 并保存业主基本信息(t_owner 表)。
    • 处理扩展属性(t_owner_attr 表)。
    • 生成业主关联的登录账号(调用 generatorOwnerUserBMOImpl)。
  3. 事务管理

    • 使用 @Java110Transactional 确保数据一致性。

11. 注意事项

  • 手机号(link)需符合格式且唯一。
  • ownerPhoto 为可选,但需 Base64 编码。
  • 扩展属性(attrs)需符合系统预定义的 specCd

以上为完整 API 文档,符合 RESTful 规范,涵盖请求、响应、业务逻辑及示例。