!44 修改批量接口,改用mybatis原生foreach优化性能
Merge pull request !44 from Yjoioooo/insert-optimization
This commit is contained in:
commit
38c3c878e1
|
@ -30,4 +30,12 @@ public interface SysDeptMapper extends BaseMapperPlus<SysDept> {
|
||||||
*/
|
*/
|
||||||
public List<Integer> selectDeptListByRoleId(@Param("roleId") Long roleId, @Param("deptCheckStrictly") boolean deptCheckStrictly);
|
public List<Integer> selectDeptListByRoleId(@Param("roleId") Long roleId, @Param("deptCheckStrictly") boolean deptCheckStrictly);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改子元素关系
|
||||||
|
*
|
||||||
|
* @param depts 子元素
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int updateDeptChildren(@Param("depts") List<SysDept> depts);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,6 +3,8 @@ package com.ruoyi.system.mapper;
|
||||||
import com.ruoyi.common.core.page.BaseMapperPlus;
|
import com.ruoyi.common.core.page.BaseMapperPlus;
|
||||||
import com.ruoyi.system.domain.SysRoleDept;
|
import com.ruoyi.system.domain.SysRoleDept;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 角色与部门关联表 数据层
|
* 角色与部门关联表 数据层
|
||||||
*
|
*
|
||||||
|
@ -10,4 +12,12 @@ import com.ruoyi.system.domain.SysRoleDept;
|
||||||
*/
|
*/
|
||||||
public interface SysRoleDeptMapper extends BaseMapperPlus<SysRoleDept> {
|
public interface SysRoleDeptMapper extends BaseMapperPlus<SysRoleDept> {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量新增角色部门信息
|
||||||
|
*
|
||||||
|
* @param roleDeptList 角色部门列表
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int batchRoleDept(List<SysRoleDept> roleDeptList);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,6 +3,8 @@ package com.ruoyi.system.mapper;
|
||||||
import com.ruoyi.common.core.page.BaseMapperPlus;
|
import com.ruoyi.common.core.page.BaseMapperPlus;
|
||||||
import com.ruoyi.system.domain.SysRoleMenu;
|
import com.ruoyi.system.domain.SysRoleMenu;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 角色与菜单关联表 数据层
|
* 角色与菜单关联表 数据层
|
||||||
*
|
*
|
||||||
|
@ -10,4 +12,12 @@ import com.ruoyi.system.domain.SysRoleMenu;
|
||||||
*/
|
*/
|
||||||
public interface SysRoleMenuMapper extends BaseMapperPlus<SysRoleMenu> {
|
public interface SysRoleMenuMapper extends BaseMapperPlus<SysRoleMenu> {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量新增角色菜单信息
|
||||||
|
*
|
||||||
|
* @param roleMenuList 角色菜单列表
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int batchRoleMenu(List<SysRoleMenu> roleMenuList);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,6 +3,8 @@ package com.ruoyi.system.mapper;
|
||||||
import com.ruoyi.common.core.page.BaseMapperPlus;
|
import com.ruoyi.common.core.page.BaseMapperPlus;
|
||||||
import com.ruoyi.system.domain.SysUserPost;
|
import com.ruoyi.system.domain.SysUserPost;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 用户与岗位关联表 数据层
|
* 用户与岗位关联表 数据层
|
||||||
*
|
*
|
||||||
|
@ -10,4 +12,12 @@ import com.ruoyi.system.domain.SysUserPost;
|
||||||
*/
|
*/
|
||||||
public interface SysUserPostMapper extends BaseMapperPlus<SysUserPost> {
|
public interface SysUserPostMapper extends BaseMapperPlus<SysUserPost> {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量新增用户岗位信息
|
||||||
|
*
|
||||||
|
* @param userPostList 用户角色列表
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int batchUserPost(List<SysUserPost> userPostList);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,6 +3,8 @@ package com.ruoyi.system.mapper;
|
||||||
import com.ruoyi.common.core.page.BaseMapperPlus;
|
import com.ruoyi.common.core.page.BaseMapperPlus;
|
||||||
import com.ruoyi.system.domain.SysUserRole;
|
import com.ruoyi.system.domain.SysUserRole;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 用户与角色关联表 数据层
|
* 用户与角色关联表 数据层
|
||||||
*
|
*
|
||||||
|
@ -10,4 +12,12 @@ import com.ruoyi.system.domain.SysUserRole;
|
||||||
*/
|
*/
|
||||||
public interface SysUserRoleMapper extends BaseMapperPlus<SysUserRole> {
|
public interface SysUserRoleMapper extends BaseMapperPlus<SysUserRole> {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量新增用户角色信息
|
||||||
|
*
|
||||||
|
* @param userRoleList 用户角色列表
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int batchUserRole(List<SysUserRole> userRoleList);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -244,7 +244,7 @@ public class SysDeptServiceImpl extends ServiceImpl<SysDeptMapper, SysDept> impl
|
||||||
child.setAncestors(child.getAncestors().replaceFirst(oldAncestors, newAncestors));
|
child.setAncestors(child.getAncestors().replaceFirst(oldAncestors, newAncestors));
|
||||||
}
|
}
|
||||||
if (children.size() > 0) {
|
if (children.size() > 0) {
|
||||||
updateBatchById(children);
|
baseMapper.updateDeptChildren(children);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -240,9 +240,7 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
|
||||||
list.add(rm);
|
list.add(rm);
|
||||||
}
|
}
|
||||||
if (list.size() > 0) {
|
if (list.size() > 0) {
|
||||||
for (SysRoleMenu sysRoleMenu : list) {
|
rows = roleMenuMapper.batchRoleMenu(list);
|
||||||
rows += roleMenuMapper.insert(sysRoleMenu);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return rows;
|
return rows;
|
||||||
}
|
}
|
||||||
|
@ -263,9 +261,7 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
|
||||||
list.add(rd);
|
list.add(rd);
|
||||||
}
|
}
|
||||||
if (list.size() > 0) {
|
if (list.size() > 0) {
|
||||||
for (SysRoleDept sysRoleDept : list) {
|
rows = roleDeptMapper.batchRoleDept(list);
|
||||||
rows += roleDeptMapper.insert(sysRoleDept);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return rows;
|
return rows;
|
||||||
}
|
}
|
||||||
|
|
|
@ -311,9 +311,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
|
||||||
list.add(ur);
|
list.add(ur);
|
||||||
}
|
}
|
||||||
if (list.size() > 0) {
|
if (list.size() > 0) {
|
||||||
for (SysUserRole sysUserRole : list) {
|
userRoleMapper.batchUserRole(list);
|
||||||
userRoleMapper.insert(sysUserRole);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -335,9 +333,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
|
||||||
list.add(up);
|
list.add(up);
|
||||||
}
|
}
|
||||||
if (list.size() > 0) {
|
if (list.size() > 0) {
|
||||||
for (SysUserPost sysUserPost : list) {
|
userPostMapper.batchUserPost(list);
|
||||||
userPostMapper.insert(sysUserPost);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -57,4 +57,17 @@
|
||||||
order by d.parent_id, d.order_num
|
order by d.parent_id, d.order_num
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<update id="updateDeptChildren" parameterType="java.util.List">
|
||||||
|
update sys_dept set ancestors =
|
||||||
|
<foreach collection="depts" item="item" index="index"
|
||||||
|
separator=" " open="case dept_id" close="end">
|
||||||
|
when #{item.deptId} then #{item.ancestors}
|
||||||
|
</foreach>
|
||||||
|
where dept_id in
|
||||||
|
<foreach collection="depts" item="item" index="index"
|
||||||
|
separator="," open="(" close=")">
|
||||||
|
#{item.deptId}
|
||||||
|
</foreach>
|
||||||
|
</update>
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
|
@ -9,4 +9,11 @@
|
||||||
<result property="deptId" column="dept_id"/>
|
<result property="deptId" column="dept_id"/>
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
|
<insert id="batchRoleDept">
|
||||||
|
insert into sys_role_dept(role_id, dept_id) values
|
||||||
|
<foreach item="item" index="index" collection="list" separator=",">
|
||||||
|
(#{item.roleId},#{item.deptId})
|
||||||
|
</foreach>
|
||||||
|
</insert>
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
|
@ -9,4 +9,11 @@
|
||||||
<result property="menuId" column="menu_id"/>
|
<result property="menuId" column="menu_id"/>
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
|
<insert id="batchRoleMenu">
|
||||||
|
insert into sys_role_menu(role_id, menu_id) values
|
||||||
|
<foreach item="item" index="index" collection="list" separator=",">
|
||||||
|
(#{item.roleId},#{item.menuId})
|
||||||
|
</foreach>
|
||||||
|
</insert>
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
|
@ -9,4 +9,11 @@
|
||||||
<result property="postId" column="post_id"/>
|
<result property="postId" column="post_id"/>
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
|
<insert id="batchUserPost">
|
||||||
|
insert into sys_user_post(user_id, post_id) values
|
||||||
|
<foreach item="item" index="index" collection="list" separator=",">
|
||||||
|
(#{item.userId},#{item.postId})
|
||||||
|
</foreach>
|
||||||
|
</insert>
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
|
@ -9,4 +9,11 @@
|
||||||
<result property="roleId" column="role_id"/>
|
<result property="roleId" column="role_id"/>
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
|
<insert id="batchUserRole">
|
||||||
|
insert into sys_user_role(user_id, role_id) values
|
||||||
|
<foreach item="item" index="index" collection="list" separator=",">
|
||||||
|
(#{item.userId},#{item.roleId})
|
||||||
|
</foreach>
|
||||||
|
</insert>
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
Loading…
Reference in New Issue