|
@@ -135,6 +135,7 @@ public class MqttMessageListener implements IMqttMessageListener {
|
|
|
|
|
|
Map map = JSON.parseObject(mqttMessageStr);
|
|
|
String type = (String) map.get("type");
|
|
|
+ Map msgMap = (Map)map.get("msg");
|
|
|
if ("BreathHeartRate".equals(type)) {
|
|
|
Map msg = (Map) map.get("msg");
|
|
|
Integer breath = (Integer) msg.get("breath");
|
|
@@ -143,26 +144,8 @@ public class MqttMessageListener implements IMqttMessageListener {
|
|
|
careDevice.setHeartRate(heart);
|
|
|
careDeviceService.updateById(careDevice);
|
|
|
} else if ("FallDown".equals(type)) { //跌到
|
|
|
- Integer fallResponseTime = careDevice.getFallResponseTime();
|
|
|
- MyThread myThread = new MyThread();
|
|
|
- myThread.setCareDevice(careDevice);
|
|
|
- myThread.setOrderType(OrderTypeEnum.DI_EDAO.getValue());
|
|
|
- myThread.setSleepTime(fallResponseTime);
|
|
|
- myThread.setDate(DateUtil.date());
|
|
|
- threadMap.put("FallDown-" + System.currentTimeMillis(),myThread);
|
|
|
- myThread.start();
|
|
|
-
|
|
|
- } else if ("StayTooLong".equals(type)) { //久滞
|
|
|
- Integer longlagResponseTime = careDevice.getLonglagResponseTime();
|
|
|
- MyThread myThread = new MyThread();
|
|
|
- myThread.setCareDevice(careDevice);
|
|
|
- myThread.setOrderType(OrderTypeEnum.JIU_ZHI.getValue());
|
|
|
- myThread.setSleepTime(longlagResponseTime);
|
|
|
- myThread.setDate(DateUtil.date());
|
|
|
- threadMap.put("StayTooLong-" + System.currentTimeMillis(),myThread);
|
|
|
- myThread.start();
|
|
|
- } else if ("quxiao".equals(type)) { //取消
|
|
|
- if ("FallDown".equals("FallDown")) { //跌到类型 todo
|
|
|
+ Integer conf = (Integer)msgMap.get("conf");
|
|
|
+ if(conf == 255){ //取消
|
|
|
threadMap.forEach((key,value) -> {
|
|
|
if(key.startsWith("FallDown")) {
|
|
|
if(!value.isInterrupted()){
|
|
@@ -172,7 +155,21 @@ public class MqttMessageListener implements IMqttMessageListener {
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
- } else if("StayTooLong".equals("StayTooLong")) {//久滞 todo
|
|
|
+ } else {
|
|
|
+ Integer fallResponseTime = careDevice.getFallResponseTime();
|
|
|
+ MyThread myThread = new MyThread();
|
|
|
+ myThread.setCareDevice(careDevice);
|
|
|
+ myThread.setOrderType(OrderTypeEnum.DI_EDAO.getValue());
|
|
|
+ myThread.setSleepTime(fallResponseTime);
|
|
|
+ myThread.setDate(DateUtil.date());
|
|
|
+ threadMap.put("FallDown-" + System.currentTimeMillis(),myThread);
|
|
|
+ myThread.start();
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ } else if ("StayTooLong".equals(type)) { //久滞
|
|
|
+ Integer conf = (Integer)msgMap.get("conf");
|
|
|
+ if(conf == 255){ //取消
|
|
|
threadMap.forEach((key,value) -> {
|
|
|
if(key.startsWith("StayTooLong")) {
|
|
|
if(!value.isInterrupted()){
|
|
@@ -182,7 +179,17 @@ public class MqttMessageListener implements IMqttMessageListener {
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
+ } else {
|
|
|
+ Integer longlagResponseTime = careDevice.getLonglagResponseTime();
|
|
|
+ MyThread myThread = new MyThread();
|
|
|
+ myThread.setCareDevice(careDevice);
|
|
|
+ myThread.setOrderType(OrderTypeEnum.JIU_ZHI.getValue());
|
|
|
+ myThread.setSleepTime(longlagResponseTime);
|
|
|
+ myThread.setDate(DateUtil.date());
|
|
|
+ threadMap.put("StayTooLong-" + System.currentTimeMillis(),myThread);
|
|
|
+ myThread.start();
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
} catch (Exception e){
|
|
|
e.printStackTrace();
|