批量删除角色接口优化:使用 List<Integer> ids 参数
批量删除角色接口优化:使用 List ids 参数
原始接口使用单个 RoleDeletionFlowIn 对象作为参数,仅支持删除单个角色。为了提高效率,我们将接口修改为使用 List
原始代码:
public void delete(RoleDeletionFlowIn flowIn) {
userRoleMapper.delete(new QueryWrapper<UserRole>().eq(UserRole.COL_ROLE_ID, flowIn.getId()));
rolePermissionMapper.delete(new QueryWrapper<RolePermission>().eq(RolePermission.COL_ROLE_ID, flowIn.getId()));
roleMapper.deleteById(flowIn.getId());
}
优化后的代码:
public void delete(List<Integer> ids) {
userRoleMapper.delete(new QueryWrapper<UserRole>().in(UserRole.COL_ROLE_ID, ids));
rolePermissionMapper.delete(new QueryWrapper<RolePermission>().in(RolePermission.COL_ROLE_ID, ids));
roleMapper.deleteBatchIds(ids);
}
优化说明:
- 将参数类型改为 List
ids,方便传递多个角色 ID。 - 使用
in操作符,一次性删除多个角色关联数据。 - 使用
deleteBatchIds方法,批量删除角色数据。
优化后的接口更加高效,可以一次性删除多个角色,减少了网络请求次数,提高了系统性能。
原文地址: https://www.cveoy.top/t/topic/ouE0 著作权归作者所有。请勿转载和采集!