From 28885e5f77900016b4789a9e8da39c8ca32ace1a Mon Sep 17 00:00:00 2001 From: fengshuonan Date: Mon, 28 Mar 2022 14:52:26 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=907.2.2=E3=80=91=E3=80=90file=E3=80=91?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=E4=B8=80=E4=B8=AA=E9=80=9A=E7=94=A8=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E9=A2=84=E8=A7=88=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../roses/kernel/file/api/FileInfoApi.java | 9 +++++++++ .../kernel/file/api}/pojo/AntdvFileInfo.java | 2 +- .../controller/SysFileInfoController.java | 16 +++++++++++++++ .../service/impl/SysFileInfoServiceImpl.java | 20 +++++++++++++++++++ .../system/modular/theme/entity/SysTheme.java | 2 +- .../service/impl/SysThemeServiceImpl.java | 19 ++---------------- 6 files changed, 49 insertions(+), 19 deletions(-) rename {kernel-s-system/system-business-theme/src/main/java/cn/stylefeng/roses/kernel/system/modular/theme => kernel-d-file/file-api/src/main/java/cn/stylefeng/roses/kernel/file/api}/pojo/AntdvFileInfo.java (92%) diff --git a/kernel-d-file/file-api/src/main/java/cn/stylefeng/roses/kernel/file/api/FileInfoApi.java b/kernel-d-file/file-api/src/main/java/cn/stylefeng/roses/kernel/file/api/FileInfoApi.java index ec83ce067..474d85468 100644 --- a/kernel-d-file/file-api/src/main/java/cn/stylefeng/roses/kernel/file/api/FileInfoApi.java +++ b/kernel-d-file/file-api/src/main/java/cn/stylefeng/roses/kernel/file/api/FileInfoApi.java @@ -24,6 +24,7 @@ */ package cn.stylefeng.roses.kernel.file.api; +import cn.stylefeng.roses.kernel.file.api.pojo.AntdvFileInfo; import cn.stylefeng.roses.kernel.file.api.pojo.response.SysFileInfoResponse; /** @@ -75,4 +76,12 @@ public interface FileInfoApi { */ String getFileUnAuthUrl(Long fileId); + /** + * 获取AntdV组件格式对应的文件信息封装 + * + * @author fengshuonan + * @date 2022/3/28 14:32 + */ + AntdvFileInfo buildAntdvFileInfo(Long fileId); + } diff --git a/kernel-s-system/system-business-theme/src/main/java/cn/stylefeng/roses/kernel/system/modular/theme/pojo/AntdvFileInfo.java b/kernel-d-file/file-api/src/main/java/cn/stylefeng/roses/kernel/file/api/pojo/AntdvFileInfo.java similarity index 92% rename from kernel-s-system/system-business-theme/src/main/java/cn/stylefeng/roses/kernel/system/modular/theme/pojo/AntdvFileInfo.java rename to kernel-d-file/file-api/src/main/java/cn/stylefeng/roses/kernel/file/api/pojo/AntdvFileInfo.java index f2e2ba667..02c72a743 100644 --- a/kernel-s-system/system-business-theme/src/main/java/cn/stylefeng/roses/kernel/system/modular/theme/pojo/AntdvFileInfo.java +++ b/kernel-d-file/file-api/src/main/java/cn/stylefeng/roses/kernel/file/api/pojo/AntdvFileInfo.java @@ -1,4 +1,4 @@ -package cn.stylefeng.roses.kernel.system.modular.theme.pojo; +package cn.stylefeng.roses.kernel.file.api.pojo; import lombok.Data; diff --git a/kernel-d-file/file-business/src/main/java/cn/stylefeng/roses/kernel/file/modular/controller/SysFileInfoController.java b/kernel-d-file/file-business/src/main/java/cn/stylefeng/roses/kernel/file/modular/controller/SysFileInfoController.java index 93b4f0f3c..dd54ed17f 100644 --- a/kernel-d-file/file-business/src/main/java/cn/stylefeng/roses/kernel/file/modular/controller/SysFileInfoController.java +++ b/kernel-d-file/file-business/src/main/java/cn/stylefeng/roses/kernel/file/modular/controller/SysFileInfoController.java @@ -25,7 +25,9 @@ package cn.stylefeng.roses.kernel.file.modular.controller; import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult; +import cn.stylefeng.roses.kernel.file.api.FileInfoApi; import cn.stylefeng.roses.kernel.file.api.constants.FileConstants; +import cn.stylefeng.roses.kernel.file.api.pojo.AntdvFileInfo; import cn.stylefeng.roses.kernel.file.api.pojo.request.SysFileInfoRequest; import cn.stylefeng.roses.kernel.file.api.pojo.response.SysFileInfoListResponse; import cn.stylefeng.roses.kernel.file.api.pojo.response.SysFileInfoResponse; @@ -74,6 +76,9 @@ public class SysFileInfoController { @Resource private SysFileInfoService sysFileInfoService; + @Resource + private FileInfoApi fileInfoApi; + /** * 上传文件 *

@@ -271,4 +276,15 @@ public class SysFileInfoController { return new SuccessResponseData<>(sysFileInfoService.detail(sysFileInfoRequest)); } + /** + * 获取antdv类型的文件详情信息 + * + * @author fengshuonan + * @date 2022/3/28 14:37 + */ + @GetResource(name = "获取antdv类型的文件详情信息", path = "/sysFileInfo/getAntdVInfo") + public ResponseData getAntdVInfo(@Validated(SysFileInfoRequest.detail.class) SysFileInfoRequest sysFileInfoRequest) { + return new SuccessResponseData<>(fileInfoApi.buildAntdvFileInfo(sysFileInfoRequest.getFileId())); + } + } diff --git a/kernel-d-file/file-business/src/main/java/cn/stylefeng/roses/kernel/file/modular/service/impl/SysFileInfoServiceImpl.java b/kernel-d-file/file-business/src/main/java/cn/stylefeng/roses/kernel/file/modular/service/impl/SysFileInfoServiceImpl.java index af6650af2..734af1f23 100644 --- a/kernel-d-file/file-business/src/main/java/cn/stylefeng/roses/kernel/file/modular/service/impl/SysFileInfoServiceImpl.java +++ b/kernel-d-file/file-business/src/main/java/cn/stylefeng/roses/kernel/file/modular/service/impl/SysFileInfoServiceImpl.java @@ -42,6 +42,7 @@ import cn.stylefeng.roses.kernel.file.api.enums.FileStatusEnum; import cn.stylefeng.roses.kernel.file.api.exception.FileException; import cn.stylefeng.roses.kernel.file.api.exception.enums.FileExceptionEnum; import cn.stylefeng.roses.kernel.file.api.expander.FileConfigExpander; +import cn.stylefeng.roses.kernel.file.api.pojo.AntdvFileInfo; import cn.stylefeng.roses.kernel.file.api.pojo.request.SysFileInfoRequest; import cn.stylefeng.roses.kernel.file.api.pojo.response.SysFileInfoListResponse; import cn.stylefeng.roses.kernel.file.api.pojo.response.SysFileInfoResponse; @@ -465,6 +466,25 @@ public class SysFileInfoServiceImpl extends ServiceImpl i // 判断是否是文件类型 boolean keyFileFlag = sysThemeTemplateFieldService.getKeyFileFlag(key); if (keyFileFlag) { - AntdvFileInfo antdvFileInfo = new AntdvFileInfo(); - // 设置唯一id - antdvFileInfo.setUid(IdWorker.getIdStr()); - // 设置文件名称 - SysFileInfoResponse fileInfoWithoutContent = null; - try { - fileInfoWithoutContent = fileInfoApi.getFileInfoWithoutContent(Long.valueOf(value)); - antdvFileInfo.setName(fileInfoWithoutContent.getFileOriginName()); - } catch (Exception e) { - // 未查询到文件继续查询下一个文件 - } - // 设置文件访问url - String fileAuthUrl = fileInfoApi.getFileAuthUrl(Long.valueOf(value)); - antdvFileInfo.setThumbUrl(fileAuthUrl); + AntdvFileInfo antdvFileInfo = this.fileInfoApi.buildAntdvFileInfo(Long.valueOf(value)); tempFileList.put(key, new AntdvFileInfo[]{antdvFileInfo}); } }