From 392b42c4891cf2e6beda57ab32c51598f290f4b7 Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期五, 14 三月 2025 20:56:27 +0800
Subject: [PATCH] bug修改

---
 ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/SensitiveWordsServiceImpl.java |   45 +++++++++++++++++++++++++++++++++------------
 1 files changed, 33 insertions(+), 12 deletions(-)

diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/SensitiveWordsServiceImpl.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/SensitiveWordsServiceImpl.java
index 422346b..148aa4d 100644
--- a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/SensitiveWordsServiceImpl.java
+++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/SensitiveWordsServiceImpl.java
@@ -1,5 +1,6 @@
 package com.ruoyi.article.service.impl;
 
+import com.alibaba.excel.EasyExcel;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -8,17 +9,21 @@
 import com.ruoyi.article.controller.management.dto.MgtSensitiveWordsQuery;
 import com.ruoyi.article.controller.management.vo.MgtSensitiveWordsVO;
 import com.ruoyi.article.domain.SensitiveWords;
+import com.ruoyi.article.listener.SensitiveWordsListener;
 import com.ruoyi.article.mapper.SensitiveWordsMapper;
 import com.ruoyi.article.service.ISensitiveWordsService;
 import com.ruoyi.common.core.utils.StringUtils;
 import com.ruoyi.common.core.utils.page.BeanUtils;
+import com.ruoyi.common.core.utils.page.CollUtils;
 import com.ruoyi.common.core.utils.page.PageDTO;
 import com.ruoyi.system.api.domain.dto.judgeSensitiveWordsDTO;
 import com.ruoyi.system.api.domain.vo.judgeSensitiveWordsVO;
+import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.regex.Pattern;
 import org.springframework.stereotype.Service;
+import org.springframework.web.multipart.MultipartFile;
 
 /**
  * <p>
@@ -40,24 +45,28 @@
 
     @Override
     public judgeSensitiveWordsVO judgeSensitiveWordsList(judgeSensitiveWordsDTO SensitiveWordsDTO) {
+        judgeSensitiveWordsVO SensitiveWordsVO = new judgeSensitiveWordsVO();
         LambdaQueryWrapper<SensitiveWords> wrapper= Wrappers.lambdaQuery();
         wrapper.eq(SensitiveWords::getDelFlag,0);
         List<SensitiveWords> list = this.list(wrapper);
-        List<String> sensitiveWords = new ArrayList<>();
-        for (SensitiveWords l:list){
-            sensitiveWords.add(l.getWord());
-        }
-        Pattern pattern = Pattern.compile(String.join("|", sensitiveWords), Pattern.CASE_INSENSITIVE);
-        boolean b = pattern.matcher(SensitiveWordsDTO.getText()).find();
-        judgeSensitiveWordsVO SensitiveWordsVO=new judgeSensitiveWordsVO();
-        if (b){
-            SensitiveWordsVO.setType(1);
-        }else{
+        if (CollUtils.isNotEmpty(list)) {
+            List<String> sensitiveWords = new ArrayList<>();
+            for (SensitiveWords l : list) {
+                sensitiveWords.add(l.getWord());
+            }
+            Pattern pattern = Pattern.compile(String.join("|", sensitiveWords),
+                    Pattern.CASE_INSENSITIVE);
+            boolean b = pattern.matcher(SensitiveWordsDTO.getText()).find();
+            if (b) {
+                SensitiveWordsVO.setType(1);
+            } else {
+                SensitiveWordsVO.setType(2);
+            }
+        } else {
             SensitiveWordsVO.setType(2);
         }
-         return SensitiveWordsVO;
+        return SensitiveWordsVO;
     }
-
     /**
      * 获取敏感词列表的分页数据
      *
@@ -88,4 +97,16 @@
     public void saveSensitiveWords(MgtSensitiveWordsDTO dto) {
         this.save(BeanUtils.copyBean(dto, SensitiveWords.class));
     }
+
+    /**
+     * 敏感词导入
+     *
+     * @param file 导入文件
+     * @return
+     */
+    @Override
+    public void importSensitiveWords(MultipartFile file) throws IOException {
+        EasyExcel.read(file.getInputStream(), MgtSensitiveWordsDTO.class,
+                new SensitiveWordsListener(this)).sheet().doRead();
+    }
 }

--
Gitblit v1.7.1