From d5a5308e5f5167eee7e0b48009cc0e916a43ba73 Mon Sep 17 00:00:00 2001 From: wangjiahao <1522128093@qq.com> Date: Mon, 1 Apr 2024 17:54:42 +0800 Subject: [PATCH] =?UTF-8?q?refactor(=E4=BB=AA=E8=A1=A8=E6=9D=BF):=20?= =?UTF-8?q?=E6=99=BA=E8=83=BD=E5=8A=A9=E6=89=8B=E6=94=AF=E6=8C=81=E6=94=BE?= =?UTF-8?q?=E5=A4=A7=E5=AF=B9=E8=AF=9D=E6=A1=86=E7=BD=91=E7=BB=9C=E6=A3=80?= =?UTF-8?q?=E6=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dataease/commons/utils/UrlTestUtils.java | 14 ++++++ .../io/dataease/service/ai/AiBaseService.java | 3 +- .../src/icons/svg/dv-ai-window-max.svg | 1 + .../src/icons/svg/dv-ai-window-min.svg | 1 + .../src/layout/components/AiComponent.vue | 48 +++++++++++++++---- 5 files changed, 58 insertions(+), 9 deletions(-) create mode 100644 core/frontend/src/icons/svg/dv-ai-window-max.svg create mode 100644 core/frontend/src/icons/svg/dv-ai-window-min.svg diff --git a/core/backend/src/main/java/io/dataease/commons/utils/UrlTestUtils.java b/core/backend/src/main/java/io/dataease/commons/utils/UrlTestUtils.java index ba2bb3fbd0..ff536617a6 100644 --- a/core/backend/src/main/java/io/dataease/commons/utils/UrlTestUtils.java +++ b/core/backend/src/main/java/io/dataease/commons/utils/UrlTestUtils.java @@ -1,5 +1,7 @@ package io.dataease.commons.utils; +import java.io.IOException; +import java.net.HttpURLConnection; import java.net.URL; import java.net.URLConnection; @@ -17,4 +19,16 @@ public class UrlTestUtils { return false; } } + + public static boolean isURLAvailable(String urlString) { + try { + URL url = new URL(urlString); + HttpURLConnection connection = (HttpURLConnection) url.openConnection(); + connection.setRequestMethod("HEAD"); + int responseCode = connection.getResponseCode(); + return responseCode == HttpURLConnection.HTTP_OK; + } catch (IOException e) { + return false; + } + } } diff --git a/core/backend/src/main/java/io/dataease/service/ai/AiBaseService.java b/core/backend/src/main/java/io/dataease/service/ai/AiBaseService.java index e6b02a8cf7..b4daf17f81 100644 --- a/core/backend/src/main/java/io/dataease/service/ai/AiBaseService.java +++ b/core/backend/src/main/java/io/dataease/service/ai/AiBaseService.java @@ -1,5 +1,6 @@ package io.dataease.service.ai; +import io.dataease.commons.utils.UrlTestUtils; import io.dataease.service.system.SystemParameterService; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; @@ -23,7 +24,7 @@ public class AiBaseService { String baseUrl = parameterService.getValue("ai.baseUrl"); Map result = new HashMap<>(); - if(StringUtils.isNotEmpty(baseUrl)){ + if(StringUtils.isNotEmpty(baseUrl) && UrlTestUtils.isURLAvailable(baseUrl)){ result.put("ai.baseUrl",baseUrl); } diff --git a/core/frontend/src/icons/svg/dv-ai-window-max.svg b/core/frontend/src/icons/svg/dv-ai-window-max.svg new file mode 100644 index 0000000000..65f2115172 --- /dev/null +++ b/core/frontend/src/icons/svg/dv-ai-window-max.svg @@ -0,0 +1 @@ + diff --git a/core/frontend/src/icons/svg/dv-ai-window-min.svg b/core/frontend/src/icons/svg/dv-ai-window-min.svg new file mode 100644 index 0000000000..58794a4b18 --- /dev/null +++ b/core/frontend/src/icons/svg/dv-ai-window-min.svg @@ -0,0 +1 @@ + diff --git a/core/frontend/src/layout/components/AiComponent.vue b/core/frontend/src/layout/components/AiComponent.vue index bfd5a60572..5f342b59a5 100644 --- a/core/frontend/src/layout/components/AiComponent.vue +++ b/core/frontend/src/layout/components/AiComponent.vue @@ -10,7 +10,8 @@ export default { }, data() { return { - aiDialogShow: false + aiDialogShow: false, + sizeState: 'min' } }, mounted() { @@ -22,6 +23,9 @@ export default { }, closeAi() { this.aiDialogShow = false + }, + sizeChange() { + this.sizeState = this.sizeState === 'min' ? 'max' : 'min' } } } @@ -29,10 +33,19 @@ export default {