From 7a2e82325091a39c32cf9940d0016178a3655dc9 Mon Sep 17 00:00:00 2001
From: kongdeqiang <123456>
Date: 星期二, 02 十二月 2025 17:53:04 +0800
Subject: [PATCH] 大屏接口修改
---
src/main/java/com/wgcloud/service/OspfInfoService.java | 57 ++++++++++++++++++++++++++++++++++++---------------------
1 files changed, 36 insertions(+), 21 deletions(-)
diff --git a/src/main/java/com/wgcloud/service/OspfInfoService.java b/src/main/java/com/wgcloud/service/OspfInfoService.java
index 1f2f36f..26c4432 100644
--- a/src/main/java/com/wgcloud/service/OspfInfoService.java
+++ b/src/main/java/com/wgcloud/service/OspfInfoService.java
@@ -1,5 +1,7 @@
package com.wgcloud.service;
+import cn.hutool.http.HttpRequest;
+import com.alibaba.fastjson.TypeReference;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.wgcloud.entity.OspfErrorLog;
@@ -15,7 +17,9 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
+import com.alibaba.fastjson.JSON;
import java.util.HashMap;
import java.util.List;
@@ -38,6 +42,11 @@
private OspfNeighborUtil ospfNeighborUtil;
@Autowired
private OspfErrorLogMapper errorLogMapper;
+
+ @Value("${osfService.host}")
+ private String remoteHost;
+ @Value("${osfService.port}")
+ private String remotePort;
private static final Logger logger = LoggerFactory.getLogger(OspfInfoService.class);
@@ -78,27 +87,6 @@
OspfInfoMapper.updateById(ospfInfo);
}
-// public boolean checkOspfStatus() {
-// String command = "display ospf brief";
-// String output = routerConnectionService.executeCommand(command);
-//
-// if (output == null) {
-// return false;
-// }
-//
-// // 妫�鏌ヨ緭鍑轰腑鏄惁鍖呭惈OSPF鐩稿叧淇℃伅
-// boolean containsRouterId = StringUtils.containsIgnoreCase(output, "Router ID");
-// boolean containsArea = StringUtils.containsIgnoreCase(output, "Area");
-// boolean containsProcessId = StringUtils.containsIgnoreCase(output, "Process ID");
-//
-// // 妫�鏌ユ槸鍚︽湁閿欒淇℃伅
-// boolean containsError = StringUtils.containsIgnoreCase(output, "Error") ||
-// StringUtils.containsIgnoreCase(output, "Fail") ||
-// StringUtils.containsIgnoreCase(output, "Invalid");
-//
-// return (containsRouterId && containsArea && containsProcessId) && !containsError;
-// }
-
/**
* 鑾峰彇璇︾粏鐨凮SPF閭诲眳淇℃伅
*/
@@ -107,6 +95,7 @@
for (OspfInfo ospfInfo : ospfInfos) {
String command = "display ospf peer "+ospfInfo.getHostname();
String result = routerConnectionService.executeCommand(command,ospfInfo.getMonitorUsername(),ospfInfo.getMonitorPassword(),ospfInfo.getMonitorIp());
+ System.out.println("鑾峰彇鍒扮殑閭诲眳淇℃伅涓猴細"+result);
if(StringUtils.isNotBlank(result)){
List<OspfNeighbor> neighbors = ospfNeighborUtil.analysisStr(result);
if(neighbors != null || neighbors.size()>0){
@@ -144,6 +133,32 @@
}
}
+ public void getRouterStatus() {
+ List<OspfInfo> ospfInfos = OspfInfoMapper.selectAllByParams(null);
+ for (OspfInfo ospfInfo : ospfInfos) {
+ String command = "display ospf peer "+ospfInfo.getHostname();
+ Map<String,String> map = new HashMap<>();
+ map.put("command",command);
+ map.put("username",ospfInfo.getMonitorUsername());
+ map.put("password",ospfInfo.getMonitorPassword());
+ map.put("monitorIp",ospfInfo.getMonitorIp());
+ String str = JSON.toJSONString(map);
+ System.out.println(str);
+ try {
+ String url = "http://"+remoteHost+":"+remotePort+"/api/connect/getResult";
+ String responseBody = HttpRequest.post(url)
+ .timeout(5000)
+ .body(str)
+ .execute()
+ .body();
+ System.out.println(responseBody);
+
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
/**
* 鑾峰彇OSPF鎺ュ彛鐘舵��
*/
--
Gitblit v1.9.1