From 4c453de7d2445ef8666966dc0974ab5c9096f8e3 Mon Sep 17 00:00:00 2001
From: yz <3614508250@qq.com>
Date: Thu, 4 Jul 2024 09:01:35 +0800
Subject: [PATCH] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E9=87=8D=E5=BA=86=E4=BA=8C?=
 =?UTF-8?q?=E5=B8=88=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../src/main/resources/application-druid.yml  | 141 +++++++++++++++---
 .../src/main/resources/application.yml        |  26 ++--
 .../controller/DocInfoController.java         |  30 +++-
 .../business/service/DocInfoService.java      |   4 +
 .../ElasticsearchMonitorProperties.java       |   2 +-
 .../biemo/elasticsearch/util/EsService.java   |   4 +
 .../src/main/resources/hanlp.properties       |  49 ++++++
 .../ruoyi/system/mapper/SysDeptMapper.java    |   6 +-
 .../service/impl/SysUserServiceImpl.java      |  19 ++-
 .../resources/mapper/system/SysDeptMapper.xml |   3 +
 10 files changed, 237 insertions(+), 47 deletions(-)
 create mode 100644 ruoyi-biemo/src/main/resources/hanlp.properties

diff --git a/ruoyi-admin/src/main/resources/application-druid.yml b/ruoyi-admin/src/main/resources/application-druid.yml
index 541794b..55f1f5a 100644
--- a/ruoyi-admin/src/main/resources/application-druid.yml
+++ b/ruoyi-admin/src/main/resources/application-druid.yml
@@ -1,21 +1,122 @@
+### 数据源配置
+#spring:
+#    data:
+#        mongodb:
+#            database: makesoft
+##            host: 39.108.144.227
+##            port: 1471
+#            host: 120.78.220.29
+#            port: 27017
+#            username: makesoft
+#            password: makesoft
+##            host: 118.31.7.2
+##            port: 27017
+##            username: root
+##            password: root
+#            #elasticsearch:
+#            #rest:
+#            #uris: http://39.108.144.227:9200
+#
+#    datasource:
+#        type: com.alibaba.druid.pool.DruidDataSource
+#        driverClassName: com.mysql.cj.jdbc.Driver
+#        druid:
+#            # 主库数据源
+#            master:
+#                url: jdbc:mysql://120.78.220.29:3306/makesoft?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+#                username: root
+#                password: Biemo123
+##                url: jdbc:mysql://39.108.144.227:1637/makesoft?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+##                username: root
+##                password: Biemo123
+##                url: jdbc:mysql://118.31.7.2:3306/makesoft?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+##                username: root
+##                password: sztzjy2017
+#            # 从库数据源
+#            slave:
+#                # 从数据源开关/默认关闭
+#                enabled: false
+#                url:
+#                username:
+#                password:
+#            # 初始连接数
+#            initialSize: 5
+#            # 最小连接池数量
+#            minIdle: 10
+#            # 最大连接池数量
+#            maxActive: 20
+#            # 配置获取连接等待超时的时间
+#            maxWait: 120000
+#            # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
+#            timeBetweenEvictionRunsMillis: 120000
+#            # 配置一个连接在池中最小生存的时间,单位是毫秒
+#            minEvictableIdleTimeMillis: 600000
+#            # 配置一个连接在池中最大生存的时间,单位是毫秒
+#            maxEvictableIdleTimeMillis: 1800000
+#            # 配置检测连接是否有效
+#            validationQuery: SELECT 1 FROM DUAL
+#            testWhileIdle: true
+#            testOnBorrow: false
+#            testOnReturn: false
+#            webStatFilter:
+#                enabled: true
+#            statViewServlet:
+#                enabled: true
+#                # 设置白名单,不填则允许所有访问
+#                allow:
+#                url-pattern: /druid/*
+#                # 控制台管理用户名和密码
+#                login-username: ruoyi
+#                login-password: 123456
+#            filter:
+#                stat:
+#                    enabled: true
+#                    # 慢SQL记录
+#                    log-slow-sql: true
+#                    slow-sql-millis: 1000
+#                    merge-sql: true
+#                wall:
+#                    config:
+#                        multi-statement-allow: true
+#
+#elasticsearch:
+#    schema: http
+#    address: 120.78.220.29:9200
+##    address: 39.108.144.227:3135
+##    address: 118.31.7.2:9200
+#    connectTimeout: 10000
+#    socketTimeout: 10000
+#    connectionRequestTimeout: 10000
+#    maxConnectNum: 100
+#    maxConnectPerRoute: 100
+##    username: elastic
+##    password: es@test001
+#
+#sso:
+#    apiUrl: http://test.vsp.cqooc.com/open/api/v2/oauth/token?appId={APPID}&signature={SIGNATURE}&ticket={TICKET}
+#    password: admin123
+#    secretKey: 4ce36bf549d64d44b6cbc48e926abb05
+#    appId: cb00a3e26b963b25e28cae6e046f1190
+#report:
+#    uploadUrl: http://test.vsp.cqooc.com/open/api/v2/upload/data
+#    refreshUrl: http://test.vsp.cqooc.com/open/api/v2/oauth/refresh?token=TOKEN&appid=APPID&signature=SIGNATURE
+#    validateUrl: http://vsp.cqooc.com/open/api/v2/oauth/validate?username=USERNAME&password=PASSWORD&nonce=NONCE&cnonce=CNONCE&appid=APPID&signature=SIGNATURE
+#    uploadAttachmentUrl: http://test.vsp.cqooc.com/open/api/v2/upload/attachment?access_token=ACCESS_TOKEN&appid=APPID&originId=ORIGINID&filename=FILENAME&title=TITLE&remarks=REMARKS
+#    getReportListUrl: http://test.vsp.cqooc.com/open/api/v2/query/data?appId=APPID&accessToken=ACCESS_TOKEN&signature=SIGNATURE
+
+
+##################重庆二师配置
+# 项目相关配置
 # 数据源配置
 spring:
     data:
         mongodb:
             database: makesoft
-#            host: 39.108.144.227
-#            port: 1471
-            host: 120.78.220.29
+            host: 10.3.116.99
             port: 27017
             username: makesoft
             password: makesoft
-#            host: 118.31.7.2
-#            port: 27017
-#            username: root
-#            password: root
-            #elasticsearch:
-            #rest:
-            #uris: http://39.108.144.227:9200
+
 
     datasource:
         type: com.alibaba.druid.pool.DruidDataSource
@@ -23,15 +124,9 @@ spring:
         druid:
             # 主库数据源
             master:
-#                url: jdbc:mysql://120.78.220.29:3306/makesoft?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
-#                username: root
-#                password: Biemo123
-                url: jdbc:mysql://39.108.144.227:1637/makesoft?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+                url: jdbc:mysql://10.3.116.99:3306/makesoft?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
                 username: root
                 password: Biemo123
-#                url: jdbc:mysql://118.31.7.2:3306/makesoft?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
-#                username: root
-#                password: sztzjy2017
             # 从库数据源
             slave:
                 # 从数据源开关/默认关闭
@@ -40,11 +135,11 @@ spring:
                 username:
                 password:
             # 初始连接数
-            initialSize: 5
+            initialSize: 10
             # 最小连接池数量
             minIdle: 10
             # 最大连接池数量
-            maxActive: 20
+            maxActive: 100
             # 配置获取连接等待超时的时间
             maxWait: 120000
             # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
@@ -81,16 +176,14 @@ spring:
 
 elasticsearch:
     schema: http
-    address: 120.78.220.29:9200
-#    address: 39.108.144.227:3135
-#    address: 118.31.7.2:9200
+    address: 10.3.116.99:9200
     connectTimeout: 10000
     socketTimeout: 10000
     connectionRequestTimeout: 10000
     maxConnectNum: 100
     maxConnectPerRoute: 100
-#    username: elastic
-#    password: es@test001
+    username: elastic
+    password: es@test001
 
 sso:
     apiUrl: http://test.vsp.cqooc.com/open/api/v2/oauth/token?appId={APPID}&signature={SIGNATURE}&ticket={TICKET}
diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml
index e80942f..60ad34f 100644
--- a/ruoyi-admin/src/main/resources/application.yml
+++ b/ruoyi-admin/src/main/resources/application.yml
@@ -18,7 +18,7 @@ ruoyi:
 # 开发环境配置
 server:
   # 服务器的HTTP端口,默认为8080
-  port: 7777
+  port: 8888
   servlet:
     # 应用的访问路径
     context-path: /
@@ -62,17 +62,11 @@ spring:
   # redis 配置
   redis:
     # 地址
-#    host: 39.108.144.227
-#    host: 39.108.144.227
-    host: localhost
-    # 端口,默认为6379
-#    port: 1135
+#    host: 120.78.220.29
+#    port: 6379
+    host: 10.3.116.99
     port: 6379
-    # 数据库索引
-#    database: 0
-    # 密码
-#    password: 123@Biemo.com
-#    password: ''
+
     # 连接超时时间
     timeout: 10s
     lettuce:
@@ -126,13 +120,17 @@ xss:
   # 匹配链接
   urlPatterns: /system/*,/monitor/*,/tool/*
 
-## 文件存储
+
+
+
+# 文件存储
 #file:
 #  type: local
-#  path: /usr/local/tianzeProject/foreignExchange/uploadFile
+#  path: D:/home/planting_inspect/file
 
 
-# 文件存储
+#
+## 文件存储
 file:
   type: local
   path: /usr/local/textjar/upload/uploadReport
\ No newline at end of file
diff --git a/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/controller/DocInfoController.java b/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/controller/DocInfoController.java
index 392bf56..74c49c6 100644
--- a/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/controller/DocInfoController.java
+++ b/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/controller/DocInfoController.java
@@ -9,14 +9,12 @@ import com.hankcs.hanlp.corpus.document.sentence.word.Word;
 import com.hankcs.hanlp.dictionary.CustomDictionary;
 import com.hankcs.hanlp.seg.Segment;
 import com.hankcs.hanlp.seg.common.Term;
-import com.ruoyi.biemo.business.domain.Category;
-import com.ruoyi.biemo.business.domain.DocInfo;
-import com.ruoyi.biemo.business.domain.EmotionResult;
-import com.ruoyi.biemo.business.domain.WordCloudItem;
+import com.ruoyi.biemo.business.domain.*;
 import com.ruoyi.biemo.business.service.CategoryService;
 import com.ruoyi.biemo.business.service.DocInfoService;
 import com.ruoyi.biemo.core.page.Page;
 import com.ruoyi.biemo.core.page.PageFactory;
+import com.ruoyi.biemo.mongodb.utils.MongoHelper;
 import com.ruoyi.biemo.nlp.DependencyParserUtils;
 import com.ruoyi.biemo.nlp.TextClassificationUtils;
 import com.ruoyi.biemo.utils.MyObjects;
@@ -34,6 +32,7 @@ import org.springframework.data.mongodb.core.query.Update;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletResponse;
+import javax.swing.plaf.synth.SynthOptionPaneUI;
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -56,6 +55,27 @@ public class DocInfoController extends BaseController {
     private DocInfoService docInfoService;
     @Autowired
     private CategoryService categoryService;
+    @Autowired
+    private MongoHelper mongoHelper;
+
+    @GetMapping("/test")
+    public void test(){
+        List<Report> all2 = mongoHelper.findAll(Report.class);
+        System.out.println("ZZZ1:"+all2.size());
+        System.out.println("ZZZ11:"+all2.get(0).getId());
+        List<Category> all1 = mongoHelper.findAll(Category.class);
+        System.out.println("ZZZ2:"+all1.size());
+        System.out.println("ZZZ22:"+all1.get(0).getId());
+        List<DocInfo> all = mongoHelper.findAll(DocInfo.class);
+        System.out.println("ZZZ3:"+all.size());
+        System.out.println("ZZZ33:"+all.get(0).getId());
+        DocInfo byId1 = mongoTemplate.findById("648c3996656fae4c70ccde97", DocInfo.class);
+        System.out.println("BBBDDD:"+byId1);
+        System.out.println("BBBDDD:"+byId1.getId());
+        DocInfo byId = mongoHelper.findById("648c3996656fae4c70ccde97", DocInfo.class);
+        System.out.println("bbb:"+byId);
+        System.out.println("bbb:"+byId.getId());
+    }
 
     /**
      * 查询文章管理列表
@@ -65,6 +85,8 @@ public class DocInfoController extends BaseController {
     public Page<DocInfo> list(DocInfo docInfo)
     {
         Page<DocInfo> page =  docInfoService.selectDocInfoPage(docInfo,PageFactory.defaultPage());
+        System.out.println(page.getRows().get(0));
+        List<DocInfo> rows = page.getRows();
         page.getRows().forEach(doc->{
             Category category = new Category();
             category = categoryService.selectCategoryById(doc.getCateId());
diff --git a/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/service/DocInfoService.java b/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/service/DocInfoService.java
index 04d531c..c561f95 100644
--- a/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/service/DocInfoService.java
+++ b/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/service/DocInfoService.java
@@ -58,7 +58,11 @@ public class DocInfoService extends EsService<DocInfo> {
     @Override
     protected DocInfo loadData(SearchSourceBuilder context, SearchHit hit) {
         String id = hit.getId();
+        System.out.println("id:"+id);
+        System.out.println("TTTT:"+id+"TTTT");
         if (Objects.isNull(id) || StringUtil.isEmpty(id)) return null;
+        DocInfo byId = mongoHelper.findById(id, DocInfo.class);
+        System.out.println("mongo:"+byId.getId());
         return mongoHelper.findById(id, DocInfo.class);
     }
 
diff --git a/ruoyi-biemo/src/main/java/com/ruoyi/biemo/elasticsearch/entity/ElasticsearchMonitorProperties.java b/ruoyi-biemo/src/main/java/com/ruoyi/biemo/elasticsearch/entity/ElasticsearchMonitorProperties.java
index 0364779..25fed81 100644
--- a/ruoyi-biemo/src/main/java/com/ruoyi/biemo/elasticsearch/entity/ElasticsearchMonitorProperties.java
+++ b/ruoyi-biemo/src/main/java/com/ruoyi/biemo/elasticsearch/entity/ElasticsearchMonitorProperties.java
@@ -55,7 +55,7 @@ public class ElasticsearchMonitorProperties {
 //    public String getUserName() {
 //        return userName;
 //    }
-//
+
 //    public void setUserName(String userName) {
 //        this.userName = userName;
 //    }
diff --git a/ruoyi-biemo/src/main/java/com/ruoyi/biemo/elasticsearch/util/EsService.java b/ruoyi-biemo/src/main/java/com/ruoyi/biemo/elasticsearch/util/EsService.java
index b0318fe..171ebf3 100644
--- a/ruoyi-biemo/src/main/java/com/ruoyi/biemo/elasticsearch/util/EsService.java
+++ b/ruoyi-biemo/src/main/java/com/ruoyi/biemo/elasticsearch/util/EsService.java
@@ -375,6 +375,7 @@ public abstract class EsService<T> {
         try {
             List<SearchHit> content = new ArrayList<>();
             Long total = search(content,builder);
+            System.out.println("*****:"+content.get(0).getId());
             List<T> res = new ArrayList<>();
             if(searchFrom){
                 res = sequenceLoadData(content);
@@ -438,6 +439,9 @@ public abstract class EsService<T> {
             }else{
                 searchResponse = client.search(searchRequest, RequestOptions.DEFAULT);
                 SearchHits hits = searchResponse.getHits();
+                System.out.println(index);
+                SearchHit[] hits1 = hits.getHits();
+                System.out.println(hits1[0].getId());
                 total  = hits.getTotalHits().value;
                 // 不分页情况下 总条数超过10000
                 if(total>MAX_RESULT_WINDOW&&flag){
diff --git a/ruoyi-biemo/src/main/resources/hanlp.properties b/ruoyi-biemo/src/main/resources/hanlp.properties
new file mode 100644
index 0000000..79877b6
--- /dev/null
+++ b/ruoyi-biemo/src/main/resources/hanlp.properties
@@ -0,0 +1,49 @@
+# Root path of data
+root=/usr/local/textjar/analysis-hanlp/
+#root=D:/tianze/文本大数据/analysis-hanlp/
+
+
+# Core dictionary path
+CoreDictionaryPath=data/dictionary/CoreNatureDictionary.txt
+
+# BiGram dictionary path
+BiGramDictionaryPath=data/dictionary/CoreNatureDictionary.ngram.txt
+
+# Core stop word dictionary path
+CoreStopWordDictionaryPath=data/dictionary/stopwords.txt
+
+# Core synonym dictionary path
+CoreSynonymDictionaryDictionaryPath=data/dictionary/synonym/CoreSynonym.txt
+
+# Person name dictionary path
+PersonDictionaryPath=data/dictionary/person/nr.txt
+
+# Person name dictionary tr path
+PersonDictionaryTrPath=data/dictionary/person/nr.tr.txt
+
+# Tc dictionary root path
+tcDictionaryRoot=data/dictionary/tc
+
+# Custom dictionary path
+CustomDictionaryPath=data/dictionary/custom/CustomDictionary.txt; ModernChineseSupplementaryWord.txt; ChinesePlaceName.txt ns; PersonalName.txt; OrganizationName.txt; ShanghaiPlaceName.txt ns;data/dictionary/person/nrf.txt nrf;
+
+# HMM segment model path
+#HMMSegmentModelPath=data/model/segment/HMMSegmentModel.bin
+
+# True of false show term nature
+#ShowTermNature=true
+
+# IO Adapter
+##IOAdapter=com.hankcs.hanlp.corpus.io.FileIOAdapter
+
+#感知机词法分析器
+PerceptronCWSModelPath=data/model/perceptron/pku199801/cws.bin
+PerceptronPOSModelPath=data/model/perceptron/pku199801/pos.bin
+PerceptronNERModelPath=data/model/perceptron/pku199801/ner.bin
+
+#CRF词法分析器
+CRFCWSModelPath=data/model/crf/pku199801/cws.txt.bin
+CRFPOSModelPath=data/model/crf/pku199801/pos.txt.bin
+CRFNERModelPath=data/model/crf/pku199801/ner.txt.bin
+
+#更多配置项请参考 https://github.com/hankcs/HanLP/blob/master/src/main/java/com/hankcs/hanlp/HanLP.java#L59 自行添加
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDeptMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDeptMapper.java
index 9ddd2f1..67e5efe 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDeptMapper.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDeptMapper.java
@@ -3,7 +3,9 @@ package com.ruoyi.system.mapper;
 import java.util.List;
 
 import org.apache.ibatis.annotations.Mapper;
-import org.apache.ibatis.annotations.Param;
+
+import cn.hutool.db.meta.JdbcType;
+import org.apache.ibatis.annotations.*;
 import com.ruoyi.common.core.domain.entity.SysDept;
 
 /**
@@ -118,4 +120,6 @@ public interface SysDeptMapper
      * @return 结果
      */
     public int deleteDeptById(Long deptId);
+
+    SysDept selectDeptByDeptName(@Param("stuClass") String stuClass);
 }
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
index 29b489e..42e753d 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
@@ -2,6 +2,7 @@ package com.ruoyi.system.service.impl;
 
 import com.ruoyi.common.annotation.DataScope;
 import com.ruoyi.common.constant.UserConstants;
+import com.ruoyi.common.core.domain.entity.SysDept;
 import com.ruoyi.common.core.domain.entity.SysRole;
 import com.ruoyi.common.core.domain.entity.SysUser;
 import com.ruoyi.common.exception.ServiceException;
@@ -66,6 +67,9 @@ public class SysUserServiceImpl implements ISysUserService
     @Autowired
     SysRoleDeptMapper roleDeptMapper;
 
+    @Autowired
+    SysDeptMapper deptMapper;
+
     /**
      * 根据条件分页查询用户列表
      *
@@ -258,7 +262,10 @@ public class SysUserServiceImpl implements ISysUserService
     public int insertUser(SysUser user) {
         // 新增用户信息
         String deptName = roleDeptMapper.selectNameById(user.getDeptId());
-        user.setStuClass(deptName);
+        if("".equals(deptName) || deptName==null){
+        }else {
+            user.setStuClass(deptName);
+        }
         int rows = userMapper.insertUser(user);
         // 新增用户岗位关联
         insertUserPost(user);
@@ -510,22 +517,28 @@ public class SysUserServiceImpl implements ISysUserService
             {
                 // 验证是否存在这个用户
                 SysUser u = userMapper.selectUserByUserName(user.getUserName());
-                if (StringUtils.isNull(u))
+                // 验证班级是否存在
+                SysDept dept=deptMapper.selectDeptByDeptName(user.getStuClass());
+                if (StringUtils.isNull(u) && StringUtils.isNotNull(dept))
                 {
                     BeanValidators.validateWithException(validator, user);
                     user.setPassword(SecurityUtils.encryptPassword(password));
                     user.setCreateBy(operName);
+                    user.setDeptId(dept.getDeptId());
                     this.insertUser(user);
                     successNum++;
                     successMsg.append("<br/>" + successNum + "、账号 " + user.getUserName() + " 导入成功");
                 }
-                else if (isUpdateSupport)
+                else if (isUpdateSupport && StringUtils.isNotNull(dept))
                 {
                     BeanValidators.validateWithException(validator, user);
                     user.setUpdateBy(operName);
                     this.updateUser(user);
                     successNum++;
                     successMsg.append("<br/>" + successNum + "、账号 " + user.getUserName() + " 更新成功");
+                }else if( StringUtils.isNull(dept)){
+                    failureNum++;
+                    failureMsg.append("<br/>" + failureNum + "、班级不存在");
                 }
                 else
                 {
diff --git a/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml
index b01bb32..d9297cb 100644
--- a/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml
@@ -79,6 +79,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 	<select id="selectNormalChildrenDeptById" parameterType="Long" resultType="int">
 		select count(*) from sys_dept where status = 0 and del_flag = '0' and find_in_set(#{deptId}, ancestors)
 	</select>
+	<select id="selectDeptByDeptName" parameterType="String" resultMap="SysDeptResult">
+		select * from sys_dept where dept_name = #{stuClass}
+	</select>
 	
 	<select id="checkDeptNameUnique" resultMap="SysDeptResult">
 	    <include refid="selectDeptVo"/>