Skip to content

同步项目白名单

获取该设备白名单信息,包含白名单总数,当设备启动拥有网络能力后需要在第一时间请求此接口同步白名单数据

HttpGet接口获取白名单

SERVICE-ADDRESS/device/whitelist/V3?appid=APPID&sign=SIGN&deviceCode=DEVICECODE&lastSyncTime=LASTSYNCTIME

参数说明

参数 类型 是否必须 说明 备注
appid string 厂商Id
sign string 签名
deviceCode string 设备编码
lastSyncTime long 最后同步时间 首次传0,之后传上次返回值中的syncTime

返回字段说明

whitelist 白名单中存在两种人员:巡检人员普通人员,不同人员返回对象不同

字段 字段名称 字段格式 备注
synTime 同步时间 Long 对应参数中的lastSyncTime
totalCount 白名单总人数 Long 白名单数量

巡检人员

字段 字段名称 字段格式 备注
whitelistId 排序字段 String 和业务无关仅仅用作白名单记录排序
objectId 白名单对象唯一标识 String type为0时,该字段值为workerId, type为1时,该字段值为vip巡检人员id
tenantId 租户id Long
type 白名单对象类型 byte 0.工人 1.巡视员
name 姓名 String
syncState 状态 String 状态值:ADD,UPDATE,DELETE
hasRight 有门区权限 boolean
identification 身份证号码 String
nucleicAcidExpires 核酸是否过期 Integer 0过期 1未过期 默认未过期
companyName 分包商名称 String
departmentName 巡检班组名称 String
postName 巡检工种名称 String
chipCode 帽子芯片编号 String
hatCode 帽子编号 String
cardId 超高频号 String
recentPhoto 人脸近照 String

普通人员

字段 字段名称 字段格式 备注
whitelistId 排序字段 String 和业务无关仅仅用作白名单记录排序
objectId 白名单对象(工人或vip巡检人员)唯一标识 String objectId 白名单对象唯一标识 String type为0时,该字段值为workerId, type为1时,该字段值为vip巡检人员id
tenantId 租户id Long
type 白名单对象类型 byte 0.工人 1.巡视员
name 姓名 String
syncState 状态 String 状态值:ADD,UPDATE,DELETE
hasRight 有门区权限 boolean
projectId 项目Id String
identification 身份证号码 String
nucleicAcidExpires 核酸是否过期 Integer 0过期 1未过期 默认未过期
chipCode 帽子芯片编号 String
cardId 超高频号 String
icCard IC卡号 String
hatCode 帽子编号 String
enterDate 进场时间 String
photo 人员证件照 String
recentPhoto 人员近照 String
companyId 分包商id Long
companyName 分包商名称 String
groupId 班组id Long
groupName 班组名称 String
jobCode 工种编码 String
jobName 工种名称 String
spec 是否特殊工种 boolean
approachEdu 是否进行了入场教育 boolean
certificateCount 证书数量 int
temperatureStatus 体温状态 int 1 正常,2, 异常
measureTemperature 体温 BigDecimal
evaluationStatus 评价预警通行权限 boolean 0:禁止通行,1:允许通行
measureTime 体温测量时间 LocalDateTime
temperatureNormal 体温正常 boolean
authStatus 通行状态(政府接口专用) String "1","苏安码为绿码正常" "2","苏安码为黄码,提醒预警" "3","苏安码为红码,禁止通行"
healthCode 健康码状态(政府接口专用) String "1","健康码为绿码正常" "2","健康码为黄码,提醒预警" "0","健康码为红码,禁止通行"

白名单更新(服务)

设备端启动MQTT后监听消息,假如有 whitelistupdate 的服务指令,则再次去开放平台调用增量白名单获取接口

  • 场景1: 设备启动之后
  • 场景2: 白名单数据变化需要通知设备重新增量获取
{
    "service" : "whitelistupdate", 
    "data": {},  
    "ts": "1551863638000"
}

ts 为字符串型 "1551863638000",兼容设备上int长度不够

设备端接收到以上指令后去如下地址去请求白名单:

上报白名单更新完成(事件)

白名单下载成功后,发起Mqtt的链接,并发送一下事件,告诉服务端设备白名单更新成功

{
    "client" : "2017050001",
    "event" : "whitelistupdate",
    "data": {
        "syncTime" : "1551863638000",
        "total": 100
    },
    "success": 1,
    "error": "",
    "ts": "1551863638000"
}
  • total 本地白名单人员总数

  • syncTime 服务端调用同步服务的时间,whitelist service 结构中的ts

    • 服务端下发指令去增量更新白名单时,whitelist service 指令的ts
    • 如果是开机启动就传当前时间就行

白名单图片下载

{SERVICE-ADDRESS}/download?key={recentPhoto}

白名单返回的近照为图片的OSSKey,需要用此Key再次发起请求才能获取近照图片

测试环境是:https://aecloud-test.glodon.com/glm/services/download?key=

正式环境是: https://xmgl.glodon.com/glm/services/download?key=

拼接此url在浏览器访问即可访问到图片

补充说明

  • 现场管理下的区域(也即门区)与设备是有绑定关系,门区权限设置完毕后,人员的进出权限会随白名单下发到指定设备中,设备方无需针对门区权限做额外的业务逻辑处理。