道闸开门接口文档
一、接口名称
道闸开门
二、接口描述
该接口用于远程控制道闸设备开门操作,需要验证操作人员权限和设备有效性。
三、接口路径
http://ip:port/iot/api/barrier.openBarrierDoor
四、请求方法
POST
五、请求头
参数名称 |
必填 |
类型 |
描述 |
Authorization |
是 |
String |
用户认证token Base token 通过登录接口获取token |
app-id |
是 |
String |
应用ID 系统dev账户分配 |
transaction-id |
是 |
String |
请求流水号 不能重复 1000000000+YYYYMMDDhhmmss+6位序列 |
sign |
是 |
String |
签名 |
req-time |
是 |
String |
请求时间 YYYYMMDDhhmmss |
六、请求参数
6.1 请求体参数(JSON格式)
参数名称 |
必填 |
类型 |
描述 |
machineCode |
是 |
String |
道闸设备编码 |
state |
是 |
String |
道闸状态 |
communityId |
否 |
String |
小区ID(可选) |
七、返回值
7.1 返回值结构(JSON格式)
参数名称 |
必填 |
类型 |
描述 |
code |
是 |
String |
返回码 0 成功 其他失败 |
msg |
是 |
String |
返回信息 成功 其他失败 |
data |
是 |
Object |
返回数据 |
7.2 data对象结构
参数名称 |
类型 |
描述 |
resultParkingAreaTextDto |
Object |
道闸操作结果对象 |
八、业务逻辑说明
- 验证请求参数完整性(machineCode和state必填)
- 验证用户登录状态
- 根据machineCode查询道闸设备信息
- 调用道闸引擎执行开门操作
- 记录操作人员信息(staffId和staffName)
九、示例请求
POST /iot/api/barrier.openBarrierDoor
Headers:
{
"Authorization": "Bearer xxxxxxx",
"app-id": "iot-barrier",
"transaction-id": "100000000020220101120000000001",
"sign": "xxxxxx",
"req-time": "20220101120000"
}
Body:
{
"machineCode": "BARR001",
"state": "OPEN",
"communityId": "COMM001"
}
十、示例响应
{
"code": "0",
"msg": "成功",
"data": {
"resultParkingAreaTextDto": {
"result": "SUCCESS",
"message": "道闸开门成功"
}
}
}
十一、错误码说明
错误码 |
描述 |
0 |
操作成功 |
1001 |
设备不存在 |
1002 |
用户未登录 |
1003 |
参数验证失败 |
9999 |
系统异常 |