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. 参数校验:

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

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

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

11. 注意事项

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

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