From 738d17d0cefd5537aee5f16dbdab90b11a5e7c07 Mon Sep 17 00:00:00 2001 From: yanglin Date: Mon, 24 Mar 2025 11:01:50 +0800 Subject: [PATCH] =?UTF-8?q?REQ-3540:=20=E8=BF=94=E5=9B=9E=E8=B5=84?= =?UTF-8?q?=E6=96=99=E5=BA=93=E8=B4=B9=E7=94=A8=E5=92=8C=E5=AE=89=E5=85=A8?= =?UTF-8?q?=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cn/axzo/nanopart/doc/api/domain/IndexNodeInfo.java | 8 +++++++- .../file/templatedb/TemplateDatabaseApiController.java | 6 ++++++ .../doc/file/templatedb/TemplateDatabaseQueryService.java | 7 ++++++- 3 files changed, 19 insertions(+), 2 deletions(-) diff --git a/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/domain/IndexNodeInfo.java b/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/domain/IndexNodeInfo.java index 92f2185d..4559f709 100644 --- a/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/domain/IndexNodeInfo.java +++ b/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/domain/IndexNodeInfo.java @@ -4,7 +4,6 @@ package cn.axzo.nanopart.doc.api.domain; import java.util.ArrayList; import java.util.List; -import cn.axzo.nanopart.doc.api.enums.IndexNodeContext; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.annotation.JSONField; import com.fasterxml.jackson.annotation.JsonIgnore; @@ -12,8 +11,10 @@ import com.fasterxml.jackson.annotation.JsonIgnore; import cn.axzo.maokai.api.vo.response.tree.NodeValue; import cn.axzo.maokai.api.vo.response.tree.ValueContainer; import cn.axzo.nanopart.doc.api.enums.DatabaseScope; +import cn.axzo.nanopart.doc.api.enums.IndexNodeContext; import cn.axzo.nanopart.doc.api.enums.IndexNodeState; import cn.axzo.nanopart.doc.api.enums.IndexNodeType; +import cn.axzo.nanopart.doc.api.templatedb.domain.TemplateDatabaseInfo; import lombok.Getter; import lombok.Setter; @@ -117,6 +118,11 @@ public class IndexNodeInfo implements NodeValue, ValueContainer { */ private FileTemplateNodeInfo fileTemplateNodeInfo; + /** + * 资料库信息 + */ + private TemplateDatabaseInfo templateDatabaseInfo; + private IndexNodeAttributes attributes; @JsonIgnore diff --git a/doc/doc-server/src/main/java/cn/axzo/nanopart/doc/file/templatedb/TemplateDatabaseApiController.java b/doc/doc-server/src/main/java/cn/axzo/nanopart/doc/file/templatedb/TemplateDatabaseApiController.java index ffa20a1a..fb172882 100644 --- a/doc/doc-server/src/main/java/cn/axzo/nanopart/doc/file/templatedb/TemplateDatabaseApiController.java +++ b/doc/doc-server/src/main/java/cn/axzo/nanopart/doc/file/templatedb/TemplateDatabaseApiController.java @@ -26,6 +26,7 @@ import cn.axzo.nanopart.doc.api.templatedb.reqeust.TemplateDatabaseUpdateDatabas import cn.axzo.nanopart.doc.api.templatedb.reqeust.TemplateDatabaseUploadFileRequest; import cn.axzo.nanopart.doc.api.templatedb.response.TemplateDatabaseGetDatabaseOrDirInfoResponse; import cn.axzo.nanopart.doc.entity.IndexNode; +import cn.axzo.nanopart.doc.entity.TemplateDatabase; import cn.axzo.nanopart.doc.file.index.IndexManager; import cn.axzo.nanopart.doc.file.index.IndexQueryService; import cn.axzo.nanopart.doc.utils.AsyncUtils; @@ -106,6 +107,11 @@ public class TemplateDatabaseApiController implements TemplateDatabaseApi { public CommonResponse> getTree() { List subtreeNodes = indexQueryService.getTree(IndexNodeScope.TEMPLATE_DATABASE); RootNode root = indexNodeTreeUtils.transform(subtreeNodes); + if (root.hasChildren()) { + IndexNodeInfo db = root.getChildren().get(0).tryGetValue(); + TemplateDatabase templateDatabase = templateDatabaseQueryService.getOrThrow(db.getCode()); + db.setTemplateDatabaseInfo(templateDatabaseQueryService.toTemplateDatabaseInfo(templateDatabase)); + } return CommonResponse.success(indexNodeTreeUtils.valueRoots(root)); } diff --git a/doc/doc-server/src/main/java/cn/axzo/nanopart/doc/file/templatedb/TemplateDatabaseQueryService.java b/doc/doc-server/src/main/java/cn/axzo/nanopart/doc/file/templatedb/TemplateDatabaseQueryService.java index 99d3afad..5260c444 100644 --- a/doc/doc-server/src/main/java/cn/axzo/nanopart/doc/file/templatedb/TemplateDatabaseQueryService.java +++ b/doc/doc-server/src/main/java/cn/axzo/nanopart/doc/file/templatedb/TemplateDatabaseQueryService.java @@ -3,10 +3,10 @@ package cn.axzo.nanopart.doc.file.templatedb; import static java.util.stream.Collectors.toList; +import java.util.Arrays; import java.util.Collections; import java.util.List; -import cn.axzo.nanopart.doc.api.util.BizAssertions; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; @@ -19,6 +19,7 @@ import cn.axzo.nanopart.doc.api.templatedb.domain.TemplateDatabaseInfo; import cn.axzo.nanopart.doc.api.templatedb.reqeust.TemplateDatabaseGetDatabaseOrDirInfoRequest; import cn.axzo.nanopart.doc.api.templatedb.reqeust.TemplateDatabaseSearchRequest; import cn.axzo.nanopart.doc.api.templatedb.response.TemplateDatabaseGetDatabaseOrDirInfoResponse; +import cn.axzo.nanopart.doc.api.util.BizAssertions; import cn.axzo.nanopart.doc.dao.TemplateDatabaseDao; import cn.axzo.nanopart.doc.entity.IndexNode; import cn.axzo.nanopart.doc.entity.TemplateDatabase; @@ -91,6 +92,10 @@ public class TemplateDatabaseQueryService { toTemplateDatabaseInfo(page.getRecords())); } + public TemplateDatabaseInfo toTemplateDatabaseInfo(TemplateDatabase templateDatabase) { + return toTemplateDatabaseInfo(Collections.singletonList(templateDatabase)).get(0); + } + public List toTemplateDatabaseInfo(List templateDatabases) { if (CollectionUtils.isEmpty(templateDatabases)) return Collections.emptyList();