diff --git a/tongran-api/tongran-api-system/src/main/java/com/tongran/system/api/RemoteRocketMqService.java b/tongran-api/tongran-api-system/src/main/java/com/tongran/system/api/RemoteRocketMqService.java index 9839a3b..4351abf 100644 --- a/tongran-api/tongran-api-system/src/main/java/com/tongran/system/api/RemoteRocketMqService.java +++ b/tongran-api/tongran-api-system/src/main/java/com/tongran/system/api/RemoteRocketMqService.java @@ -70,7 +70,7 @@ public interface RemoteRocketMqService { * @return */ @GetMapping("/monitorPolicy/innerIssueSwitchPolicy") - public R innerIssueSwitchPolicy(Long id, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); + public R innerIssueSwitchPolicy(@RequestParam("id") Long id, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); /** * 查询策略信息 * @param rmMonitorPolicyRemote @@ -95,7 +95,7 @@ public interface RemoteRocketMqService { * @return */ @GetMapping("/monitorPolicy/issueDefaultPolicyByClientId") - public R issueDefaultPolicyByClientId(String clientId, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); + public R issueDefaultPolicyByClientId(@RequestParam("clientId") String clientId, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); @PostMapping("policy/addDeployScript") R addDeployScript(@RequestBody RmDeployScriptRemote addData, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); } diff --git a/tongran-modules/tongran-system/src/main/java/com/tongran/system/domain/RmEpsTopologyManagement.java b/tongran-modules/tongran-system/src/main/java/com/tongran/system/domain/RmEpsTopologyManagement.java index cb0cf98..bb5989c 100644 --- a/tongran-modules/tongran-system/src/main/java/com/tongran/system/domain/RmEpsTopologyManagement.java +++ b/tongran-modules/tongran-system/src/main/java/com/tongran/system/domain/RmEpsTopologyManagement.java @@ -92,4 +92,6 @@ public class RmEpsTopologyManagement extends BaseEntity * 服务器clientId */ private String serverClientId; + /** 对端交换机名称 */ + private String peerName; } diff --git a/tongran-modules/tongran-system/src/main/java/com/tongran/system/service/impl/RmEpsTopologyManagementServiceImpl.java b/tongran-modules/tongran-system/src/main/java/com/tongran/system/service/impl/RmEpsTopologyManagementServiceImpl.java index 24b04b4..661b093 100644 --- a/tongran-modules/tongran-system/src/main/java/com/tongran/system/service/impl/RmEpsTopologyManagementServiceImpl.java +++ b/tongran-modules/tongran-system/src/main/java/com/tongran/system/service/impl/RmEpsTopologyManagementServiceImpl.java @@ -41,7 +41,8 @@ public class RmEpsTopologyManagementServiceImpl implements IRmEpsTopologyManagem @Override public List selectRmEpsTopologyManagementList(RmEpsTopologyManagement rmEpsTopologyManagement) { - return rmEpsTopologyManagementMapper.selectRmEpsTopologyManagementList(rmEpsTopologyManagement); + List list = rmEpsTopologyManagementMapper.selectRmEpsTopologyManagementList(rmEpsTopologyManagement); + return list; } /** diff --git a/tongran-modules/tongran-system/src/main/java/com/tongran/system/service/impl/RmResourceRegistrationServiceImpl.java b/tongran-modules/tongran-system/src/main/java/com/tongran/system/service/impl/RmResourceRegistrationServiceImpl.java index 2ecfa55..e979a6e 100644 --- a/tongran-modules/tongran-system/src/main/java/com/tongran/system/service/impl/RmResourceRegistrationServiceImpl.java +++ b/tongran-modules/tongran-system/src/main/java/com/tongran/system/service/impl/RmResourceRegistrationServiceImpl.java @@ -961,8 +961,11 @@ public class RmResourceRegistrationServiceImpl implements IRmResourceRegistratio // 1. 处理IP绑定和记录 rmResourceRegistration.getBindNetworkMsg().forEach(map -> { // 绑定IP + if (map.get("id") == null) { + return; + } RmNetworkInterfaceRemote network = new RmNetworkInterfaceRemote(); - network.setId((Long) map.get("id")); + network.setId(Long.parseLong(map.get("id").toString())); network.setBindIp(map.get("status").toString()); remoteRocketMqService.bindPublicIp(network, SecurityConstants.INNER); @@ -998,6 +1001,13 @@ public class RmResourceRegistrationServiceImpl implements IRmResourceRegistratio .filter(ni -> "1".equals(ni.getBindIp()) || "3".equals(ni.getBindIp())) .collect(Collectors.toList())) .orElse(Collections.emptyList()); + // 管理网信息 + List mtmNetworks = Optional.ofNullable(netList) + .map(R::getData) + .map(list -> list.stream() + .filter(ni -> "2".equals(ni.getBindIp()) || "3".equals(ni.getBindIp())) + .collect(Collectors.toList())) + .orElse(Collections.emptyList()); // 如果有符合条件的网络接口 if (!filteredNetworks.isEmpty()) { @@ -1014,10 +1024,6 @@ public class RmResourceRegistrationServiceImpl implements IRmResourceRegistratio String netName = netNameBuilder.toString(); // 发送注册响应 - RouteMsg routeMsg = new RouteMsg(); - routeMsg.setName(filteredNetworks.get(0).getInterfaceName()); // 使用拼接后的网络接口名称 - routeMsg.setGateway(filteredNetworks.get(0).getGateway()); // 使用第一个网络接口的网关,或者您可以根据需要调整 - MessageVo messageVo = new MessageVo(); messageVo.setClientId(clientId); messageVo.setDataType(MsgEnum.注册应答.getValue()); @@ -1025,7 +1031,15 @@ public class RmResourceRegistrationServiceImpl implements IRmResourceRegistratio RspVo rspVo = new RspVo(); rspVo.setResCode(1); rspVo.setResMag("注册成功"); - rspVo.setAddRoute(JSONObject.toJSONString(routeMsg)); + if(mtmNetworks != null && !mtmNetworks.isEmpty()){ + RouteMsg routeMsg = new RouteMsg(); + String gateWay = mtmNetworks.get(0).getGateway(); + routeMsg.setName(mtmNetworks.get(0).getInterfaceName()); // 使用拼接后的网络接口名称 + routeMsg.setGateway(gateWay); // 使用第一个网络接口的网关,或者您可以根据需要调整 + if(gateWay != null){ + rspVo.setAddRoute(JSONObject.toJSONString(routeMsg)); + } + } rspVo.setNetName(netName); messageVo.setData(JSONObject.toJSONString(rspVo)); diff --git a/tongran-modules/tongran-system/src/main/resources/mapper/system/RmEpsTopologyManagementMapper.xml b/tongran-modules/tongran-system/src/main/resources/mapper/system/RmEpsTopologyManagementMapper.xml index 8e6d6ce..63b75b4 100644 --- a/tongran-modules/tongran-system/src/main/resources/mapper/system/RmEpsTopologyManagementMapper.xml +++ b/tongran-modules/tongran-system/src/main/resources/mapper/system/RmEpsTopologyManagementMapper.xml @@ -24,10 +24,32 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + - select id, switch_name, client_id, switch_sn, interface_name, connected_device_type, server_name, server_sn, server_port, create_time, update_time, creator_id, creator_name, updater_id, updater_name, switch_ip_address, peer_switch_name, peer_switch_interface, server_client_id from rm_eps_topology_management + SELECT + id, + switch_name, + client_id, + switch_sn, + interface_name, + connected_device_type, + server_name, + server_sn, + server_port, + create_time, + update_time, + creator_id, + creator_name, + updater_id, + updater_name, + switch_ip_address, + peer_switch_name, + (SELECT switch_name FROM rm_switch_management WHERE client_id = rm_eps_topology_management.peer_switch_name) AS peerName, + peer_switch_interface, + server_client_id + FROM rm_eps_topology_management