From dbb789cb3e35ea2997b4197a30b5b8f81839197e Mon Sep 17 00:00:00 2001 From: 陈力 <chenli@lotaai.com> Date: 星期一, 12 六月 2023 17:02:33 +0800 Subject: [PATCH] 增加接收开门的指令 --- app/src/main/java/com/lotaai/canguiayw/mqtt/MyMQTTService.java | 58 +++++++++++++++++++++++++++++++--------------------------- 1 files changed, 31 insertions(+), 27 deletions(-) diff --git a/app/src/main/java/com/lotaai/canguiayw/mqtt/MyMQTTService.java b/app/src/main/java/com/lotaai/canguiayw/mqtt/MyMQTTService.java index c14ed1e..36ff57f 100644 --- a/app/src/main/java/com/lotaai/canguiayw/mqtt/MyMQTTService.java +++ b/app/src/main/java/com/lotaai/canguiayw/mqtt/MyMQTTService.java @@ -238,34 +238,38 @@ //2、开门、开馆灯、开关消毒灯、开关加热 if (topic.startsWith(subTopic_Control)){ JSONObject json = JSONObject.parseObject(messageStr); - String doorIsOpen = json.getString("doorIsOpen"); - String xiaoDuIsOpen = json.getString("xiaoDuIsOpen"); - String jiareIsOpen = json.getString("jiareIsOpen"); - String dengGuangIsOpen = json.getString("dengGuangIsOpen"); - String grid = json.getString("gridNo"); - CrontrolGridModel crontrolGridModel = new CrontrolGridModel(); - if (doorIsOpen!=null && doorIsOpen.equals("1")){ - crontrolGridModel.setOpenOrNoActon(1); - } - if (xiaoDuIsOpen!=null) { - crontrolGridModel.setXiaodu(Integer.parseInt(xiaoDuIsOpen)); - } - if (jiareIsOpen!=null) { - crontrolGridModel.setXiaodu(Integer.parseInt(jiareIsOpen)); - } - if (dengGuangIsOpen!=null) { - crontrolGridModel.setXiaodu(Integer.parseInt(dengGuangIsOpen)); - } + if (json.getString("action") !=null && json.getString("action").equals(DeviceAction.CONTROLDEVICE.name())){ + String doorIsOpen = json.getString(DeviceAction.doorIsOpen.name()); + String xiaoDuIsOpen = json.getString(DeviceAction.xiaoDuIsOpen.name()); + String jiareIsOpen = json.getString(DeviceAction.jiareIsOpen.name()); + String dengGuangIsOpen = json.getString(DeviceAction.dengGuangIsOpen.name()); + String grid = json.getString("gridNo"); + //将格子号转换成柜号和格子 + CrontrolGridModel crontrolGridModel = new CrontrolGridModel(); + crontrolGridModel.ChangeGrid(grid); + if (doorIsOpen!=null && doorIsOpen.equals("1")){ + crontrolGridModel.setOpenOrNoActon(1); + } + if (xiaoDuIsOpen!=null) { + crontrolGridModel.setXiaodu(Integer.parseInt(xiaoDuIsOpen)); + } + if (jiareIsOpen!=null) { + crontrolGridModel.setXiaodu(Integer.parseInt(jiareIsOpen)); + } + if (dengGuangIsOpen!=null) { + crontrolGridModel.setXiaodu(Integer.parseInt(dengGuangIsOpen)); + } - byte[] command = CanGuiCommand.getInstance().controlGridCommand(crontrolGridModel.getGuiNo() , - crontrolGridModel.getGridNo() , crontrolGridModel.getOpenOrNoActon(), - crontrolGridModel.getWendu(), crontrolGridModel.getXiaodu(), crontrolGridModel.getDengGuang(), - crontrolGridModel.getJiaRe(), crontrolGridModel.getGuangDengji()); - DeviceMessage dvmessage = new DeviceMessage(); - dvmessage.setMessageType(MessageType.SENDMESSAGE.ordinal()); - dvmessage.setDeviceType(DeviceType.CANGUI.ordinal()); - dvmessage.setMessageByte(command); - EventBus.getDefault().post(message); + byte[] command = CanGuiCommand.getInstance().controlGridCommand(crontrolGridModel.getGuiNo() , + crontrolGridModel.getGridNo() , crontrolGridModel.getOpenOrNoActon(), + crontrolGridModel.getWendu(), crontrolGridModel.getXiaodu(), crontrolGridModel.getDengGuang(), + crontrolGridModel.getJiaRe(), crontrolGridModel.getGuangDengji()); + DeviceMessage dvmessage = new DeviceMessage(); + dvmessage.setMessageType(MessageType.SENDMESSAGE.ordinal()); + dvmessage.setDeviceType(DeviceType.CANGUI.ordinal()); + dvmessage.setMessageByte(command); + EventBus.getDefault().post(message); + } } } -- Gitblit v1.7.1