From 57ffdccec1a15d2ae585ee45dc2a09706567cdfd Mon Sep 17 00:00:00 2001 From: Odboy Date: Wed, 24 Dec 2025 23:03:12 +0800 Subject: [PATCH] =?UTF-8?q?fix(file):=20=E4=BF=AE=E5=A4=8D=E6=9C=AC?= =?UTF-8?q?=E5=9C=B0=E6=96=87=E4=BB=B6=E4=B8=8A=E4=BC=A0=E5=8A=A9=E6=89=8B?= =?UTF-8?q?=E7=9A=84=E8=B7=AF=E5=BE=84=E9=85=8D=E7=BD=AE=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 添加了对操作系统名称为空的兜底处理,默认使用Linux路径 - 修复了Mac系统路径中用户名占位符的配置,添加当前用户名获取功能 - 引入KitSystemUtil工具类的getCurrentUserName方法获取系统用户名 - 使用StrUtil工具类处理用户名为空的情况 - 在前端home页面添加系统API文档链接显示功能 --- cutejava-front/src/views/home.vue | 6 +++++ .../server/core/KitFileLocalUploadHelper.java | 23 +++++++++++++------ .../java/cn/odboy/util/KitSystemUtil.java | 7 ++++++ .../server/core/KitFileLocalUploadHelper.java | 19 +++++++++++---- .../java/cn/odboy/util/KitSystemUtil.java | 7 ++++++ 5 files changed, 51 insertions(+), 11 deletions(-) diff --git a/cutejava-front/src/views/home.vue b/cutejava-front/src/views/home.vue index 4fa22f5f..d4ed4fa6 100644 --- a/cutejava-front/src/views/home.vue +++ b/cutejava-front/src/views/home.vue @@ -3,6 +3,10 @@
+ + 系统API文档:{{ swaggerApi }} + + @@ -36,6 +40,7 @@ import LineChart from './dashboard/LineChart' import RadarChart from '@/components/Echarts/RadarChart' import PieChart from '@/components/Echarts/PieChart' import BarChart from '@/components/Echarts/BarChart' +import store from '@/store' const lineChartData = { newVisitis: { @@ -68,6 +73,7 @@ export default { }, data() { return { + swaggerApi: store.getters.swaggerApi, lineChartData: lineChartData.newVisitis } }, diff --git a/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/framework/server/core/KitFileLocalUploadHelper.java b/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/framework/server/core/KitFileLocalUploadHelper.java index bee9707c..0fdf1754 100644 --- a/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/framework/server/core/KitFileLocalUploadHelper.java +++ b/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/framework/server/core/KitFileLocalUploadHelper.java @@ -13,10 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - package cn.odboy.framework.server.core; +import cn.hutool.core.util.StrUtil; import cn.odboy.constant.SystemConst; +import cn.odboy.util.KitSystemUtil; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; @@ -32,17 +33,25 @@ public class KitFileLocalUploadHelper { */ private static final int AVATAR_MAX_SIZE = 5; private static final String PATH_WINDOWS = "C:\\${appName}\\file\\"; - private static final String PATH_MAC = "/Users/odboy/${appName}/file/"; + private static final String PATH_MAC = "/Users${username}/${appName}/file/"; private static final String PATH_LINUX = "/home/${appName}/file/"; - @Value("${spring.application.name}") - private String appName; + @Value("${spring.application.name}") private String appName; public String getPath() { String os = System.getProperty("os.name"); - if (os.toLowerCase().startsWith(SystemConst.WIN)) { + if (os == null) { + // 默认使用 Linux 路径作为兜底方案 + return PATH_LINUX.replace("${appName}", appName); + } + String lowerOs = os.toLowerCase(); + if (lowerOs.startsWith(SystemConst.WIN)) { return PATH_WINDOWS.replace("${appName}", appName); - } else if (os.toLowerCase().startsWith(SystemConst.MAC)) { - return PATH_MAC.replace("${appName}", appName); + } else if (lowerOs.startsWith(SystemConst.MAC)) { + String currentUserName = KitSystemUtil.getCurrentUserName(); + if (StrUtil.isBlank(currentUserName)) { + return PATH_MAC.replace("${appName}", appName).replace("${username}", ""); + } + return PATH_MAC.replace("${appName}", appName).replace("${username}", currentUserName); } return PATH_LINUX.replace("${appName}", appName); } diff --git a/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/util/KitSystemUtil.java b/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/util/KitSystemUtil.java index 8bf56b2d..29b4905f 100644 --- a/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/util/KitSystemUtil.java +++ b/cutejava-springboot3/cutejava-framework/src/main/java/cn/odboy/util/KitSystemUtil.java @@ -32,4 +32,11 @@ public class KitSystemUtil { CentralProcessor processor = systemInfo.getHardware().getProcessor(); return processor.getPhysicalProcessorCount(); } + + /** + * 获取当前系统的用户名 + */ + public static String getCurrentUserName() { + return System.getProperty("user.name"); + } } diff --git a/cutejava/cutejava-framework/src/main/java/cn/odboy/framework/server/core/KitFileLocalUploadHelper.java b/cutejava/cutejava-framework/src/main/java/cn/odboy/framework/server/core/KitFileLocalUploadHelper.java index 7e54b1df..0fdf1754 100644 --- a/cutejava/cutejava-framework/src/main/java/cn/odboy/framework/server/core/KitFileLocalUploadHelper.java +++ b/cutejava/cutejava-framework/src/main/java/cn/odboy/framework/server/core/KitFileLocalUploadHelper.java @@ -15,7 +15,9 @@ */ package cn.odboy.framework.server.core; +import cn.hutool.core.util.StrUtil; import cn.odboy.constant.SystemConst; +import cn.odboy.util.KitSystemUtil; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; @@ -31,16 +33,25 @@ public class KitFileLocalUploadHelper { */ private static final int AVATAR_MAX_SIZE = 5; private static final String PATH_WINDOWS = "C:\\${appName}\\file\\"; - private static final String PATH_MAC = "/Users/odboy/${appName}/file/"; + private static final String PATH_MAC = "/Users${username}/${appName}/file/"; private static final String PATH_LINUX = "/home/${appName}/file/"; @Value("${spring.application.name}") private String appName; public String getPath() { String os = System.getProperty("os.name"); - if (os.toLowerCase().startsWith(SystemConst.WIN)) { + if (os == null) { + // 默认使用 Linux 路径作为兜底方案 + return PATH_LINUX.replace("${appName}", appName); + } + String lowerOs = os.toLowerCase(); + if (lowerOs.startsWith(SystemConst.WIN)) { return PATH_WINDOWS.replace("${appName}", appName); - } else if (os.toLowerCase().startsWith(SystemConst.MAC)) { - return PATH_MAC.replace("${appName}", appName); + } else if (lowerOs.startsWith(SystemConst.MAC)) { + String currentUserName = KitSystemUtil.getCurrentUserName(); + if (StrUtil.isBlank(currentUserName)) { + return PATH_MAC.replace("${appName}", appName).replace("${username}", ""); + } + return PATH_MAC.replace("${appName}", appName).replace("${username}", currentUserName); } return PATH_LINUX.replace("${appName}", appName); } diff --git a/cutejava/cutejava-framework/src/main/java/cn/odboy/util/KitSystemUtil.java b/cutejava/cutejava-framework/src/main/java/cn/odboy/util/KitSystemUtil.java index a237de44..3e955496 100644 --- a/cutejava/cutejava-framework/src/main/java/cn/odboy/util/KitSystemUtil.java +++ b/cutejava/cutejava-framework/src/main/java/cn/odboy/util/KitSystemUtil.java @@ -30,4 +30,11 @@ public class KitSystemUtil { CentralProcessor processor = systemInfo.getHardware().getProcessor(); return processor.getPhysicalProcessorCount(); } + + /** + * 获取当前系统的用户名 + */ + public static String getCurrentUserName() { + return System.getProperty("user.name"); + } }