From d52ece745ebe19f97d24d807d64e9a7a601b77ce Mon Sep 17 00:00:00 2001
From: KonBAI <1527468660@qq.com>
Date: 星期六, 22 一月 2022 15:00:58 +0800
Subject: [PATCH] !132 优化查询是否存在的方法,替换魔法值为已定义的常量 * fix 替换查询所有子部门数中魔法值为已定义的常量 * fix 1.修改查询是否存在的方法改为baseMapper.exists()方法查询。 2.将部分魔法值改为已定义的常量

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java     |   15 +++----
 ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDeptService.java             |    2 
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysPostServiceImpl.java     |   14 +++----
 ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDictDataMapper.java            |    3 +
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictTypeServiceImpl.java |   13 +++---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysMenuServiceImpl.java     |    7 +--
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java     |   14 +++----
 7 files changed, 31 insertions(+), 37 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDictDataMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDictDataMapper.java
index 9b00744..0d506bc 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDictDataMapper.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDictDataMapper.java
@@ -1,6 +1,7 @@
 package com.ruoyi.system.mapper;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.ruoyi.common.constant.UserConstants;
 import com.ruoyi.common.core.domain.entity.SysDictData;
 import com.ruoyi.common.core.mapper.BaseMapperPlus;
 
@@ -16,7 +17,7 @@
     default List<SysDictData> selectDictDataByType(String dictType) {
         return selectList(
             new LambdaQueryWrapper<SysDictData>()
-                .eq(SysDictData::getStatus, "0")
+                .eq(SysDictData::getStatus, UserConstants.DICT_NORMAL)
                 .eq(SysDictData::getDictType, dictType)
                 .orderByAsc(SysDictData::getDictSort));
     }
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDeptService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDeptService.java
index 70fda9a..8508d4f 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDeptService.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDeptService.java
@@ -44,7 +44,7 @@
     SysDept selectDeptById(Long deptId);
 
     /**
-     * 鏍规嵁ID鏌ヨ鎵�鏈夊瓙閮ㄩ棬锛堟甯哥姸鎬侊級
+     * 鏍规嵁ID鏌ヨ鎵�鏈夊瓙閮ㄩ棬鏁帮紙姝e父鐘舵�侊級
      *
      * @param deptId 閮ㄩ棬ID
      * @return 瀛愰儴闂ㄦ暟
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java
index 362e5ef..0dd441b 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java
@@ -92,7 +92,7 @@
     }
 
     /**
-     * 鏍规嵁ID鏌ヨ鎵�鏈夊瓙閮ㄩ棬锛堟甯哥姸鎬侊級
+     * 鏍规嵁ID鏌ヨ鎵�鏈夊瓙閮ㄩ棬鏁帮紙姝e父鐘舵�侊級
      *
      * @param deptId 閮ㄩ棬ID
      * @return 瀛愰儴闂ㄦ暟
@@ -100,7 +100,7 @@
     @Override
     public long selectNormalChildrenDeptById(Long deptId) {
         return baseMapper.selectCount(new LambdaQueryWrapper<SysDept>()
-            .eq(SysDept::getStatus, 0)
+            .eq(SysDept::getStatus, UserConstants.DEPT_NORMAL)
             .apply("find_in_set({0}, ancestors)", deptId));
     }
 
@@ -136,12 +136,11 @@
      */
     @Override
     public String checkDeptNameUnique(SysDept dept) {
-        Long deptId = ObjectUtil.isNull(dept.getDeptId()) ? -1L : dept.getDeptId();
-        boolean count = baseMapper.exists(new LambdaQueryWrapper<SysDept>()
+        boolean exist = baseMapper.exists(new LambdaQueryWrapper<SysDept>()
             .eq(SysDept::getDeptName, dept.getDeptName())
             .eq(SysDept::getParentId, dept.getParentId())
-            .ne(SysDept::getDeptId, deptId));
-        if (count) {
+            .ne(ObjectUtil.isNotNull(dept.getDeptId()), SysDept::getDeptId, dept.getDeptId()));
+        if (exist) {
             return UserConstants.NOT_UNIQUE;
         }
         return UserConstants.UNIQUE;
@@ -199,7 +198,7 @@
         }
         int result = baseMapper.updateById(dept);
         if (UserConstants.DEPT_NORMAL.equals(dept.getStatus()) && StringUtils.isNotEmpty(dept.getAncestors())
-            && !StringUtils.equals("0", dept.getAncestors())) {
+            && !StringUtils.equals(UserConstants.DEPT_NORMAL, dept.getAncestors())) {
             // 濡傛灉璇ラ儴闂ㄦ槸鍚敤鐘舵�侊紝鍒欏惎鐢ㄨ閮ㄩ棬鐨勬墍鏈変笂绾ч儴闂�
             updateParentDeptStatusNormal(dept);
         }
@@ -215,7 +214,7 @@
         String ancestors = dept.getAncestors();
         Long[] deptIds = Convert.toLongArray(ancestors);
         baseMapper.update(null, new LambdaUpdateWrapper<SysDept>()
-            .set(SysDept::getStatus, "0")
+            .set(SysDept::getStatus, UserConstants.DEPT_NORMAL)
             .in(SysDept::getDeptId, Arrays.asList(deptIds)));
     }
 
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictTypeServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictTypeServiceImpl.java
index 42ef2c9..00a491c 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictTypeServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictTypeServiceImpl.java
@@ -129,8 +129,8 @@
     public void deleteDictTypeByIds(Long[] dictIds) {
         for (Long dictId : dictIds) {
             SysDictType dictType = selectDictTypeById(dictId);
-            if (dictDataMapper.selectCount(new LambdaQueryWrapper<SysDictData>()
-                .eq(SysDictData::getDictType, dictType.getDictType())) > 0) {
+            if (dictDataMapper.exists(new LambdaQueryWrapper<SysDictData>()
+                .eq(SysDictData::getDictType, dictType.getDictType()))) {
                 throw new ServiceException(String.format("%1$s宸插垎閰�,涓嶈兘鍒犻櫎", dictType.getDictName()));
             }
             RedisUtils.deleteObject(getCacheKey(dictType.getDictType()));
@@ -144,7 +144,7 @@
     @Override
     public void loadingDictCache() {
         List<SysDictData> dictDataList = dictDataMapper.selectList(
-            new LambdaQueryWrapper<SysDictData>().eq(SysDictData::getStatus, "0"));
+            new LambdaQueryWrapper<SysDictData>().eq(SysDictData::getStatus, UserConstants.DICT_NORMAL));
         Map<String, List<SysDictData>> dictDataMap = dictDataList.stream().collect(Collectors.groupingBy(SysDictData::getDictType));
         dictDataMap.forEach((k,v) -> {
             String dictKey = getCacheKey(k);
@@ -217,11 +217,10 @@
      */
     @Override
     public String checkDictTypeUnique(SysDictType dict) {
-        Long dictId = ObjectUtil.isNull(dict.getDictId()) ? -1L : dict.getDictId();
-        long count = baseMapper.selectCount(new LambdaQueryWrapper<SysDictType>()
+        boolean exist = baseMapper.exists(new LambdaQueryWrapper<SysDictType>()
             .eq(SysDictType::getDictType, dict.getDictType())
-            .ne(SysDictType::getDictId, dictId));
-        if (count > 0) {
+            .ne(ObjectUtil.isNotNull(dict.getDictId()), SysDictType::getDictId, dict.getDictId()));
+        if (exist) {
             return UserConstants.NOT_UNIQUE;
         }
         return UserConstants.UNIQUE;
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysMenuServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysMenuServiceImpl.java
index 4fe4b5d..431ec95 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysMenuServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysMenuServiceImpl.java
@@ -263,12 +263,11 @@
      */
     @Override
     public String checkMenuNameUnique(SysMenu menu) {
-        Long menuId = ObjectUtil.isNull(menu.getMenuId()) ? -1L : menu.getMenuId();
-        boolean count = baseMapper.exists(new LambdaQueryWrapper<SysMenu>()
+        boolean exist = baseMapper.exists(new LambdaQueryWrapper<SysMenu>()
             .eq(SysMenu::getMenuName, menu.getMenuName())
             .eq(SysMenu::getParentId, menu.getParentId())
-            .ne(SysMenu::getMenuId, menuId));
-        if (count) {
+            .ne(ObjectUtil.isNotNull(menu.getMenuId()), SysMenu::getMenuId, menu.getMenuId()));
+        if (exist) {
             return UserConstants.NOT_UNIQUE;
         }
         return UserConstants.UNIQUE;
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysPostServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysPostServiceImpl.java
index eb08fb1..31071d1 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysPostServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysPostServiceImpl.java
@@ -95,11 +95,10 @@
      */
     @Override
     public String checkPostNameUnique(SysPost post) {
-        Long postId = ObjectUtil.isNull(post.getPostId()) ? -1L : post.getPostId();
-        boolean count = baseMapper.exists(new LambdaQueryWrapper<SysPost>()
+        boolean exist = baseMapper.exists(new LambdaQueryWrapper<SysPost>()
             .eq(SysPost::getPostName, post.getPostName())
-            .ne(SysPost::getPostId, postId));
-        if (count) {
+            .ne(ObjectUtil.isNotNull(post.getPostId()), SysPost::getPostId, post.getPostId()));
+        if (exist) {
             return UserConstants.NOT_UNIQUE;
         }
         return UserConstants.UNIQUE;
@@ -113,11 +112,10 @@
      */
     @Override
     public String checkPostCodeUnique(SysPost post) {
-        Long postId = ObjectUtil.isNull(post.getPostId()) ? -1L : post.getPostId();
-        boolean count = baseMapper.exists(new LambdaQueryWrapper<SysPost>()
+        boolean exist = baseMapper.exists(new LambdaQueryWrapper<SysPost>()
             .eq(SysPost::getPostCode, post.getPostCode())
-            .ne(SysPost::getPostId, postId));
-        if (count) {
+            .ne(ObjectUtil.isNotNull(post.getPostId()), SysPost::getPostId, post.getPostId()));
+        if (exist) {
             return UserConstants.NOT_UNIQUE;
         }
         return UserConstants.UNIQUE;
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java
index 8b61b2d..81b8d66 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java
@@ -136,11 +136,10 @@
      */
     @Override
     public String checkRoleNameUnique(SysRole role) {
-        Long roleId = ObjectUtil.isNull(role.getRoleId()) ? -1L : role.getRoleId();
-        boolean count = baseMapper.exists(new LambdaQueryWrapper<SysRole>()
+        boolean exist = baseMapper.exists(new LambdaQueryWrapper<SysRole>()
             .eq(SysRole::getRoleName, role.getRoleName())
-            .ne(SysRole::getRoleId, roleId));
-        if (count) {
+            .ne(ObjectUtil.isNotNull(role.getRoleId()), SysRole::getRoleId, role.getRoleId()));
+        if (exist) {
             return UserConstants.NOT_UNIQUE;
         }
         return UserConstants.UNIQUE;
@@ -154,11 +153,10 @@
      */
     @Override
     public String checkRoleKeyUnique(SysRole role) {
-        Long roleId = ObjectUtil.isNull(role.getRoleId()) ? -1L : role.getRoleId();
-        boolean count = baseMapper.exists(new LambdaQueryWrapper<SysRole>()
+        boolean exist = baseMapper.exists(new LambdaQueryWrapper<SysRole>()
             .eq(SysRole::getRoleKey, role.getRoleKey())
-            .ne(SysRole::getRoleId, roleId));
-        if (count) {
+            .ne(ObjectUtil.isNotNull(role.getRoleId()), SysRole::getRoleId, role.getRoleId()));
+        if (exist) {
             return UserConstants.NOT_UNIQUE;
         }
         return UserConstants.UNIQUE;

--
Gitblit v1.9.3