From 52090c6f37f38fac8947d80c72c234e67f9d3a25 Mon Sep 17 00:00:00 2001 From: gaoyutao Date: Fri, 9 Jan 2026 18:04:13 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=B9=B3=E5=8F=B0ppoe?= =?UTF-8?q?=E5=92=8C=E9=9D=9E=E5=B9=B3=E5=8F=B0ppoe=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E6=96=B9=E5=BC=8F=E7=9A=84=E8=99=9A=E6=8B=9F=E7=BD=91=E5=8D=A1?= =?UTF-8?q?=E4=B8=8A=E6=8A=A5=E5=B8=A6=E5=AE=BD=E5=80=BC=E5=A4=84=E7=90=86?= =?UTF-8?q?.=20=E4=BC=98=E5=8C=96pppoe=E8=99=9A=E6=8B=9F=E7=BD=91=E5=8D=A1?= =?UTF-8?q?=E5=A4=84=E7=90=86=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tongran-rocketmq/pom.xml | 11 ++ .../domain/RmNetworkInterfaceChild.java | 6 ++ .../rocketmq/domain/RmPppoeConfigSub.java | 2 + .../rocketmq/handler/MessageHandler.java | 100 ++++++++++++++++-- .../mapper/RmNetworkInterfaceChildMapper.java | 3 + .../IRmNetworkInterfaceChildService.java | 2 + .../InitialBandwidthTrafficServiceImpl.java | 5 - .../impl/RmAgentManagementServiceImpl.java | 8 +- .../RmNetworkInterfaceChildServiceImpl.java | 5 + .../impl/RmPppoeConfigMainServiceImpl.java | 68 +++++++++--- .../RmNetworkInterfaceChildMapper.xml | 29 ++++- .../rocketmq/RmNetworkInterfaceMapper.xml | 1 + .../rocketmq/RmPppoeConfigSubMapper.xml | 1 + 13 files changed, 209 insertions(+), 32 deletions(-) diff --git a/tongran-rocketmq/pom.xml b/tongran-rocketmq/pom.xml index e753d87..b3202cf 100644 --- a/tongran-rocketmq/pom.xml +++ b/tongran-rocketmq/pom.xml @@ -110,6 +110,17 @@ iotdb-session 1.3.2 + + + com.aliyun + dysmsapi20170525 + 2.0.24 + + + com.aliyun + tea-util + 0.2.21 + diff --git a/tongran-rocketmq/src/main/java/com/tongran/rocketmq/domain/RmNetworkInterfaceChild.java b/tongran-rocketmq/src/main/java/com/tongran/rocketmq/domain/RmNetworkInterfaceChild.java index a1e1fae..44fc930 100644 --- a/tongran-rocketmq/src/main/java/com/tongran/rocketmq/domain/RmNetworkInterfaceChild.java +++ b/tongran-rocketmq/src/main/java/com/tongran/rocketmq/domain/RmNetworkInterfaceChild.java @@ -4,6 +4,8 @@ import com.tongran.common.core.annotation.Excel; import com.tongran.common.core.web.domain.BaseEntity; import lombok.Data; +import java.math.BigDecimal; + /** * 客户端网络接口子接口信息对象 rm_network_interface_child * @@ -74,4 +76,8 @@ public class RmNetworkInterfaceChild extends BaseEntity /** 是否连通外网(0否,1是) */ @Excel(name = "是否连通外网(0否,1是)") private String status; + /** 虚拟网卡上报带宽值(Mbps) */ + private BigDecimal bandwidthResult; + /** 有ipv4的标识 */ + private boolean ipv4Flag; } diff --git a/tongran-rocketmq/src/main/java/com/tongran/rocketmq/domain/RmPppoeConfigSub.java b/tongran-rocketmq/src/main/java/com/tongran/rocketmq/domain/RmPppoeConfigSub.java index 5999cdb..b0bb002 100644 --- a/tongran-rocketmq/src/main/java/com/tongran/rocketmq/domain/RmPppoeConfigSub.java +++ b/tongran-rocketmq/src/main/java/com/tongran/rocketmq/domain/RmPppoeConfigSub.java @@ -50,6 +50,8 @@ public class RmPppoeConfigSub extends BaseEntity private String macAddress; /** 客户端id */ private String clientId; + /** 接口名称 */ + private String interfaceName; public RmPppoeConfigSubVo toVo() { RmPppoeConfigSubVo vo = new RmPppoeConfigSubVo(); diff --git a/tongran-rocketmq/src/main/java/com/tongran/rocketmq/handler/MessageHandler.java b/tongran-rocketmq/src/main/java/com/tongran/rocketmq/handler/MessageHandler.java index f65f28d..6559bed 100644 --- a/tongran-rocketmq/src/main/java/com/tongran/rocketmq/handler/MessageHandler.java +++ b/tongran-rocketmq/src/main/java/com/tongran/rocketmq/handler/MessageHandler.java @@ -1134,7 +1134,7 @@ public class MessageHandler { Date createTime = new Date(millis / 1000 * 1000); List networkInfoList = registerMsg.getNetworkInfo(); - if(networkInfoList.isEmpty()) { + if (networkInfoList.isEmpty()) { return; } @@ -1148,6 +1148,7 @@ public class MessageHandler { // 构建数据库中当前网卡MAC地址的集合 Set currentMacSet = currentInterfaces.stream() .map(RmNetworkInterface::getMacAddress) + .filter(Objects::nonNull) .collect(Collectors.toSet()); // 构建新数据中网卡MAC地址的集合 @@ -1169,8 +1170,27 @@ public class MessageHandler { if (!macsToDelete.isEmpty() && !isRegister) { deleteNetworkInterfaces(clientId, macsToDelete); } + + // 获取当前客户端的所有子网卡 + RmNetworkInterfaceChild childQuery = new RmNetworkInterfaceChild(); + childQuery.setClientId(clientId); + List existingChildren = rmNetworkInterfaceChildService.selectRmNetworkInterfaceChildList(childQuery); + if(existingChildren == null){ + existingChildren = new ArrayList<>(); + } + // 构建数据库中所有子网卡的key集合 (clientId_mac_name) + Map existingChildMap = new HashMap<>(); + for (RmNetworkInterfaceChild child : existingChildren) { + String key = child.getClientId() + "_" + child.getMacAddress() + "_" + child.getInterfaceName(); + existingChildMap.put(key, child); + } + + // 构建本次接收到的所有子网卡key集合 + Set newChildKeys = new HashSet<>(); + for (NetworkInfo networkInfo : networkInfoList) { List childList = networkInfo.getSubInterfaces(); + // 查询该网卡信息是否存在 RmNetworkInterface queryParam = new RmNetworkInterface(); queryParam.setClientId(clientId); @@ -1178,7 +1198,7 @@ public class MessageHandler { queryParam.setNewFlag(1); List exits = rmNetworkInterfaceService.selectRmNetworkInterfaceList(queryParam); - if(exits.isEmpty()) { + if (exits.isEmpty()) { // 新增网卡信息 RmNetworkInterface insertData = new RmNetworkInterface(); setNetworkInterfaceData(insertData, networkInfo, clientId); @@ -1188,18 +1208,27 @@ public class MessageHandler { insertData.setBindIp("3"); } rmNetworkInterfaceService.insertRmNetworkInterface(insertData); - if(childList != null && !childList.isEmpty()){ - rmNetworkInterfaceChildService.deleteRmNetworkInterfaceChildByClientId(clientId); + + // 处理子网卡 + if (childList != null && !childList.isEmpty()) { for (NetworkInfo info : childList) { RmNetworkInterfaceChild insertChild = new RmNetworkInterfaceChild(); setNetworkInterfaceChildData(insertChild, info, clientId, networkInfo.getName()); + insertChild.setUpdateTime(DateUtils.getNowDate()); // 设置bindIp if (isSingleInterface) { insertChild.setBindIp("3"); } + + // 构建子网卡唯一key + String childKey = clientId + "_" + info.getMac() + "_" + info.getName(); + newChildKeys.add(childKey); + + // 插入或更新子网卡 rmNetworkInterfaceChildService.insertRmNetworkInterfaceChild(insertChild); } } + // 如果网卡数量有变动,需要更新网卡绑定状态 if (!isRegister && interfaceCountChanged && !isSingleInterface) { RmResourceRegistrationRemote updateParam = new RmResourceRegistrationRemote(); @@ -1210,22 +1239,48 @@ public class MessageHandler { } else { // 更新网卡信息 RmNetworkInterface oldInterfaceMsg = exits.get(0); -// cleanChildOldRecords(clientId, networkInfo.getMac()); - // 判断是否需要创建新记录 - boolean needCreateNew = (!StringUtils.equals(networkInfo.getName(), oldInterfaceMsg.getInterfaceName()) - || !StringUtils.equals(networkInfo.getGateway(), oldInterfaceMsg.getGateway())) && StringUtils.equals(networkInfo.getMac(), oldInterfaceMsg.getMacAddress()); - if(childList != null && !childList.isEmpty()){ - rmNetworkInterfaceChildService.deleteRmNetworkInterfaceChildByClientId(clientId); + + // 处理子网卡 + if (childList != null && !childList.isEmpty()) { for (NetworkInfo info : childList) { RmNetworkInterfaceChild insertChild = new RmNetworkInterfaceChild(); setNetworkInterfaceChildData(insertChild, info, clientId, networkInfo.getName()); + insertChild.setUpdateTime(DateUtils.getNowDate()); + // 构建子网卡唯一key + String childKey = clientId + "_" + info.getMac() + "_" + info.getName(); + newChildKeys.add(childKey); + // 插入或更新子网卡 rmNetworkInterfaceChildService.insertRmNetworkInterfaceChild(insertChild); } } + // 判断是否需要创建新记录 + boolean needCreateNew = (!StringUtils.equals(networkInfo.getName(), oldInterfaceMsg.getInterfaceName()) + || !StringUtils.equals(networkInfo.getGateway(), oldInterfaceMsg.getGateway())) && StringUtils.equals(networkInfo.getMac(), oldInterfaceMsg.getMacAddress()); // 更新现有记录 updateNetworkInterface(networkInfo, clientId, oldInterfaceMsg, isSingleInterface, isRegister); } } + + // 删除数据库中不存在于本次接收数据中的子网卡 + // 计算需要删除的子网卡:数据库中有的,但本次没有接收到的 + Set childKeysToDelete = new HashSet<>(existingChildMap.keySet()); + childKeysToDelete.removeAll(newChildKeys); + + if (!childKeysToDelete.isEmpty() && !isRegister) { + for (String keyToDelete : childKeysToDelete) { + String[] parts = keyToDelete.split("_", 3); + if (parts.length == 3) { + String clientIdPart = parts[0]; + String mac = parts[1]; + String name = parts[2]; + + // 只删除当前客户端的子网卡 + if (clientId.equals(clientIdPart)) { + deleteChildNetworkInterfaces(clientId, mac, name); + } + } + } + } } /** * 删除过时的网卡信息 @@ -1249,7 +1304,28 @@ public class MessageHandler { // 记录删除操作日志 log.info("删除客户端 {} 的过时网卡信息,MAC地址: {}", clientId, macsToDelete); } + /** + * 删除过时的子网卡信息 + * @param clientId + * @param name + * @param mac + */ + private void deleteChildNetworkInterfaces(String clientId, String mac, String name) { + RmNetworkInterfaceChild query = new RmNetworkInterfaceChild(); + query.setClientId(clientId); + query.setMacAddress(mac); + query.setInterfaceName(name); + query.setNewFlag(1); + List oldExits = rmNetworkInterfaceChildService.selectRmNetworkInterfaceChildList(query); + if(!oldExits.isEmpty()) { + oldExits.forEach(oldMsg -> { + rmNetworkInterfaceChildService.deleteRmNetworkInterfaceChildById(oldMsg.getId()); + }); + } + // 记录删除操作日志 + log.info("删除客户端 {} 的过时子网卡信息,MAC地址: {},网卡名称:{}", clientId, mac, name); + } /** * 设置网卡信息公共字段 */ @@ -1350,6 +1426,10 @@ public class MessageHandler { updateData.setInterfaceType(networkInfo.getType()); needUpdate = true; } + if (!StringUtils.equals(networkInfo.getGateway(), oldInterfaceMsg.getGateway())) { + updateData.setGateway(networkInfo.getGateway()); + needUpdate = true; + } if (!StringUtils.equals(networkInfo.getName(), oldInterfaceMsg.getInterfaceName())) { if(networkInfo.getName() != null){ // 添加业务变更记录 diff --git a/tongran-rocketmq/src/main/java/com/tongran/rocketmq/mapper/RmNetworkInterfaceChildMapper.java b/tongran-rocketmq/src/main/java/com/tongran/rocketmq/mapper/RmNetworkInterfaceChildMapper.java index eb05d27..83f44e9 100644 --- a/tongran-rocketmq/src/main/java/com/tongran/rocketmq/mapper/RmNetworkInterfaceChildMapper.java +++ b/tongran-rocketmq/src/main/java/com/tongran/rocketmq/mapper/RmNetworkInterfaceChildMapper.java @@ -1,6 +1,7 @@ package com.tongran.rocketmq.mapper; import com.tongran.rocketmq.domain.RmNetworkInterfaceChild; +import org.apache.ibatis.annotations.Param; import java.util.List; @@ -61,4 +62,6 @@ public interface RmNetworkInterfaceChildMapper public int deleteRmNetworkInterfaceChildByIds(Long[] ids); void deleteRmNetworkInterfaceChildByClientId(String clientId); + + void deleteByParentInterfaceName(@Param("clientId") String clientId, @Param("name") String name); } diff --git a/tongran-rocketmq/src/main/java/com/tongran/rocketmq/service/IRmNetworkInterfaceChildService.java b/tongran-rocketmq/src/main/java/com/tongran/rocketmq/service/IRmNetworkInterfaceChildService.java index e5a2cda..8d8e999 100644 --- a/tongran-rocketmq/src/main/java/com/tongran/rocketmq/service/IRmNetworkInterfaceChildService.java +++ b/tongran-rocketmq/src/main/java/com/tongran/rocketmq/service/IRmNetworkInterfaceChildService.java @@ -61,4 +61,6 @@ public interface IRmNetworkInterfaceChildService public int deleteRmNetworkInterfaceChildById(Long id); void deleteRmNetworkInterfaceChildByClientId(String clientId); + + void deleteByParentInterfaceName(String clientId, String name); } diff --git a/tongran-rocketmq/src/main/java/com/tongran/rocketmq/service/impl/InitialBandwidthTrafficServiceImpl.java b/tongran-rocketmq/src/main/java/com/tongran/rocketmq/service/impl/InitialBandwidthTrafficServiceImpl.java index 1c90930..d3bc97d 100644 --- a/tongran-rocketmq/src/main/java/com/tongran/rocketmq/service/impl/InitialBandwidthTrafficServiceImpl.java +++ b/tongran-rocketmq/src/main/java/com/tongran/rocketmq/service/impl/InitialBandwidthTrafficServiceImpl.java @@ -618,12 +618,7 @@ public class InitialBandwidthTrafficServiceImpl implements IInitialBandwidthTraf @Override public Map serverDetails(InitialBandwidthTraffic initialBandwidthTraffic) { - InitialBandwidthTraffic sppedMsg = getNetInterfaceDetailsMsg(initialBandwidthTraffic); Map resultMap = new HashMap<>(); - if(sppedMsg == null){ - sppedMsg = new InitialBandwidthTraffic(); - } - resultMap.put("speed", sppedMsg.getSpeed()); InitialSystemOtherCollectData memQuery = new InitialSystemOtherCollectData(); memQuery.setClientId(initialBandwidthTraffic.getClientId()); memQuery.setTableName(TableSubUtil.getTableName(DateUtils.getNowDate(), "initial_system_other_collect_data")); diff --git a/tongran-rocketmq/src/main/java/com/tongran/rocketmq/service/impl/RmAgentManagementServiceImpl.java b/tongran-rocketmq/src/main/java/com/tongran/rocketmq/service/impl/RmAgentManagementServiceImpl.java index c745ed1..3436352 100644 --- a/tongran-rocketmq/src/main/java/com/tongran/rocketmq/service/impl/RmAgentManagementServiceImpl.java +++ b/tongran-rocketmq/src/main/java/com/tongran/rocketmq/service/impl/RmAgentManagementServiceImpl.java @@ -210,9 +210,11 @@ public class RmAgentManagementServiceImpl implements IRmAgentManagementService if(managementList != null && !managementList.isEmpty()){ RmAgentManagement agentManagement = managementList.get(0); String addr = agentManagement.getFileUrl(); - if(addr.contains(rmAgentManagement.getAgentVersion())){ - agentManagement.setNewFlag(true); - return agentManagement; + if(addr != null){ + if(addr.contains(rmAgentManagement.getAgentVersion())){ + agentManagement.setNewFlag(true); + return agentManagement; + } } } return new RmAgentManagement(); diff --git a/tongran-rocketmq/src/main/java/com/tongran/rocketmq/service/impl/RmNetworkInterfaceChildServiceImpl.java b/tongran-rocketmq/src/main/java/com/tongran/rocketmq/service/impl/RmNetworkInterfaceChildServiceImpl.java index eb1965b..0419e33 100644 --- a/tongran-rocketmq/src/main/java/com/tongran/rocketmq/service/impl/RmNetworkInterfaceChildServiceImpl.java +++ b/tongran-rocketmq/src/main/java/com/tongran/rocketmq/service/impl/RmNetworkInterfaceChildServiceImpl.java @@ -99,4 +99,9 @@ public class RmNetworkInterfaceChildServiceImpl implements IRmNetworkInterfaceCh public void deleteRmNetworkInterfaceChildByClientId(String clientId) { rmNetworkInterfaceChildMapper.deleteRmNetworkInterfaceChildByClientId(clientId); } + + @Override + public void deleteByParentInterfaceName(String clientId, String name) { + rmNetworkInterfaceChildMapper.deleteByParentInterfaceName(clientId, name); + } } 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 3263b49..a261a52 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 @@ -4,11 +4,13 @@ import com.alibaba.fastjson.JSONObject; import com.tongran.common.core.enums.MsgEnum; import com.tongran.common.core.utils.DateUtils; import com.tongran.rocketmq.domain.DeviceMessage; +import com.tongran.rocketmq.domain.RmNetworkInterfaceChild; import com.tongran.rocketmq.domain.RmPppoeConfigMain; import com.tongran.rocketmq.domain.RmPppoeConfigSub; import com.tongran.rocketmq.domain.vo.PolicyTypeVo; import com.tongran.rocketmq.domain.vo.PppoeVo; import com.tongran.rocketmq.domain.vo.RmPppoeConfigSubVo; +import com.tongran.rocketmq.mapper.RmNetworkInterfaceChildMapper; import com.tongran.rocketmq.mapper.RmPppoeConfigMainMapper; import com.tongran.rocketmq.mapper.RmPppoeConfigSubMapper; import com.tongran.rocketmq.model.ProducerMode; @@ -37,6 +39,8 @@ public class RmPppoeConfigMainServiceImpl implements IRmPppoeConfigMainService private RmPppoeConfigSubMapper rmPppoeConfigSubMapper; @Autowired private ProducerMode producerMode; + @Autowired + private RmNetworkInterfaceChildMapper rmNetworkInterfaceChildMapper; @Override public RmPppoeConfigMain selectRmPppoeConfigMainByClientId(RmPppoeConfigMain rmPppoeConfigMain) @@ -49,6 +53,28 @@ public class RmPppoeConfigMainServiceImpl implements IRmPppoeConfigMainService RmPppoeConfigSub rmPppoeConfigSub = new RmPppoeConfigSub(); rmPppoeConfigSub.setClientId(rmPppoeConfigMain.getClientId()); List subList = rmPppoeConfigSubMapper.selectRmPppoeConfigSubList(rmPppoeConfigSub); + if("2".equals(pppoeConfigMain.getPppoeConfigMode())){ + subList = new ArrayList<>(); + // 查询虚拟网卡信息 + RmNetworkInterfaceChild childQuery = new RmNetworkInterfaceChild(); + childQuery.setNewFlag(1); + childQuery.setIpv4Flag(true); + childQuery.setClientId(rmPppoeConfigMain.getClientId()); + List childList = rmNetworkInterfaceChildMapper.selectRmNetworkInterfaceChildList(childQuery); + if(childList != null && !childList.isEmpty()){ + for (RmNetworkInterfaceChild child : childList) { + RmPppoeConfigSub pppoeConfigSub = new RmPppoeConfigSub(); + pppoeConfigSub.setClientId(child.getClientId()); + pppoeConfigSub.setInterfaceName(child.getInterfaceName()); + pppoeConfigSub.setMacAddress(child.getMacAddress()); + pppoeConfigSub.setIpv4Address(child.getIpv4Address()); + pppoeConfigSub.setIpv4Gateway(child.getGateway()); + pppoeConfigSub.setStatus(child.getStatus()); + pppoeConfigSub.setBandwidthResult(child.getBandwidthResult()); + subList.add(pppoeConfigSub); + } + } + } pppoeConfigMain.setSubList(subList); return pppoeConfigMain; } @@ -78,19 +104,23 @@ public class RmPppoeConfigMainServiceImpl implements IRmPppoeConfigMainService int rows = rmPppoeConfigMainMapper.insertRmPppoeConfigMain(rmPppoeConfigMain); List subList = rmPppoeConfigMain.getSubList(); List voList = new ArrayList<>(); - if(subList != null && !subList.isEmpty()){ - for (RmPppoeConfigSub rmPppoeConfigSub : subList) { - rmPppoeConfigSub.setClientId(rmPppoeConfigMain.getClientId()); - rmPppoeConfigSub.setCreateTime(DateUtils.getNowDate()); - rmPppoeConfigSub.setUpdateTime(DateUtils.getNowDate()); + if("1".equals(rmPppoeConfigMain.getPppoeConfigMode())){ + if(subList != null && !subList.isEmpty()){ + for (RmPppoeConfigSub rmPppoeConfigSub : subList) { + rmPppoeConfigSub.setClientId(rmPppoeConfigMain.getClientId()); + rmPppoeConfigSub.setCreateTime(DateUtils.getNowDate()); + rmPppoeConfigSub.setUpdateTime(DateUtils.getNowDate()); + } + // 删除子表信息 + rmPppoeConfigSubMapper.deleteRmPppoeConfigSubByClientId(rmPppoeConfigMain.getClientId()); + // 批量新增 + rmPppoeConfigSubMapper.batchInsertRmPppoeConfigSub(subList); + voList = subList.stream() + .map(RmPppoeConfigSub::toVo) + .collect(Collectors.toList()); } - // 删除子表信息 - rmPppoeConfigSubMapper.deleteRmPppoeConfigSubByClientId(rmPppoeConfigMain.getClientId()); - // 批量新增 - rmPppoeConfigSubMapper.batchInsertRmPppoeConfigSub(subList); - voList = subList.stream() - .map(RmPppoeConfigSub::toVo) - .collect(Collectors.toList()); + }else if("2".equals(rmPppoeConfigMain.getPppoeConfigMode())) { + processBandwidthResult(subList); } // 构建pppoe策略 PppoeVo pppoeVo = new PppoeVo(); @@ -115,6 +145,20 @@ public class RmPppoeConfigMainServiceImpl implements IRmPppoeConfigMainService 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); + } + } + } + /** * 修改PPPoE配置主表 * diff --git a/tongran-rocketmq/src/main/resources/mapper/rocketmq/RmNetworkInterfaceChildMapper.xml b/tongran-rocketmq/src/main/resources/mapper/rocketmq/RmNetworkInterfaceChildMapper.xml index 025519b..b5a3a09 100644 --- a/tongran-rocketmq/src/main/resources/mapper/rocketmq/RmNetworkInterfaceChildMapper.xml +++ b/tongran-rocketmq/src/main/resources/mapper/rocketmq/RmNetworkInterfaceChildMapper.xml @@ -25,10 +25,11 @@ + - select id, client_id, parent_interface, isp, province, city, public_ip, interface_name, mac_address, interface_type, ipv4_address, ipv6_address, gateway, create_time, update_time, create_by, update_by, bind_ip, new_flag, status from rm_network_interface_child + select id, client_id, parent_interface, isp, province, city, public_ip, interface_name, mac_address, interface_type, ipv4_address, ipv6_address, gateway, create_time, update_time, create_by, update_by, bind_ip, new_flag, status, bandwidth_result from rm_network_interface_child @@ -58,7 +60,7 @@ - insert IGNORE into rm_network_interface_child + insert into rm_network_interface_child client_id, parent_interface, @@ -79,6 +81,7 @@ bind_ip, new_flag, status, + bandwidth_result, #{clientId}, @@ -100,6 +103,24 @@ #{bindIp}, #{newFlag}, #{status}, + #{bandwidthResult}, + + ON DUPLICATE KEY UPDATE + + isp = #{isp}, + province = #{province}, + city = #{city}, + public_ip = #{publicIp}, + interface_name = #{interfaceName}, + mac_address = #{macAddress}, + interface_type = #{interfaceType}, + ipv4_address = #{ipv4Address}, + ipv6_address = #{ipv6Address}, + gateway = #{gateway}, + update_time = #{updateTime}, + update_by = #{updateBy}, + status = #{status}, + bandwidth_result = #{bandwidthResult}, @@ -125,6 +146,7 @@ bind_ip = #{bindIp}, new_flag = #{newFlag}, status = #{status}, + bandwidth_result = #{bandwidthResult}, @@ -154,4 +176,7 @@ delete from rm_network_interface_child where client_id = #{clientId} + + delete from rm_network_interface_child where client_id = #{clientId} and parent_interface =#{name} + \ No newline at end of file diff --git a/tongran-rocketmq/src/main/resources/mapper/rocketmq/RmNetworkInterfaceMapper.xml b/tongran-rocketmq/src/main/resources/mapper/rocketmq/RmNetworkInterfaceMapper.xml index 1d4a381..04f132f 100644 --- a/tongran-rocketmq/src/main/resources/mapper/rocketmq/RmNetworkInterfaceMapper.xml +++ b/tongran-rocketmq/src/main/resources/mapper/rocketmq/RmNetworkInterfaceMapper.xml @@ -170,6 +170,7 @@ city = #{city}, public_ip = #{publicIp}, interface_name = #{interfaceName}, + gateway = #{gateway}, interface_type = #{interfaceType}, ipv4_address = #{ipv4Address}, ipv6_address = #{ipv6Address}, diff --git a/tongran-rocketmq/src/main/resources/mapper/rocketmq/RmPppoeConfigSubMapper.xml b/tongran-rocketmq/src/main/resources/mapper/rocketmq/RmPppoeConfigSubMapper.xml index a787509..a5b0221 100644 --- a/tongran-rocketmq/src/main/resources/mapper/rocketmq/RmPppoeConfigSubMapper.xml +++ b/tongran-rocketmq/src/main/resources/mapper/rocketmq/RmPppoeConfigSubMapper.xml @@ -33,6 +33,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" a.ipv4_address ipv4Address, a.ipv4_mask_bits ipv4MaskBits, a.ipv4_gateway ipv4Gateway, + a.bandwidth_result bandwidthResult, a.create_time createTime, a.update_time updateTime, a.create_by createBy,