diff --git a/src/main/java/io/github/yubincloud/fairywiki/controller/DocController.java b/src/main/java/io/github/yubincloud/fairywiki/controller/DocController.java index c8760d44746cc47b853d5c7efb4c40d051d9f8d9..f9f36ece9f6aace13841d900e210783a4a114653 100644 --- a/src/main/java/io/github/yubincloud/fairywiki/controller/DocController.java +++ b/src/main/java/io/github/yubincloud/fairywiki/controller/DocController.java @@ -55,4 +55,15 @@ public class DocController { docService.deleteDocs(docDeleteReqDto.getIds()); return new RestfulModel<>(ErrorCode.SUCCESS, "", 0); } + + /** + * 读取文档的内容 + * @param docId 所要读取的文档的 id + * @return 读取到的内容 + */ + @GetMapping("/read-content/{docId}") + public RestfulModel readDocContent(@PathVariable Long docId) { + String docContent = docService.readDocContent(docId); + return new RestfulModel<>(0, "", docContent); + } } diff --git a/src/main/java/io/github/yubincloud/fairywiki/service/DocService.java b/src/main/java/io/github/yubincloud/fairywiki/service/DocService.java index e77e00a946622e7b48e72d0e8fe4d83e046fa044..3d9051780505a31fa42f26096c6254a16f6ec6b5 100644 --- a/src/main/java/io/github/yubincloud/fairywiki/service/DocService.java +++ b/src/main/java/io/github/yubincloud/fairywiki/service/DocService.java @@ -103,4 +103,16 @@ public class DocService { criteria.andIdIn(idList); docMapper.deleteByExample(docExample); } + + /** + * 读取一篇文档的内容 + * @param docId 所要读取的文档的id + * @return 该文档的内容 + */ + public String readDocContent(Long docId) { + Content content = contentMapper.selectByPrimaryKey(docId); + if (content == null) + return ""; + return content.getContent(); + } } diff --git a/web/src/views/admin/admin-doc.vue b/web/src/views/admin/admin-doc.vue index 6786f4145951f83ac4f0cd5f75f7deb1c4fc1b80..e22e3684a489f00c195c25c4295f9abf504d55cc 100644 --- a/web/src/views/admin/admin-doc.vue +++ b/web/src/views/admin/admin-doc.vue @@ -240,6 +240,20 @@ export default defineComponent({ } }; + /** + * 内容查询 + **/ + const handleQueryContent = () => { + axios.get("/doc/read-content/" + doc.value.id).then((response) => { + const respData = response.data; + if (respData.code === 0) { + textEditor.txt.html(respData.data); + } else { + message.error(respData.msg); + } + }); + }; + /** * 编辑 @@ -247,6 +261,7 @@ export default defineComponent({ const edit = (record: any) => { modalVisible.value = true; doc.value = Tool.copy(record); + handleQueryContent(); // 不能选择当前节点及其所有子孙节点,作为父节点,会使树断开 treeSelectData.value = Tool.copy(level1.value);