说明:配合下面方法使用,获取一个货柜的所有门的打开状态
使用实例:
说明:获取一个货柜的所有门的打开状态
使用实例:
* 检查1个货柜所有门的打开状态
*/
fun checkDoorStatus(cabinetAddress:Int,success: (resultMap:Map<Int,Boolean>) -> Unit,fail:(error:String) ->Unit){
val command = SendSienCheckDoors(cabinetAddress)
val sendSuccess = SienDoorManager.get().sendCheckDoorsCommand(command,object : Callback<RecvSienCheckDoors>{
override fun onSuccess(recvSienCheckDoors: RecvSienCheckDoors?) {
val resultMap = HashMap<Int,Boolean>()
LogUtil.printErr("checkDoorStatus","查询柜门开关状态指令onSuccess")
for (i in 1..AppConstants.getCellNumByCabinetAddress(cabinetAddress)){
resultMap[i] = recvSienCheckDoors!!.getResult(i)
LogUtil.printErr("checkDoorStatus","$i -- ${recvSienCheckDoors.getResult(i)}")
//LogUtil.printErr("test")
}
//LogUtil.printErr("test","$cabinetAddress -- $cellAddress -- 打开成功")
success(resultMap)
}
override fun onFailure(tr: Throwable) {
LogUtil.printErr("checkDoorStatus","查询柜门开关状态指令onFailure")
val message = if(tr.message == null) {
"失败"
} else {
tr.message!!
}
fail(message)
}
})
if(!sendSuccess){
LogUtil.printErr("checkDoorStatus","查询柜门开关状态指令发送失败")
fail("查询柜门指令发送失败")
}
}