diff --git a/tongran-rocketmq/src/main/java/com/tongran/rocketmq/service/impl/RmPppoeConfigMainServiceImpl.java b/tongran-rocketmq/src/main/java/com/tongran/rocketmq/service/impl/RmPppoeConfigMainServiceImpl.java index c5af84e..8cee696 100644 --- a/tongran-rocketmq/src/main/java/com/tongran/rocketmq/service/impl/RmPppoeConfigMainServiceImpl.java +++ b/tongran-rocketmq/src/main/java/com/tongran/rocketmq/service/impl/RmPppoeConfigMainServiceImpl.java @@ -55,6 +55,9 @@ public class RmPppoeConfigMainServiceImpl implements IRmPppoeConfigMainService RmPppoeConfigSub rmPppoeConfigSub = new RmPppoeConfigSub(); rmPppoeConfigSub.setClientId(rmPppoeConfigMain.getClientId()); List subList = rmPppoeConfigSubMapper.selectRmPppoeConfigSubList(rmPppoeConfigSub); + if(subList == null){ + subList = new ArrayList<>(); + } if("1".equals(pppoeConfigMain.getPppoeConfigMode())){ for (RmPppoeConfigSub pppoeConfigSub : subList) { // 查询流量信息 @@ -129,7 +132,7 @@ public class RmPppoeConfigMainServiceImpl implements IRmPppoeConfigMainService */ public String convert(String bitStr, String toUnit) { if (bitStr == null || bitStr.trim().isEmpty()) { - throw new IllegalArgumentException("bit值不能为空"); + return null; } double bits = Double.parseDouble(bitStr.trim()); @@ -185,42 +188,44 @@ public class RmPppoeConfigMainServiceImpl implements IRmPppoeConfigMainService .map(RmPppoeConfigSub::toVo) .collect(Collectors.toList()); } + // 构建pppoe策略 + PppoeVo pppoeVo = new PppoeVo(); + BeanUtils.copyProperties(rmPppoeConfigMain, pppoeVo); + pppoeVo.setSubList(voList); + String pppoeStr = JSONObject.toJSONString(pppoeVo); + PolicyTypeVo policyTypeVo = new PolicyTypeVo(); + policyTypeVo.setPppoeConfig(pppoeStr); + MessageProducer messageProducer = new MessageProducer(); + String configJson = JSONObject.toJSONString(policyTypeVo); + DeviceMessage message = new DeviceMessage(); + message.setClientId(rmPppoeConfigMain.getClientId()); + message.setData(configJson); + message.setDataType(MsgEnum.获取最新策略应答.getValue()); + + messageProducer.sendAsyncProducerMessage( + producerMode.getAgentTopic(), + "", + "", + JSONObject.toJSONString(message) + ); }else if("2".equals(rmPppoeConfigMain.getPppoeConfigMode())) { processBandwidthResult(subList); } - // 构建pppoe策略 - PppoeVo pppoeVo = new PppoeVo(); - BeanUtils.copyProperties(rmPppoeConfigMain, pppoeVo); - pppoeVo.setSubList(voList); - String pppoeStr = JSONObject.toJSONString(pppoeVo); - PolicyTypeVo policyTypeVo = new PolicyTypeVo(); - policyTypeVo.setPppoeConfig(pppoeStr); - MessageProducer messageProducer = new MessageProducer(); - String configJson = JSONObject.toJSONString(policyTypeVo); - DeviceMessage message = new DeviceMessage(); - message.setClientId(rmPppoeConfigMain.getClientId()); - message.setData(configJson); - message.setDataType(MsgEnum.获取最新策略应答.getValue()); - - messageProducer.sendAsyncProducerMessage( - producerMode.getAgentTopic(), - "", - "", - JSONObject.toJSONString(message) - ); return 1; } public void processBandwidthResult(List subList){ if(subList != null && !subList.isEmpty()){ for (RmPppoeConfigSub rmPppoeConfigSub : subList) { - RmNetworkInterfaceChild insertData = new RmNetworkInterfaceChild(); - insertData.setBandwidthResult(rmPppoeConfigSub.getBandwidthResult()); - insertData.setMacAddress(rmPppoeConfigSub.getMacAddress()); - insertData.setInterfaceName(rmPppoeConfigSub.getInterfaceName()); - insertData.setClientId(rmPppoeConfigSub.getClientId()); - insertData.setNewFlag(1); - rmNetworkInterfaceChildMapper.insertRmNetworkInterfaceChild(insertData); + if(rmPppoeConfigSub.getClientId() != null){ + RmNetworkInterfaceChild insertData = new RmNetworkInterfaceChild(); + insertData.setBandwidthResult(rmPppoeConfigSub.getBandwidthResult()); + insertData.setMacAddress(rmPppoeConfigSub.getMacAddress()); + insertData.setInterfaceName(rmPppoeConfigSub.getInterfaceName()); + insertData.setClientId(rmPppoeConfigSub.getClientId()); + insertData.setNewFlag(1); + rmNetworkInterfaceChildMapper.insertRmNetworkInterfaceChild(insertData); + } } } }