diff --git a/pom.xml b/pom.xml index fd3bf341a..7bdd1674d 100644 --- a/pom.xml +++ b/pom.xml @@ -25,7 +25,7 @@ 2.2.10 1.7 0.9.1 - 3.4.3 + 3.4.3.3 3.9.1 5.7.11 3.0.3 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 543d097bd..e9c1f191e 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.conditions.Wrapper; 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 @@ public class ServicePlusImpl, T, V> extends ServiceI return entityClass; } - protected Class mapperClass = currentMapperClass(); + protected Class mapperClass = currentMapperClass(); protected Class voClass = currentVoClass(); @@ -59,22 +58,17 @@ public class ServicePlusImpl, T, V> extends ServiceI } @Override - protected Class currentMapperClass() { - return (Class) this.getResolvableType().as(ServicePlusImpl.class).getGeneric(0).getType(); + protected Class currentMapperClass() { + return (Class) ReflectionKit.getSuperClassGenericType(this.getClass(), ServicePlusImpl.class, 0); } @Override protected Class currentModelClass() { - return (Class) this.getResolvableType().as(ServicePlusImpl.class).getGeneric(1).getType(); + return (Class) ReflectionKit.getSuperClassGenericType(this.getClass(), ServicePlusImpl.class, 1); } protected Class currentVoClass() { - return (Class) this.getResolvableType().as(ServicePlusImpl.class).getGeneric(2).getType(); - } - - @Override - protected ResolvableType getResolvableType() { - return ResolvableType.forClass(ClassUtils.getUserClass(getClass())); + return (Class) 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 2db996191..ef117a11c 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 @@ public class TestBatchController extends BaseController { // @DataSource(DataSourceType.SLAVE) public AjaxResult add() { List 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 719fd2ba5..dc2ff86af 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.handlers.MetaObjectHandler; 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 class MybatisPlusConfig { public ISqlInjector sqlInjector() { return new DefaultSqlInjector() { @Override - public List getMethodList(Class mapperClass) { - List methodList = super.getMethodList(mapperClass); + public List getMethodList(Class mapperClass, TableInfo tableInfo) { + List 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 5fd239e98..38bccc9c5 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 @@ public interface ISysDeptService extends IService { * @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 f6659c054..3f9db85e8 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 @@ public interface ISysPostService extends IService { * @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 2cde2ae47..84e647891 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 @@ public interface ISysRoleService extends IService { * @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 9ab848aea..cbafcf459 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 @@ public class SysDeptServiceImpl extends ServicePlusImpl() .eq(SysDept::getStatus, 0) .apply("find_in_set({0}, ancestors)", deptId)); @@ -134,7 +134,7 @@ public class SysDeptServiceImpl extends ServicePlusImpl() + long result = count(new LambdaQueryWrapper() .eq(SysDept::getParentId, deptId) .last("limit 1")); return result > 0; @@ -148,7 +148,7 @@ public class SysDeptServiceImpl extends ServicePlusImpl() + long result = userMapper.selectCount(new LambdaQueryWrapper() .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 a46d62c21..a1a9422a2 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 @@ public class SysMenuServiceImpl extends ServicePlusImpl().eq(SysMenu::getParentId,menuId)); + long result = count(new LambdaQueryWrapper().eq(SysMenu::getParentId,menuId)); return result > 0; } @@ -238,7 +238,7 @@ public class SysMenuServiceImpl extends ServicePlusImpl().eq(SysRoleMenu::getMenuId,menuId)); + long result = roleMenuMapper.selectCount(new LambdaQueryWrapper().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 30d407540..3a3cd0f8f 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 @@ public class SysPostServiceImpl extends ServicePlusImpl().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 ae4bc89e8..eff0022ea 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 @@ public class SysRoleServiceImpl extends ServicePlusImpl().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 7f1fc0d07..7e3182171 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 @@ public class SysUserServiceImpl extends ServicePlusImpl().eq(SysUser::getUserName, userName).last("limit 1")); + long count = count(new LambdaQueryWrapper().eq(SysUser::getUserName, userName).last("limit 1")); if (count > 0) { return UserConstants.NOT_UNIQUE; }