From e7f83fb6952e2c9a579491afbd24e83e7261682b Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期一, 06 九月 2021 10:19:58 +0800
Subject: [PATCH] update mybatis-plus 3.4.3 => 3.4.3.3 适配升级 (包含不兼容升级) 请详细阅读 mybatis-plus 官方升级文档

---
 ruoyi-framework/src/main/java/com/ruoyi/framework/config/MybatisPlusConfig.java        |    5 +++--
 ruoyi-system/src/main/java/com/ruoyi/system/service/ISysRoleService.java               |    2 +-
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java       |    2 +-
 ruoyi-common/src/main/java/com/ruoyi/common/core/mybatisplus/core/ServicePlusImpl.java |   18 ++++++------------
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java       |    6 +++---
 ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDeptService.java               |    2 +-
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysPostServiceImpl.java       |    2 +-
 ruoyi-demo/src/main/java/com/ruoyi/demo/controller/TestBatchController.java            |    2 +-
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysMenuServiceImpl.java       |    4 ++--
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java       |    2 +-
 pom.xml                                                                                |    2 +-
 ruoyi-system/src/main/java/com/ruoyi/system/service/ISysPostService.java               |    2 +-
 12 files changed, 22 insertions(+), 27 deletions(-)

diff --git a/pom.xml b/pom.xml
index fd3bf34..7bdd167 100644
--- a/pom.xml
+++ b/pom.xml
@@ -25,7 +25,7 @@
         <easyexcel.version>2.2.10</easyexcel.version>
         <velocity.version>1.7</velocity.version>
         <jwt.version>0.9.1</jwt.version>
-        <mybatis-plus.version>3.4.3</mybatis-plus.version>
+        <mybatis-plus.version>3.4.3.3</mybatis-plus.version>
         <p6spy.version>3.9.1</p6spy.version>
         <hutool.version>5.7.11</hutool.version>
         <feign.version>3.0.3</feign.version>
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/mybatisplus/core/ServicePlusImpl.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/mybatisplus/core/ServicePlusImpl.java
index 543d097..e9c1f19 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/core/mybatisplus/core/ServicePlusImpl.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/mybatisplus/core/ServicePlusImpl.java
@@ -7,14 +7,13 @@
 import com.baomidou.mybatisplus.core.metadata.TableInfo;
 import com.baomidou.mybatisplus.core.metadata.TableInfoHelper;
 import com.baomidou.mybatisplus.core.toolkit.Assert;
-import com.baomidou.mybatisplus.core.toolkit.ClassUtils;
+import com.baomidou.mybatisplus.core.toolkit.ReflectionKit;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.common.core.page.PagePlus;
 import com.ruoyi.common.utils.BeanCopyUtils;
 import com.ruoyi.common.utils.reflect.ReflectUtils;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.core.ResolvableType;
 
 import java.io.Serializable;
 import java.util.ArrayList;
@@ -50,7 +49,7 @@
 		return entityClass;
 	}
 
-	protected Class<T> mapperClass = currentMapperClass();
+	protected Class<M> mapperClass = currentMapperClass();
 
 	protected Class<V> voClass = currentVoClass();
 
@@ -59,22 +58,17 @@
 	}
 
 	@Override
-	protected Class<T> currentMapperClass() {
-		return (Class<T>) this.getResolvableType().as(ServicePlusImpl.class).getGeneric(0).getType();
+	protected Class<M> currentMapperClass() {
+		return (Class<M>) ReflectionKit.getSuperClassGenericType(this.getClass(), ServicePlusImpl.class, 0);
 	}
 
 	@Override
 	protected Class<T> currentModelClass() {
-		return (Class<T>) this.getResolvableType().as(ServicePlusImpl.class).getGeneric(1).getType();
+		return (Class<T>) ReflectionKit.getSuperClassGenericType(this.getClass(), ServicePlusImpl.class, 1);
 	}
 
 	protected Class<V> currentVoClass() {
-		return (Class<V>) this.getResolvableType().as(ServicePlusImpl.class).getGeneric(2).getType();
-	}
-
-	@Override
-	protected ResolvableType getResolvableType() {
-		return ResolvableType.forClass(ClassUtils.getUserClass(getClass()));
+		return (Class<V>) ReflectionKit.getSuperClassGenericType(this.getClass(), ServicePlusImpl.class, 2);
 	}
 
 	/**
diff --git a/ruoyi-demo/src/main/java/com/ruoyi/demo/controller/TestBatchController.java b/ruoyi-demo/src/main/java/com/ruoyi/demo/controller/TestBatchController.java
index 2db9961..ef117a1 100644
--- a/ruoyi-demo/src/main/java/com/ruoyi/demo/controller/TestBatchController.java
+++ b/ruoyi-demo/src/main/java/com/ruoyi/demo/controller/TestBatchController.java
@@ -39,7 +39,7 @@
 //	@DataSource(DataSourceType.SLAVE)
     public AjaxResult<Void> add() {
 		List<TestDemo> list = new ArrayList<>();
-		for (int i = 0; i < 10; i++) {
+		for (int i = 0; i < 1000; i++) {
 			list.add(new TestDemo().setOrderNum(-1L).setTestKey("鎵归噺鏂板").setValue("娴嬭瘯鏂板"));
 		}
         return toAjax(iTestDemoService.saveAll(list) ? 1 : 0);
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/MybatisPlusConfig.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/MybatisPlusConfig.java
index 719fd2b..dc2ff86 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/MybatisPlusConfig.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/MybatisPlusConfig.java
@@ -5,6 +5,7 @@
 import com.baomidou.mybatisplus.core.injector.AbstractMethod;
 import com.baomidou.mybatisplus.core.injector.DefaultSqlInjector;
 import com.baomidou.mybatisplus.core.injector.ISqlInjector;
+import com.baomidou.mybatisplus.core.metadata.TableInfo;
 import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
 import com.baomidou.mybatisplus.extension.plugins.inner.OptimisticLockerInnerInterceptor;
 import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
@@ -106,8 +107,8 @@
 	public ISqlInjector sqlInjector() {
 		return new DefaultSqlInjector() {
 			@Override
-			public List<AbstractMethod> getMethodList(Class<?> mapperClass) {
-				List<AbstractMethod> methodList = super.getMethodList(mapperClass);
+			public List<AbstractMethod> getMethodList(Class<?> mapperClass, TableInfo tableInfo) {
+				List<AbstractMethod> methodList = super.getMethodList(mapperClass, tableInfo);
 				methodList.add(new InsertAll());
 				return methodList;
 			}
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 5fd239e..38bccc9 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
@@ -58,7 +58,7 @@
      * @param deptId 閮ㄩ棬ID
      * @return 瀛愰儴闂ㄦ暟
      */
-    public int selectNormalChildrenDeptById(Long deptId);
+    public long selectNormalChildrenDeptById(Long deptId);
 
     /**
      * 鏄惁瀛樺湪閮ㄩ棬瀛愯妭鐐�
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysPostService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysPostService.java
index f6659c0..3f9db85 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysPostService.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysPostService.java
@@ -69,7 +69,7 @@
      * @param postId 宀椾綅ID
      * @return 缁撴灉
      */
-    public int countUserPostById(Long postId);
+    public long countUserPostById(Long postId);
 
     /**
      * 鍒犻櫎宀椾綅淇℃伅
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysRoleService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysRoleService.java
index 2cde2ae..84e6478 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysRoleService.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysRoleService.java
@@ -101,7 +101,7 @@
      * @param roleId 瑙掕壊ID
      * @return 缁撴灉
      */
-    public int countUserRoleByRoleId(Long roleId);
+    public long countUserRoleByRoleId(Long roleId);
 
     /**
      * 鏂板淇濆瓨瑙掕壊淇℃伅
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 9ab848a..cbafcf4 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
@@ -120,7 +120,7 @@
      * @return 瀛愰儴闂ㄦ暟
      */
     @Override
-    public int selectNormalChildrenDeptById(Long deptId) {
+    public long selectNormalChildrenDeptById(Long deptId) {
         return count(new LambdaQueryWrapper<SysDept>()
                 .eq(SysDept::getStatus, 0)
                 .apply("find_in_set({0}, ancestors)", deptId));
@@ -134,7 +134,7 @@
      */
     @Override
     public boolean hasChildByDeptId(Long deptId) {
-        int result = count(new LambdaQueryWrapper<SysDept>()
+        long result = count(new LambdaQueryWrapper<SysDept>()
                 .eq(SysDept::getParentId, deptId)
                 .last("limit 1"));
         return result > 0;
@@ -148,7 +148,7 @@
      */
     @Override
     public boolean checkDeptExistUser(Long deptId) {
-        int result = userMapper.selectCount(new LambdaQueryWrapper<SysUser>()
+        long result = userMapper.selectCount(new LambdaQueryWrapper<SysUser>()
                 .eq(SysUser::getDeptId, deptId));
         return result > 0;
     }
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 a46d62c..a1a9422 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
@@ -226,7 +226,7 @@
      */
     @Override
     public boolean hasChildByMenuId(Long menuId) {
-        int result = count(new LambdaQueryWrapper<SysMenu>().eq(SysMenu::getParentId,menuId));
+        long result = count(new LambdaQueryWrapper<SysMenu>().eq(SysMenu::getParentId,menuId));
         return result > 0;
     }
 
@@ -238,7 +238,7 @@
      */
     @Override
     public boolean checkMenuExistRole(Long menuId) {
-        int result = roleMenuMapper.selectCount(new LambdaQueryWrapper<SysRoleMenu>().eq(SysRoleMenu::getMenuId,menuId));
+        long result = roleMenuMapper.selectCount(new LambdaQueryWrapper<SysRoleMenu>().eq(SysRoleMenu::getMenuId,menuId));
         return result > 0;
     }
 
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 30d4075..3a3cd0f 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
@@ -125,7 +125,7 @@
      * @return 缁撴灉
      */
     @Override
-    public int countUserPostById(Long postId) {
+    public long countUserPostById(Long postId) {
         return userPostMapper.selectCount(new LambdaQueryWrapper<SysUserPost>().eq(SysUserPost::getPostId,postId));
     }
 
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 ae4bc89..eff0022 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
@@ -202,7 +202,7 @@
      * @return 缁撴灉
      */
     @Override
-    public int countUserRoleByRoleId(Long roleId) {
+    public long countUserRoleByRoleId(Long roleId) {
         return userRoleMapper.selectCount(new LambdaQueryWrapper<SysUserRole>().eq(SysUserRole::getRoleId, roleId));
     }
 
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 7f1fc0d..7e31821 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
@@ -162,7 +162,7 @@
      */
     @Override
     public String checkUserNameUnique(String userName) {
-        int count = count(new LambdaQueryWrapper<SysUser>().eq(SysUser::getUserName, userName).last("limit 1"));
+        long count = count(new LambdaQueryWrapper<SysUser>().eq(SysUser::getUserName, userName).last("limit 1"));
         if (count > 0) {
             return UserConstants.NOT_UNIQUE;
         }

--
Gitblit v1.9.3