From d350c048b8cef4aff88391ad35f9db3ac3de26b8 Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期四, 07 五月 2020 17:44:08 +0800
Subject: [PATCH] Merge branch 'master' of https://gitee.com/y_project/RuoYi-Vue

---
 ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysDeptServiceImpl.java |   11 +++++++++++
 ruoyi/src/main/resources/mybatis/system/SysDeptMapper.xml                         |    4 ++++
 ruoyi/src/main/java/com/ruoyi/project/system/mapper/SysDeptMapper.java            |    8 ++++++++
 ruoyi-ui/src/store/modules/tagsView.js                                            |    1 +
 ruoyi/src/main/java/com/ruoyi/common/constant/UserConstants.java                  |    7 +++++--
 ruoyi/src/main/java/com/ruoyi/project/system/controller/SysDeptController.java    |    6 ++++++
 ruoyi/src/main/java/com/ruoyi/project/system/service/ISysDeptService.java         |    8 ++++++++
 7 files changed, 43 insertions(+), 2 deletions(-)

diff --git a/ruoyi-ui/src/store/modules/tagsView.js b/ruoyi-ui/src/store/modules/tagsView.js
index 46099c6..2e30d15 100644
--- a/ruoyi-ui/src/store/modules/tagsView.js
+++ b/ruoyi-ui/src/store/modules/tagsView.js
@@ -38,6 +38,7 @@
     })
   },
   DEL_OTHERS_CACHED_VIEWS: (state, view) => {
+    const index = state.cachedViews.indexOf(view.name)
     if (index > -1) {
       state.cachedViews = state.cachedViews.slice(index, index + 1)
     } else {
diff --git a/ruoyi/src/main/java/com/ruoyi/common/constant/UserConstants.java b/ruoyi/src/main/java/com/ruoyi/common/constant/UserConstants.java
index 4448fa4..b1f25ec 100644
--- a/ruoyi/src/main/java/com/ruoyi/common/constant/UserConstants.java
+++ b/ruoyi/src/main/java/com/ruoyi/common/constant/UserConstants.java
@@ -19,13 +19,16 @@
     public static final String EXCEPTION = "1";
 
     /** 鐢ㄦ埛灏佺鐘舵�� */
-    public static final String USER_BLOCKED = "1";
+    public static final String USER_DISABLE = "1";
 
     /** 瑙掕壊灏佺鐘舵�� */
-    public static final String ROLE_BLOCKED = "1";
+    public static final String ROLE_DISABLE = "1";
 
     /** 閮ㄩ棬姝e父鐘舵�� */
     public static final String DEPT_NORMAL = "0";
+    
+    /** 閮ㄩ棬鍋滅敤鐘舵�� */
+    public static final String DEPT_DISABLE = "1";
 
     /** 瀛楀吀姝e父鐘舵�� */
     public static final String DICT_NORMAL = "0";
diff --git a/ruoyi/src/main/java/com/ruoyi/project/system/controller/SysDeptController.java b/ruoyi/src/main/java/com/ruoyi/project/system/controller/SysDeptController.java
index e2f14b7..3c2cb0b 100644
--- a/ruoyi/src/main/java/com/ruoyi/project/system/controller/SysDeptController.java
+++ b/ruoyi/src/main/java/com/ruoyi/project/system/controller/SysDeptController.java
@@ -14,6 +14,7 @@
 import org.springframework.web.bind.annotation.RestController;
 import com.ruoyi.common.constant.UserConstants;
 import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.framework.aspectj.lang.annotation.Log;
 import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
 import com.ruoyi.framework.web.controller.BaseController;
@@ -109,6 +110,11 @@
         {
             return AjaxResult.error("淇敼閮ㄩ棬'" + dept.getDeptName() + "'澶辫触锛屼笂绾ч儴闂ㄤ笉鑳芥槸鑷繁");
         }
+        else if (StringUtils.equals(UserConstants.DEPT_DISABLE, dept.getStatus())
+                && deptService.selectNormalChildrenDeptById(dept.getDeptId()) > 0)
+        {
+            return AjaxResult.error("璇ラ儴闂ㄥ寘鍚湭鍋滅敤鐨勫瓙閮ㄩ棬锛�");
+        }
         dept.setUpdateBy(SecurityUtils.getUsername());
         return toAjax(deptService.updateDept(dept));
     }
diff --git a/ruoyi/src/main/java/com/ruoyi/project/system/mapper/SysDeptMapper.java b/ruoyi/src/main/java/com/ruoyi/project/system/mapper/SysDeptMapper.java
index 1df5f2e..b1445ec 100644
--- a/ruoyi/src/main/java/com/ruoyi/project/system/mapper/SysDeptMapper.java
+++ b/ruoyi/src/main/java/com/ruoyi/project/system/mapper/SysDeptMapper.java
@@ -44,6 +44,14 @@
     public List<SysDept> selectChildrenDeptById(Long deptId);
 
     /**
+     * 鏍规嵁ID鏌ヨ鎵�鏈夊瓙閮ㄩ棬锛堟甯哥姸鎬侊級
+     * 
+     * @param deptId 閮ㄩ棬ID
+     * @return 瀛愰儴闂ㄦ暟
+     */
+    public int selectNormalChildrenDeptById(Long deptId);
+
+    /**
      * 鏄惁瀛樺湪瀛愯妭鐐�
      * 
      * @param deptId 閮ㄩ棬ID
diff --git a/ruoyi/src/main/java/com/ruoyi/project/system/service/ISysDeptService.java b/ruoyi/src/main/java/com/ruoyi/project/system/service/ISysDeptService.java
index c7a7c78..a45c94c 100644
--- a/ruoyi/src/main/java/com/ruoyi/project/system/service/ISysDeptService.java
+++ b/ruoyi/src/main/java/com/ruoyi/project/system/service/ISysDeptService.java
@@ -52,6 +52,14 @@
     public SysDept selectDeptById(Long deptId);
 
     /**
+     * 鏍规嵁ID鏌ヨ鎵�鏈夊瓙閮ㄩ棬锛堟甯哥姸鎬侊級
+     * 
+     * @param deptId 閮ㄩ棬ID
+     * @return 瀛愰儴闂ㄦ暟
+     */
+    public int selectNormalChildrenDeptById(Long deptId);
+
+    /**
      * 鏄惁瀛樺湪閮ㄩ棬瀛愯妭鐐�
      * 
      * @param deptId 閮ㄩ棬ID
diff --git a/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysDeptServiceImpl.java b/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysDeptServiceImpl.java
index 9257495..82e2e74 100644
--- a/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysDeptServiceImpl.java
+++ b/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysDeptServiceImpl.java
@@ -109,6 +109,17 @@
     }
 
     /**
+     * 鏍规嵁ID鏌ヨ鎵�鏈夊瓙閮ㄩ棬锛堟甯哥姸鎬侊級
+     * 
+     * @param deptId 閮ㄩ棬ID
+     * @return 瀛愰儴闂ㄦ暟
+     */
+    public int selectNormalChildrenDeptById(Long deptId)
+    {
+        return deptMapper.selectNormalChildrenDeptById(deptId);
+    }
+
+    /**
      * 鏄惁瀛樺湪瀛愯妭鐐�
      * 
      * @param deptId 閮ㄩ棬ID
diff --git a/ruoyi/src/main/resources/mybatis/system/SysDeptMapper.xml b/ruoyi/src/main/resources/mybatis/system/SysDeptMapper.xml
index 39c9b23..b89370e 100644
--- a/ruoyi/src/main/resources/mybatis/system/SysDeptMapper.xml
+++ b/ruoyi/src/main/resources/mybatis/system/SysDeptMapper.xml
@@ -71,6 +71,10 @@
 		select * from sys_dept where find_in_set(#{deptId}, ancestors)
 	</select>
 	
+	<select id="selectNormalChildrenDeptById" parameterType="Long" resultType="java.lang.Integer">
+		select count(*) from sys_dept where status = 0 and del_flag = '0' and find_in_set(#{deptId}, ancestors)
+	</select>
+	
 	<select id="checkDeptNameUnique" resultMap="SysDeptResult">
 	    <include refid="selectDeptVo"/>
 		where dept_name=#{deptName} and parent_id = #{parentId}

--
Gitblit v1.9.3