From 9f8395fab13ca4b230a0f7d62636e209745c91d4 Mon Sep 17 00:00:00 2001 From: lrj <owen.stl@gmail.com> Date: 星期日, 28 九月 2025 14:16:18 +0800 Subject: [PATCH] feat: 完善注册流程的文件上传功能 --- backend/src/main/java/com/rongyichuang/common/api/MediaGraphqlApi.java | 53 ++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 42 insertions(+), 11 deletions(-) diff --git a/backend/src/main/java/com/rongyichuang/common/api/MediaGraphqlApi.java b/backend/src/main/java/com/rongyichuang/common/api/MediaGraphqlApi.java index 0ddc088..4ad1c5a 100644 --- a/backend/src/main/java/com/rongyichuang/common/api/MediaGraphqlApi.java +++ b/backend/src/main/java/com/rongyichuang/common/api/MediaGraphqlApi.java @@ -27,7 +27,7 @@ @Autowired private JdbcTemplate jdbcTemplate; - @Value("${app.media-url:${app.media.url:}}") + @Value("${app.media-url}") private String mediaBaseUrl; public MediaGraphqlApi(MediaRepository mediaRepository, MediaService mediaService) { @@ -85,12 +85,24 @@ r.setMediaType(m.getMediaType()); r.setTargetType(m.getTargetType()); r.setTargetId(m.getTargetId()); + r.setThumbPath(m.getThumbPath()); + r.setDuration(m.getDuration()); + r.setDescription(m.getDescription()); + // 杩藉姞 fullUrl锛堝墠绔篃鍙嚜琛屾嫾鎺ワ級 if (mediaBaseUrl != null && !mediaBaseUrl.isEmpty() && m.getPath() != null) { String base = mediaBaseUrl.endsWith("/") ? mediaBaseUrl.substring(0, mediaBaseUrl.length() - 1) : mediaBaseUrl; String p = m.getPath().startsWith("/") ? m.getPath() : ("/" + m.getPath()); r.setFullUrl(base + p); } + + // 杩藉姞 fullThumbUrl + if (mediaBaseUrl != null && !mediaBaseUrl.isEmpty() && m.getThumbPath() != null) { + String base = mediaBaseUrl.endsWith("/") ? mediaBaseUrl.substring(0, mediaBaseUrl.length() - 1) : mediaBaseUrl; + String p = m.getThumbPath().startsWith("/") ? m.getThumbPath() : ("/" + m.getThumbPath()); + r.setFullThumbUrl(base + p); + } + return r; } @@ -100,18 +112,37 @@ System.out.println("杈撳叆鍙傛暟: " + input); System.out.println("targetType: " + input.getTargetType()); System.out.println("targetId: " + input.getTargetId()); + System.out.println("thumbPath: " + input.getThumbPath()); try { - Media result = mediaService.saveMedia( - input.getName(), - input.getPath(), - input.getFileSize(), - input.getFileExt(), - input.getMediaType(), - input.getTargetType(), - input.getTargetId() - ); - System.out.println("淇濆瓨鎴愬姛锛屽獟浣揑D: " + result.getId()); + Media result; + + // 濡傛灉鏈夌缉鐣ュ浘璺緞锛屼娇鐢ㄦ敮鎸佺缉鐣ュ浘鐨勬柟娉� + if (input.getThumbPath() != null && !input.getThumbPath().trim().isEmpty()) { + result = mediaService.saveMedia( + input.getName(), + input.getPath(), + input.getFileSize(), + input.getFileExt(), + input.getMediaType(), + input.getTargetType(), + input.getTargetId(), + input.getThumbPath() + ); + System.out.println("淇濆瓨鎴愬姛锛堝惈缂╃暐鍥撅級锛屽獟浣揑D: " + result.getId()); + } else { + result = mediaService.saveMedia( + input.getName(), + input.getPath(), + input.getFileSize(), + input.getFileExt(), + input.getMediaType(), + input.getTargetType(), + input.getTargetId() + ); + System.out.println("淇濆瓨鎴愬姛锛屽獟浣揑D: " + result.getId()); + } + return result; } catch (Exception e) { System.err.println("淇濆瓨濯掍綋澶辫触: " + e.getMessage()); -- Gitblit v1.8.0