jiangping
2023-10-13 dff12cddd41f96e296cb652b0cf3c8c9ce43426f
server/services/src/main/java/com/doumee/service/business/impl/DeviceSubscribeServiceImpl.java
@@ -56,31 +56,32 @@
        String logInfo = "";
        int result =0;
        try {
            if(StringUtils.contains(topic, info)){
                //如果锁头信息上报
                Locks locks  = JSONObject.parseObject(param, Locks.class);
                locks.setId(lockid);
                locks.setInfo(logId);
                result = memberRidesService.mqttLockInfoEvent(locks);
                logInfo = "上报锁头信息";
                logInfo = "mqtt消息订阅锁头信息";
                log.info("mqtt消息订阅=========锁信息==========成功");
            }
            if(StringUtils.contains(topic, closeLock)){
                //如果还车上报
                JSONObject pjson  = JSONObject.parseObject(param);
                String bikeCode = pjson.getString("bikeCode");
                MemberRides bikes = new MemberRides();
                bikes.setBikeCode(bikeCode);
                bikes.setBackLockId(lockid);
                bikes.setBikeCode(pjson.getString("bikeCode"));
                bikes.setBackLockId( pjson.getString("lockId"));
                bikes.setBackLockId( pjson.getString("siteId"));
                bikes.setBackCommondId(logId);
                result = memberRidesService.mqttCloseBikeEvent(bikes);
                logInfo = "上报还车消息";
                logInfo = "mqtt消息订阅还车消息";
                log.info("mqtt消息订阅=========还车==========成功");
            }
        }catch (BusinessException e){
            logInfo = "mqtt消息订阅错误==="+e.getMessage();
            result =1;
        }catch (Exception e){
            logInfo = "mqtt消息订阅异常===";
            result =1;
        }
        createSubLog(topic,logId,result,param,logInfo);
@@ -100,8 +101,13 @@
        mqttLogMapper.insert(log);
    }
    private String getLockIdFromTopic(String topic) {
        topic = topic.substring(0,topic.lastIndexOf("/"));
        String id =  topic.substring( topic.lastIndexOf("/")+1);
        return  id;
        String[] ss = topic.split("/");
        if(ss.length>2){
            return  ss[ss.length-2];
        }
        return null;
//        topic = topic.substring(0,topic.lastIndexOf("/"));
//        String id =  topic.substring( topic.lastIndexOf("/")+1);
//        return  id;
    }
}