From 549ecbf13b14a4deb74e42828abcd46ccb68a7c0 Mon Sep 17 00:00:00 2001 From: 田源 <lastanimals@163.com> Date: 星期二, 09 五月 2023 17:18:07 +0800 Subject: [PATCH] 前端代码提交 --- Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/repeater/DomainRepeater.java | 75 +++++++++++++++++++++++++------------ 1 files changed, 51 insertions(+), 24 deletions(-) diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/repeater/DomainRepeater.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/repeater/DomainRepeater.java index 24e772c..e7ad4cc 100644 --- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/repeater/DomainRepeater.java +++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/repeater/DomainRepeater.java @@ -2,11 +2,13 @@ import com.alibaba.cloud.nacos.NacosDiscoveryProperties; import com.alibaba.cloud.nacos.NacosServiceManager; +import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.alibaba.nacos.api.exception.NacosException; import com.alibaba.nacos.api.naming.NamingService; import com.alibaba.nacos.api.naming.pojo.Instance; import com.alibaba.nacos.api.naming.pojo.ServiceInfo; +import com.vci.ubcs.common.constant.LauncherConstant; import com.vci.ubcs.omd.dto.BtmAndLinkTypeDdlDTO; import com.vci.ubcs.omd.vo.BtmTypeVO; import com.vci.ubcs.omd.vo.LinkTypeVO; @@ -15,11 +17,9 @@ import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.StringPool; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.HttpEntity; -import org.springframework.http.HttpHeaders; -import org.springframework.http.HttpStatus; -import org.springframework.http.ResponseEntity; +import org.springframework.http.*; import org.springframework.stereotype.Component; +import org.springframework.util.CollectionUtils; import org.springframework.web.client.HttpClientErrorException; import org.springframework.web.client.RestTemplate; @@ -68,12 +68,27 @@ * Nacos鏈嶅姟鍒楄〃 */ private static NamingService namingService; - @Autowired private NacosServiceManager manager; @Autowired private NacosDiscoveryProperties properties; + + + /** + * 鎷垮彇鏈嶅姟涓殑鎵�鏈夎〃淇℃伅 + * @param serviceName 鏈嶅姟鍚嶇О + * @return 杩斿洖缁撴灉 + * @throws NacosException 鎵句笉鍒版湇鍔℃椂鎶涘嚭寮傚父 + */ + public static R getFromTable(String serviceName) throws NacosException{ + ResponseEntity<R> responseEntity = executeGet(getUrl(serviceName, API_GET_ALL_TABLE_INFO), new HashMap<>()); + if (responseEntity.getStatusCode().equals(HttpStatus.OK)) { + R body = Objects.requireNonNull(responseEntity.getBody()); + return body; + } + return R.fail(String.valueOf(responseEntity.getStatusCode().value())); + } @PostConstruct private void init() { @@ -198,29 +213,41 @@ } /** + * 鎵цhttpGet鎺ュ彛 + * + * @param url 鍦板潃 + * @param extraHeaders 璇锋眰澶村弬鏁� + * @return 鎵ц缁撴灉 + */ + private static ResponseEntity<R> executeGet(String url,Map<String, String> extraHeaders) { + RestTemplate restTemplate = new RestTemplate(); + HttpHeaders httpHeaders = new HttpHeaders(); + httpHeaders.add("Blade-Auth", AuthUtil.getHeader()); + HttpEntity<String> request = new HttpEntity<>(httpHeaders); + if (!CollectionUtils.isEmpty(extraHeaders)){ + StringBuilder sb = new StringBuilder().append("?"); + extraHeaders.forEach( (k,v) -> { + sb.append(k).append(StringPool.EQUALS).append(v).append(StringPool.AMPERSAND); + }); + String str = sb.toString(); + if (str.endsWith(StringPool.AMPERSAND)){ + str = str.substring(0,str.length()-1); + } + url = url + str; + } + return restTemplate.exchange(url, HttpMethod.GET,request,R.class,""); + } + + /** * 鑾峰彇鎵�鏈夊凡娉ㄥ唽鐨勬湇鍔� * @return 涓嶅寘鍚粯璁ゆ湇鍔$殑鍏朵粬鏈嶅姟 * @throws NacosException */ public static List<String> getDomain() throws NacosException { - List<ServiceInfo> services = namingService.getSubscribeServices(); - Set<String> serviceNames = new HashSet<>(); - serviceNames.add(AppConstant.APPLICATION_GATEWAY_NAME); - serviceNames.add(AppConstant.APPLICATION_ADMIN_NAME); - serviceNames.add(AppConstant.APPLICATION_AUTH_NAME); - serviceNames.add(AppConstant.APPLICATION_DESK_NAME); - serviceNames.add(AppConstant.APPLICATION_DEVELOP_NAME); - serviceNames.add(AppConstant.APPLICATION_FLOW_NAME); - serviceNames.add(AppConstant.APPLICATION_FLOWDESIGN_NAME); - serviceNames.add(AppConstant.APPLICATION_LOG_NAME); - serviceNames.add(AppConstant.APPLICATION_REPORT_NAME); - serviceNames.add(AppConstant.APPLICATION_SWAGGER_NAME); - serviceNames.add(AppConstant.APPLICATION_SYSTEM_NAME); - serviceNames.add(AppConstant.APPLICATION_TURBINE_NAME); - serviceNames.add(AppConstant.APPLICATION_USER_NAME); - serviceNames.add(AppConstant.APPLICATION_WEBSOCKET_NAME); - serviceNames.add(AppConstant.APPLICATION_ZIPKIN_NAME); - serviceNames.add(AppConstant.APPLICATION_NAME_OMD); - return services.stream().map(ServiceInfo::getName).filter(s -> !serviceNames.contains(s)).collect(Collectors.toList()); + RestTemplate restTemplate = new RestTemplate(); + String url = "http://" +LauncherConstant.NACOS_DEV_ADDR + "/nacos/v1/ns/service/list?pageNo=1&pageSize=50"; + String forObject = restTemplate.getForObject(url, String.class); + JSONObject jsonObject = JSON.parseObject(forObject); + return (List<String>) jsonObject.get("doms"); } } -- Gitblit v1.9.3