From f750c5effd8d2c5106541f760670b844fe4b5319 Mon Sep 17 00:00:00 2001 From: zhangxiaomeng <1362468712@qq.com> Date: Tue, 9 Sep 2025 17:04:40 +0800 Subject: [PATCH] =?UTF-8?q?=E6=A8=A1=E6=9D=BF=E5=88=9B=E5=BB=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gyxtp/src/components/PdfViewer.vue | 160 ++++++ gyxtp/src/view/articleInfo.vue | 2 +- .../controller/system/ZhyDocmubanController.java | 121 +++++ .../controller/system/ZhyFileManageController.java | 135 ++--- .../ruoyi/api/controller/uploadApiController.java | 5 +- .../java/com/ruoyi/system/domain/ZhyDocmuban.java | 107 ++++ .../com/ruoyi/system/mapper/ZhyDocmubanMapper.java | 61 +++ .../ruoyi/system/service/IZhyDocmubanService.java | 61 +++ .../service/impl/ZhyDocmubanServiceImpl.java | 93 ++++ .../resources/mapper/system/ZhyDocmubanMapper.xml | 76 +++ ruoyi-ui/src/api/system/docmuban.js | 54 ++ ruoyi-ui/src/views/system/docmuban/index.vue | 552 +++++++++++++++++++++ 12 files changed, 1363 insertions(+), 64 deletions(-) create mode 100644 gyxtp/src/components/PdfViewer.vue create mode 100644 ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/ZhyDocmubanController.java create mode 100644 ruoyi-system/src/main/java/com/ruoyi/system/domain/ZhyDocmuban.java create mode 100644 ruoyi-system/src/main/java/com/ruoyi/system/mapper/ZhyDocmubanMapper.java create mode 100644 ruoyi-system/src/main/java/com/ruoyi/system/service/IZhyDocmubanService.java create mode 100644 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/ZhyDocmubanServiceImpl.java create mode 100644 ruoyi-system/src/main/resources/mapper/system/ZhyDocmubanMapper.xml create mode 100644 ruoyi-ui/src/api/system/docmuban.js create mode 100644 ruoyi-ui/src/views/system/docmuban/index.vue diff --git a/gyxtp/src/components/PdfViewer.vue b/gyxtp/src/components/PdfViewer.vue new file mode 100644 index 0000000..26666b4 --- /dev/null +++ b/gyxtp/src/components/PdfViewer.vue @@ -0,0 +1,160 @@ + + + + + \ No newline at end of file diff --git a/gyxtp/src/view/articleInfo.vue b/gyxtp/src/view/articleInfo.vue index 4c2090a..5e811d6 100644 --- a/gyxtp/src/view/articleInfo.vue +++ b/gyxtp/src/view/articleInfo.vue @@ -941,7 +941,7 @@ export default { this.id = this.$route.query.id; getArticleInfo(this.id).then(async res => { this.content = res - if(this.content.uploadUrl==null && this.content.uploadUrl==''){ + if(this.content.uploadUrl==null || this.content.uploadUrl==''){ const localFilePath = this.content.localUrl; try { diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/ZhyDocmubanController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/ZhyDocmubanController.java new file mode 100644 index 0000000..66f7766 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/ZhyDocmubanController.java @@ -0,0 +1,121 @@ +package com.ruoyi.web.controller.system; + +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import javax.servlet.http.HttpServletResponse; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.system.domain.ZhyDocmuban; +import com.ruoyi.system.service.IZhyDocmubanService; +import com.ruoyi.common.utils.poi.ExcelUtil; +import com.ruoyi.common.core.page.TableDataInfo; + +/** + * 图谱模板Controller + * + * @author ruoyi + * @date 2025-09-09 + */ +@RestController +@RequestMapping("/system/docmuban") +public class ZhyDocmubanController extends BaseController +{ + @Autowired + private IZhyDocmubanService zhyDocmubanService; + + /** + * 查询图谱模板列表 + */ + + @GetMapping("/list") + public Map> list(ZhyDocmuban zhyDocmuban) { + List list = zhyDocmubanService.selectZhyDocmubanList(zhyDocmuban); + + // 按 type 分组,返回 Map> + return list.stream() + .collect(Collectors.groupingBy(ZhyDocmuban::getType)); + } + /** + * 导出图谱模板列表 + */ + @PreAuthorize("@ss.hasPermi('system:docmuban:export')") + @Log(title = "图谱模板", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ZhyDocmuban zhyDocmuban) + { + List list = zhyDocmubanService.selectZhyDocmubanList(zhyDocmuban); + ExcelUtil util = new ExcelUtil(ZhyDocmuban.class); + util.exportExcel(response, list, "图谱模板数据"); + } + + /** + * 获取图谱模板详细信息 + */ + @PreAuthorize("@ss.hasPermi('system:docmuban:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(zhyDocmubanService.selectZhyDocmubanById(id)); + } + + /** + * 新增图谱模板 + */ + @PreAuthorize("@ss.hasPermi('system:docmuban:add')") + @Log(title = "图谱模板", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody ZhyDocmuban zhyDocmuban) + { + return toAjax(zhyDocmubanService.insertZhyDocmuban(zhyDocmuban)); + } + + //新增测试 + + @PostMapping("/addList") + public AjaxResult addList(@RequestBody String[] list) + { + for(int a=0;a selectZhyDocmubanList(ZhyDocmuban zhyDocmuban); + + /** + * 新增图谱模板 + * + * @param zhyDocmuban 图谱模板 + * @return 结果 + */ + public int insertZhyDocmuban(ZhyDocmuban zhyDocmuban); + + /** + * 修改图谱模板 + * + * @param zhyDocmuban 图谱模板 + * @return 结果 + */ + public int updateZhyDocmuban(ZhyDocmuban zhyDocmuban); + + /** + * 删除图谱模板 + * + * @param id 图谱模板主键 + * @return 结果 + */ + public int deleteZhyDocmubanById(Long id); + + /** + * 批量删除图谱模板 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteZhyDocmubanByIds(Long[] ids); +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/IZhyDocmubanService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/IZhyDocmubanService.java new file mode 100644 index 0000000..5507593 --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/IZhyDocmubanService.java @@ -0,0 +1,61 @@ +package com.ruoyi.system.service; + +import java.util.List; +import com.ruoyi.system.domain.ZhyDocmuban; + +/** + * 图谱模板Service接口 + * + * @author ruoyi + * @date 2025-09-09 + */ +public interface IZhyDocmubanService +{ + /** + * 查询图谱模板 + * + * @param id 图谱模板主键 + * @return 图谱模板 + */ + public ZhyDocmuban selectZhyDocmubanById(Long id); + + /** + * 查询图谱模板列表 + * + * @param zhyDocmuban 图谱模板 + * @return 图谱模板集合 + */ + public List selectZhyDocmubanList(ZhyDocmuban zhyDocmuban); + + /** + * 新增图谱模板 + * + * @param zhyDocmuban 图谱模板 + * @return 结果 + */ + public int insertZhyDocmuban(ZhyDocmuban zhyDocmuban); + + /** + * 修改图谱模板 + * + * @param zhyDocmuban 图谱模板 + * @return 结果 + */ + public int updateZhyDocmuban(ZhyDocmuban zhyDocmuban); + + /** + * 批量删除图谱模板 + * + * @param ids 需要删除的图谱模板主键集合 + * @return 结果 + */ + public int deleteZhyDocmubanByIds(Long[] ids); + + /** + * 删除图谱模板信息 + * + * @param id 图谱模板主键 + * @return 结果 + */ + public int deleteZhyDocmubanById(Long id); +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/ZhyDocmubanServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/ZhyDocmubanServiceImpl.java new file mode 100644 index 0000000..b1729cf --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/ZhyDocmubanServiceImpl.java @@ -0,0 +1,93 @@ +package com.ruoyi.system.service.impl; + +import java.util.List; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.ruoyi.system.mapper.ZhyDocmubanMapper; +import com.ruoyi.system.domain.ZhyDocmuban; +import com.ruoyi.system.service.IZhyDocmubanService; + +/** + * 图谱模板Service业务层处理 + * + * @author ruoyi + * @date 2025-09-09 + */ +@Service +public class ZhyDocmubanServiceImpl implements IZhyDocmubanService +{ + @Autowired + private ZhyDocmubanMapper zhyDocmubanMapper; + + /** + * 查询图谱模板 + * + * @param id 图谱模板主键 + * @return 图谱模板 + */ + @Override + public ZhyDocmuban selectZhyDocmubanById(Long id) + { + return zhyDocmubanMapper.selectZhyDocmubanById(id); + } + + /** + * 查询图谱模板列表 + * + * @param zhyDocmuban 图谱模板 + * @return 图谱模板 + */ + @Override + public List selectZhyDocmubanList(ZhyDocmuban zhyDocmuban) + { + return zhyDocmubanMapper.selectZhyDocmubanList(zhyDocmuban); + } + + /** + * 新增图谱模板 + * + * @param zhyDocmuban 图谱模板 + * @return 结果 + */ + @Override + public int insertZhyDocmuban(ZhyDocmuban zhyDocmuban) + { + return zhyDocmubanMapper.insertZhyDocmuban(zhyDocmuban); + } + + /** + * 修改图谱模板 + * + * @param zhyDocmuban 图谱模板 + * @return 结果 + */ + @Override + public int updateZhyDocmuban(ZhyDocmuban zhyDocmuban) + { + return zhyDocmubanMapper.updateZhyDocmuban(zhyDocmuban); + } + + /** + * 批量删除图谱模板 + * + * @param ids 需要删除的图谱模板主键 + * @return 结果 + */ + @Override + public int deleteZhyDocmubanByIds(Long[] ids) + { + return zhyDocmubanMapper.deleteZhyDocmubanByIds(ids); + } + + /** + * 删除图谱模板信息 + * + * @param id 图谱模板主键 + * @return 结果 + */ + @Override + public int deleteZhyDocmubanById(Long id) + { + return zhyDocmubanMapper.deleteZhyDocmubanById(id); + } +} diff --git a/ruoyi-system/src/main/resources/mapper/system/ZhyDocmubanMapper.xml b/ruoyi-system/src/main/resources/mapper/system/ZhyDocmubanMapper.xml new file mode 100644 index 0000000..b4c8fa8 --- /dev/null +++ b/ruoyi-system/src/main/resources/mapper/system/ZhyDocmubanMapper.xml @@ -0,0 +1,76 @@ + + + + + + + + + + + + + + + select id, text, type, groupId, parentId, relation from zhy_docmuban + + + + + + + + insert into zhy_docmuban + + text, + type, + groupId, + parentId, + relation, + + + #{text}, + #{type}, + #{groupId}, + #{parentId}, + #{relation}, + + + + + update zhy_docmuban + + text = #{text}, + type = #{type}, + groupId = #{groupId}, + parentId = #{parentId}, + relation = #{relation}, + + where id = #{id} + + + + delete from zhy_docmuban where id = #{id} + + + + delete from zhy_docmuban where id in + + #{id} + + + \ No newline at end of file diff --git a/ruoyi-ui/src/api/system/docmuban.js b/ruoyi-ui/src/api/system/docmuban.js new file mode 100644 index 0000000..55d0ca6 --- /dev/null +++ b/ruoyi-ui/src/api/system/docmuban.js @@ -0,0 +1,54 @@ +import request from '@/utils/request' + +// 查询图谱模板列表 +export function listDocmuban(query) { + return request({ + url: '/system/docmuban/list', + method: 'get', + params: query + }) +} + +// 查询图谱模板详细 +export function getDocmuban(id) { + return request({ + url: '/system/docmuban/' + id, + method: 'get' + }) +} + +// 新增图谱模板 +export function addDocmuban(data) { + return request({ + url: '/system/docmuban', + method: 'post', + data: data + }) +} + + +export function addList(data) { + return request({ + url: '/system/docmuban/addList', + method: 'post', + data: data + }) +} + + +// 修改图谱模板 +export function updateDocmuban(data) { + return request({ + url: '/system/docmuban', + method: 'put', + data: data + }) +} + +// 删除图谱模板 +export function delDocmuban(id) { + return request({ + url: '/system/docmuban/' + id, + method: 'delete' + }) +} diff --git a/ruoyi-ui/src/views/system/docmuban/index.vue b/ruoyi-ui/src/views/system/docmuban/index.vue new file mode 100644 index 0000000..feb7a40 --- /dev/null +++ b/ruoyi-ui/src/views/system/docmuban/index.vue @@ -0,0 +1,552 @@ + + +