From c8bbd9efcb9fd9086803e4c899731b52c020fc7d Mon Sep 17 00:00:00 2001
From: yaowanxin <3588231647@qq.com>
Date: 星期三, 03 九月 2025 11:25:16 +0800
Subject: [PATCH] RPA流程,知识库

---
 src/main/java/com/ruoyi/approve/service/RpaProcessAutomationService.java          |   10 +
 src/main/java/com/ruoyi/approve/service/impl/RpaProcessAutomationServiceImpl.java |   21 +++
 src/main/java/com/ruoyi/approve/mapper/RpaProcessAutomationMapper.java            |   16 ++
 src/main/java/com/ruoyi/approve/pojo/KnowledgeBase.java                           |   78 +++++++++++
 src/main/java/com/ruoyi/approve/service/impl/KnowledgeBaseServiceImpl.java        |   21 +++
 src/main/java/com/ruoyi/approve/service/KnowledgeBaseService.java                 |   10 +
 src/main/java/com/ruoyi/approve/controller/KnowledgeBaseController.java           |   59 ++++++++
 src/main/java/com/ruoyi/approve/mapper/KnowledgeBaseMapper.java                   |   13 +
 src/main/resources/mapper/approve/RpaProcessAutomationMapper.xml                  |   19 ++
 src/main/java/com/ruoyi/approve/pojo/RpaProcessAutomation.java                    |   61 ++++++++
 src/main/java/com/ruoyi/approve/controller/RpaProcessAutomationController.java    |   59 ++++++++
 src/main/resources/mapper/approve/KnowledgeBaseMapper.xml                         |   21 +++
 12 files changed, 388 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/ruoyi/approve/controller/KnowledgeBaseController.java b/src/main/java/com/ruoyi/approve/controller/KnowledgeBaseController.java
new file mode 100644
index 0000000..51141c3
--- /dev/null
+++ b/src/main/java/com/ruoyi/approve/controller/KnowledgeBaseController.java
@@ -0,0 +1,59 @@
+package com.ruoyi.approve.controller;
+
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.approve.mapper.KnowledgeBaseMapper;
+import com.ruoyi.approve.pojo.KnowledgeBase;
+import com.ruoyi.approve.pojo.RpaProcessAutomation;
+import com.ruoyi.approve.service.KnowledgeBaseService;
+import com.ruoyi.framework.web.domain.AjaxResult;
+import lombok.AllArgsConstructor;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+@RestController
+@RequestMapping("/knowledgeBase")
+@AllArgsConstructor
+public class KnowledgeBaseController {
+    @Autowired
+    private KnowledgeBaseService knowledgeBaseService;
+
+    /**銆�
+     * 鑾峰彇鍒楄〃
+     * @return
+     */
+    @GetMapping("/getList")
+    public AjaxResult getList(@RequestParam(defaultValue = "1") long current,
+                              @RequestParam(defaultValue = "10") long size, KnowledgeBase knowledgeBase) {
+        Page page = new Page(current, size);
+        return AjaxResult.success(knowledgeBaseService.listpage(page,knowledgeBase));
+    }
+    /**銆�
+     * 澧炴坊
+     * @return
+     */
+    @PostMapping("/add")
+    public AjaxResult add(@RequestBody KnowledgeBase knowledgeBase){
+        return AjaxResult.success(knowledgeBaseService.save(knowledgeBase));
+    }
+    /**
+     * 鏇存柊
+     * @return
+     */
+    @PostMapping("/update")
+    public AjaxResult update(@RequestBody KnowledgeBase knowledgeBase){
+        return AjaxResult.success(knowledgeBaseService.updateById(knowledgeBase));
+    }
+    /**
+     * 鍒犻櫎
+     * @return
+     */
+    @DeleteMapping("/delete")
+    public AjaxResult delete(@RequestBody List<Long> ids){
+        if(CollectionUtils.isEmpty(ids)) return AjaxResult.error("璇蜂紶鍏ヨ鍒犻櫎鐨処D");
+        return AjaxResult.success(knowledgeBaseService.removeByIds(ids));
+    }
+
+}
diff --git a/src/main/java/com/ruoyi/approve/controller/RpaProcessAutomationController.java b/src/main/java/com/ruoyi/approve/controller/RpaProcessAutomationController.java
new file mode 100644
index 0000000..301ba74
--- /dev/null
+++ b/src/main/java/com/ruoyi/approve/controller/RpaProcessAutomationController.java
@@ -0,0 +1,59 @@
+package com.ruoyi.approve.controller;
+
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.approve.pojo.RpaProcessAutomation;
+import com.ruoyi.approve.service.RpaProcessAutomationService;
+import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.framework.security.LoginUser;
+import com.ruoyi.framework.web.domain.AjaxResult;
+import com.ruoyi.project.system.domain.SysDept;
+import lombok.AllArgsConstructor;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+@RestController
+@RequestMapping("/rpaProcessAutomation")
+@AllArgsConstructor
+public class RpaProcessAutomationController {
+    @Autowired
+    private RpaProcessAutomationService rpaProcessAutomationService;
+    /**銆�
+     * 鑾峰彇鍒楄〃
+     * @return
+     */
+    @GetMapping("/getList")
+    public AjaxResult getList(@RequestParam(defaultValue = "1") long current,
+                              @RequestParam(defaultValue = "100") long size, RpaProcessAutomation rpaProcessAutomation) {
+        Page page = new Page(current, size);
+        return AjaxResult.success(rpaProcessAutomationService.listpage(page,rpaProcessAutomation));
+    }
+    /**銆�
+     * 澧炴坊
+     * @return
+     */
+    @PostMapping("/add")
+    public AjaxResult add(@RequestBody RpaProcessAutomation rpaProcessAutomation){
+        return AjaxResult.success(rpaProcessAutomationService.save(rpaProcessAutomation));
+    }
+    /**
+     * 鏇存柊
+     * @return
+     */
+    @PostMapping("/update")
+    public AjaxResult update(@RequestBody RpaProcessAutomation rpaProcessAutomation){
+        return AjaxResult.success(rpaProcessAutomationService.updateById(rpaProcessAutomation));
+    }
+    /**
+     * 鍒犻櫎
+     * @return
+     */
+    @DeleteMapping("/delete")
+    public AjaxResult delete(@RequestBody List<Long> ids){
+        if(CollectionUtils.isEmpty(ids)) return AjaxResult.error("璇蜂紶鍏ヨ鍒犻櫎鐨処D");
+        return AjaxResult.success(rpaProcessAutomationService.removeByIds(ids));
+    }
+
+}
diff --git a/src/main/java/com/ruoyi/approve/mapper/KnowledgeBaseMapper.java b/src/main/java/com/ruoyi/approve/mapper/KnowledgeBaseMapper.java
new file mode 100644
index 0000000..adae509
--- /dev/null
+++ b/src/main/java/com/ruoyi/approve/mapper/KnowledgeBaseMapper.java
@@ -0,0 +1,13 @@
+package com.ruoyi.approve.mapper;
+
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.approve.pojo.KnowledgeBase;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface KnowledgeBaseMapper extends BaseMapper<KnowledgeBase> {
+    IPage<KnowledgeBase> listpage(Page page, KnowledgeBase knowledgeBase);
+}
diff --git a/src/main/java/com/ruoyi/approve/mapper/RpaProcessAutomationMapper.java b/src/main/java/com/ruoyi/approve/mapper/RpaProcessAutomationMapper.java
new file mode 100644
index 0000000..e5f8769
--- /dev/null
+++ b/src/main/java/com/ruoyi/approve/mapper/RpaProcessAutomationMapper.java
@@ -0,0 +1,16 @@
+package com.ruoyi.approve.mapper;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.approve.pojo.RpaProcessAutomation;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+@Mapper
+public interface RpaProcessAutomationMapper extends BaseMapper<RpaProcessAutomation> {
+
+
+    IPage<RpaProcessAutomation> listpage(Page page,@Param("rpaProcessAutomation")RpaProcessAutomation rpaProcessAutomation);
+}
diff --git a/src/main/java/com/ruoyi/approve/pojo/KnowledgeBase.java b/src/main/java/com/ruoyi/approve/pojo/KnowledgeBase.java
new file mode 100644
index 0000000..6635294
--- /dev/null
+++ b/src/main/java/com/ruoyi/approve/pojo/KnowledgeBase.java
@@ -0,0 +1,78 @@
+package com.ruoyi.approve.pojo;
+
+import com.baomidou.mybatisplus.annotation.*;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+@Data
+@TableName("knowledge_base")
+public class KnowledgeBase implements Serializable {
+    @TableId(type = IdType.AUTO)
+    private Long id;
+    /**
+     * 鐭ヨ瘑鏍囬
+     */
+    private String title;
+    /**
+     * 鐭ヨ瘑绫诲瀷
+     */
+    private String type;
+    /**
+     * 閫傜敤鍦烘櫙
+     */
+    private String scenario;
+    /**
+     * 瑙e喅鏁堢巼
+     */
+    private String efficiency;
+    /**
+     * 闂鎻忚堪
+     */
+    private String problem;
+    /**
+     * 瑙e喅鏂规
+     */
+    private String solution;
+    /**
+     * 鍏抽敭瑕佺偣
+     */
+    private String keyPoints;
+    /**
+     * 鍒涘缓浜�
+     */
+    private String creator;
+    /**
+     * 浣跨敤娆℃暟
+     */
+    private Integer usageCount;
+    /**
+     * 鍒涘缓鏃堕棿
+     */
+    @TableField(fill = FieldFill.INSERT)
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private LocalDateTime createTime;
+    /**
+     * 鏇存柊鏃堕棿
+     */
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private LocalDateTime updateTime;
+
+    /**
+     * 鏇存柊浜�
+     */
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private Integer updateUser;
+
+    /**
+     * 绉熸埛ID
+     */
+    @TableField(fill = FieldFill.INSERT)
+    private Long tenantId;
+}
diff --git a/src/main/java/com/ruoyi/approve/pojo/RpaProcessAutomation.java b/src/main/java/com/ruoyi/approve/pojo/RpaProcessAutomation.java
new file mode 100644
index 0000000..a3ae618
--- /dev/null
+++ b/src/main/java/com/ruoyi/approve/pojo/RpaProcessAutomation.java
@@ -0,0 +1,61 @@
+package com.ruoyi.approve.pojo;
+
+import com.baomidou.mybatisplus.annotation.*;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+@Data
+@TableName("rpa_process_automation")
+public class RpaProcessAutomation implements Serializable {
+    @TableId(type = IdType.AUTO)
+    private Long id;
+    /**
+     * 绋嬪簭鍚�
+     */
+    private String programName;
+    /**
+     * 绋嬪簭鎻忚堪
+     */
+    private String description;
+    /**
+     * 鐘舵��
+     */
+    private String status;
+    /**
+     * 鍒涘缓鏃堕棿
+     */
+    @TableField(fill = FieldFill.INSERT)
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private LocalDateTime createTime;
+
+    /**
+     * 鏇存柊鏃堕棿
+     */
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private LocalDateTime updateTime;
+
+    /**
+     * 鍒涘缓浜�
+     */
+    @TableField(fill = FieldFill.INSERT)
+    private Integer createUser;
+
+    /**
+     * 鏇存柊浜�
+     */
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private Integer updateUser;
+
+    /**
+     * 绉熸埛ID
+     */
+    @TableField(fill = FieldFill.INSERT)
+    private Long tenantId;
+}
diff --git a/src/main/java/com/ruoyi/approve/service/KnowledgeBaseService.java b/src/main/java/com/ruoyi/approve/service/KnowledgeBaseService.java
new file mode 100644
index 0000000..c8a3664
--- /dev/null
+++ b/src/main/java/com/ruoyi/approve/service/KnowledgeBaseService.java
@@ -0,0 +1,10 @@
+package com.ruoyi.approve.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.approve.pojo.KnowledgeBase;
+
+public interface KnowledgeBaseService extends IService<KnowledgeBase> {
+    IPage<KnowledgeBase> listpage(Page page, KnowledgeBase knowledgeBase);
+}
diff --git a/src/main/java/com/ruoyi/approve/service/RpaProcessAutomationService.java b/src/main/java/com/ruoyi/approve/service/RpaProcessAutomationService.java
new file mode 100644
index 0000000..edf0011
--- /dev/null
+++ b/src/main/java/com/ruoyi/approve/service/RpaProcessAutomationService.java
@@ -0,0 +1,10 @@
+package com.ruoyi.approve.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.approve.pojo.RpaProcessAutomation;
+
+public interface RpaProcessAutomationService extends IService<RpaProcessAutomation> {
+    IPage<RpaProcessAutomation> listpage(Page page, RpaProcessAutomation rpaProcessAutomation);
+}
diff --git a/src/main/java/com/ruoyi/approve/service/impl/KnowledgeBaseServiceImpl.java b/src/main/java/com/ruoyi/approve/service/impl/KnowledgeBaseServiceImpl.java
new file mode 100644
index 0000000..57a3fa7
--- /dev/null
+++ b/src/main/java/com/ruoyi/approve/service/impl/KnowledgeBaseServiceImpl.java
@@ -0,0 +1,21 @@
+package com.ruoyi.approve.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.approve.mapper.KnowledgeBaseMapper;
+import com.ruoyi.approve.pojo.KnowledgeBase;
+import com.ruoyi.approve.service.KnowledgeBaseService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+@Service
+public class KnowledgeBaseServiceImpl extends ServiceImpl<KnowledgeBaseMapper, KnowledgeBase> implements KnowledgeBaseService {
+    @Autowired
+    private KnowledgeBaseMapper knowledgeBaseMapper;
+
+    @Override
+    public IPage<KnowledgeBase> listpage(Page page, KnowledgeBase knowledgeBase) {
+        return knowledgeBaseMapper.listpage(page,knowledgeBase);
+    }
+}
diff --git a/src/main/java/com/ruoyi/approve/service/impl/RpaProcessAutomationServiceImpl.java b/src/main/java/com/ruoyi/approve/service/impl/RpaProcessAutomationServiceImpl.java
new file mode 100644
index 0000000..ddb6083
--- /dev/null
+++ b/src/main/java/com/ruoyi/approve/service/impl/RpaProcessAutomationServiceImpl.java
@@ -0,0 +1,21 @@
+package com.ruoyi.approve.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.approve.mapper.RpaProcessAutomationMapper;
+import com.ruoyi.approve.pojo.RpaProcessAutomation;
+import com.ruoyi.approve.service.RpaProcessAutomationService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+@Service
+public class RpaProcessAutomationServiceImpl extends ServiceImpl<RpaProcessAutomationMapper, RpaProcessAutomation> implements RpaProcessAutomationService {
+    @Autowired
+    private RpaProcessAutomationMapper rpaProcessAutomationMapper;
+    @Override
+    public IPage<RpaProcessAutomation> listpage(Page page, RpaProcessAutomation rpaProcessAutomation) {
+        return rpaProcessAutomationMapper.listpage(page,rpaProcessAutomation);
+    }
+}
diff --git a/src/main/resources/mapper/approve/KnowledgeBaseMapper.xml b/src/main/resources/mapper/approve/KnowledgeBaseMapper.xml
new file mode 100644
index 0000000..e4819c2
--- /dev/null
+++ b/src/main/resources/mapper/approve/KnowledgeBaseMapper.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.approve.mapper.KnowledgeBaseMapper">
+
+
+    <select id="listpage" resultType="com.ruoyi.approve.pojo.KnowledgeBase">
+        select * from knowledge_base
+        <where>
+            1=1
+            <if test="knowledgeBase.title != null and knowledgeBase.title != ''">
+                and title like concat('%',#{knowledgeBase.title},'%')
+            </if>
+            <if test="knowledgeBase.type != null and knowledgeBase.type != ''">
+                and type = #{knowledgeBase.type}
+            </if>
+        </where>
+
+    </select>
+</mapper>
\ No newline at end of file
diff --git a/src/main/resources/mapper/approve/RpaProcessAutomationMapper.xml b/src/main/resources/mapper/approve/RpaProcessAutomationMapper.xml
new file mode 100644
index 0000000..4471d61
--- /dev/null
+++ b/src/main/resources/mapper/approve/RpaProcessAutomationMapper.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.approve.mapper.RpaProcessAutomationMapper">
+
+    <select id="listpage" resultType="com.ruoyi.approve.pojo.RpaProcessAutomation">
+        select * from rpa_process_automation
+        <where>
+        1=1
+            <if test="rpaProcessAutomation.programName != null and rpaProcessAutomation.programName != ''">
+                and program_name like concat('%',#{rpaProcessAutomation.programName},'%')
+            </if>
+            <if test="rpaProcessAutomation.status != null">
+                and status = #{rpaProcessAutomation.status}
+            </if>
+        </where>
+    </select>
+</mapper>

--
Gitblit v1.9.3