From 1d68d2eec415e5f4ef508033ded1dbead1d300ae Mon Sep 17 00:00:00 2001
From: buhuazhen <hua100783@gmail.com>
Date: 星期四, 09 四月 2026 14:12:39 +0800
Subject: [PATCH] feat(staff): 支持默认密码设置并完善用户信息关联

---
 src/main/java/com/ruoyi/approve/controller/KnowledgeBaseController.java |   39 +++++++++++++++++++++++++++++++++------
 1 files changed, 33 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/ruoyi/approve/controller/KnowledgeBaseController.java b/src/main/java/com/ruoyi/approve/controller/KnowledgeBaseController.java
index 51141c3..b6cfcf8 100644
--- a/src/main/java/com/ruoyi/approve/controller/KnowledgeBaseController.java
+++ b/src/main/java/com/ruoyi/approve/controller/KnowledgeBaseController.java
@@ -1,24 +1,38 @@
 package com.ruoyi.approve.controller;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.approve.mapper.KnowledgeBaseFileMapper;
 import com.ruoyi.approve.mapper.KnowledgeBaseMapper;
 import com.ruoyi.approve.pojo.KnowledgeBase;
+import com.ruoyi.approve.pojo.KnowledgeBaseFile;
 import com.ruoyi.approve.pojo.RpaProcessAutomation;
+import com.ruoyi.approve.service.KnowledgeBaseFileService;
 import com.ruoyi.approve.service.KnowledgeBaseService;
+import com.ruoyi.approve.vo.KnowledgeBaseVo;
+import com.ruoyi.common.utils.poi.ExcelUtil;
 import com.ruoyi.framework.web.domain.AjaxResult;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
 import lombok.AllArgsConstructor;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
 
+import javax.servlet.http.HttpServletResponse;
 import java.util.List;
 
 @RestController
 @RequestMapping("/knowledgeBase")
 @AllArgsConstructor
+@Api(tags = "鐭ヨ瘑搴撶鐞�")
 public class KnowledgeBaseController {
     @Autowired
     private KnowledgeBaseService knowledgeBaseService;
+    @Autowired
+    private KnowledgeBaseFileService knowledgeBaseFileService;
 
     /**銆�
      * 鑾峰彇鍒楄〃
@@ -26,25 +40,29 @@
      */
     @GetMapping("/getList")
     public AjaxResult getList(@RequestParam(defaultValue = "1") long current,
-                              @RequestParam(defaultValue = "10") long size, KnowledgeBase knowledgeBase) {
+                              @RequestParam(defaultValue = "10") long size, KnowledgeBaseVo knowledgeBase) {
         Page page = new Page(current, size);
-        return AjaxResult.success(knowledgeBaseService.listpage(page,knowledgeBase));
+        IPage<KnowledgeBaseVo> listpage = knowledgeBaseService.listpage(page, knowledgeBase);
+        listpage.getRecords().forEach(item -> {
+            item.setFiles(knowledgeBaseFileService.list(new QueryWrapper<KnowledgeBaseFile>().lambda().eq(KnowledgeBaseFile::getKnowledgeBaseId, item.getId())));
+        });
+        return AjaxResult.success(listpage);
     }
     /**銆�
      * 澧炴坊
      * @return
      */
     @PostMapping("/add")
-    public AjaxResult add(@RequestBody KnowledgeBase knowledgeBase){
-        return AjaxResult.success(knowledgeBaseService.save(knowledgeBase));
+    public AjaxResult add(@RequestBody KnowledgeBaseVo knowledgeBase){
+        return AjaxResult.success(knowledgeBaseService.add(knowledgeBase));
     }
     /**
      * 鏇存柊
      * @return
      */
     @PostMapping("/update")
-    public AjaxResult update(@RequestBody KnowledgeBase knowledgeBase){
-        return AjaxResult.success(knowledgeBaseService.updateById(knowledgeBase));
+    public AjaxResult update(@RequestBody KnowledgeBaseVo knowledgeBase){
+        return AjaxResult.success(knowledgeBaseService.updateKnowledgeBase(knowledgeBase));
     }
     /**
      * 鍒犻櫎
@@ -53,7 +71,16 @@
     @DeleteMapping("/delete")
     public AjaxResult delete(@RequestBody List<Long> ids){
         if(CollectionUtils.isEmpty(ids)) return AjaxResult.error("璇蜂紶鍏ヨ鍒犻櫎鐨処D");
+        knowledgeBaseFileService.remove(new QueryWrapper<KnowledgeBaseFile>().lambda().in(KnowledgeBaseFile::getKnowledgeBaseId, ids));
         return AjaxResult.success(knowledgeBaseService.removeByIds(ids));
     }
 
+    @ApiOperation(value = "鐭ヨ瘑搴撶鐞嗗鍑�")
+    @PostMapping("/export")
+    public void export(HttpServletResponse response) {
+        List<KnowledgeBase> accountExpenses = knowledgeBaseService.list();
+        ExcelUtil<KnowledgeBase> util = new ExcelUtil<KnowledgeBase>(KnowledgeBase.class);
+        util.exportExcel(response, accountExpenses, "鐭ヨ瘑搴撶鐞嗗鍑�");
+    }
+
 }

--
Gitblit v1.9.3