⚡ SysRolePermission 、 SysUserRole 添加id字段; 更新sql
This commit is contained in:
@@ -118,20 +118,6 @@ public class SysRoleController {
|
||||
return R.ok(sysRoleService.list(Wrappers.emptyWrapper()));
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新角色权限
|
||||
* @param roleId 角色ID
|
||||
* @param permissionIds 权限ID数组
|
||||
* @return success、false
|
||||
*/
|
||||
@PutMapping("/permission/ids/{roleId}")
|
||||
@ApiOperation(value = "更新角色权限", notes = "更新角色权限")
|
||||
@UpdateOperationLogging(msg = "更新角色权限")
|
||||
@PreAuthorize("@per.hasPermission('sys:sysrole:grant')")
|
||||
public R<Boolean> savePermissionIds(@PathVariable Integer roleId, @RequestBody Integer[] permissionIds) {
|
||||
return R.ok(sysRolePermissionService.saveRolePermissions(roleId, permissionIds));
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新角色权限
|
||||
* @param roleCode 角色Code
|
||||
|
||||
@@ -1,5 +1,8 @@
|
||||
package com.hccake.ballcat.admin.modules.sys.model.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.extension.activerecord.Model;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
@@ -23,11 +26,8 @@ public class SysRolePermission extends Model<SysRolePermission> {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 角色ID
|
||||
*/
|
||||
@ApiModelProperty(value = "角色id")
|
||||
private Integer roleId;
|
||||
@TableId(type = IdType.AUTO)
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 角色 Code
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package com.hccake.ballcat.admin.modules.sys.model.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.extension.activerecord.Model;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
@@ -23,6 +25,9 @@ public class SysUserRole extends Model<SysUserRole> {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId(type = IdType.AUTO)
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 用户ID
|
||||
*/
|
||||
|
||||
@@ -13,14 +13,6 @@ import com.hccake.ballcat.admin.modules.sys.model.entity.SysRolePermission;
|
||||
*/
|
||||
public interface SysRolePermissionService extends IService<SysRolePermission> {
|
||||
|
||||
/**
|
||||
* 更新角色菜单
|
||||
* @param roleId 角色
|
||||
* @param permissionIds 权限ID数组
|
||||
* @return
|
||||
*/
|
||||
Boolean saveRolePermissions(Integer roleId, Integer[] permissionIds);
|
||||
|
||||
/**
|
||||
* 更新角色菜单
|
||||
* @param roleCode 角色
|
||||
|
||||
@@ -23,29 +23,6 @@ import org.springframework.transaction.annotation.Transactional;
|
||||
public class SysRolePermissionServiceImpl extends ServiceImpl<SysRolePermissionMapper, SysRolePermission>
|
||||
implements SysRolePermissionService {
|
||||
|
||||
/**
|
||||
* @param roleId 角色
|
||||
* @param permissionIds 权限ID集合
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean saveRolePermissions(Integer roleId, Integer[] permissionIds) {
|
||||
this.remove(Wrappers.<SysRolePermission>query().lambda().eq(SysRolePermission::getRoleId, roleId));
|
||||
|
||||
if (permissionIds == null || permissionIds.length == 0) {
|
||||
return Boolean.TRUE;
|
||||
}
|
||||
List<SysRolePermission> rolePermissionList = Arrays.stream(permissionIds).map(permissionId -> {
|
||||
SysRolePermission rolePermission = new SysRolePermission();
|
||||
rolePermission.setRoleId(roleId);
|
||||
rolePermission.setPermissionId(permissionId);
|
||||
return rolePermission;
|
||||
}).collect(Collectors.toList());
|
||||
|
||||
return this.saveBatch(rolePermissionList);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param roleCode 角色
|
||||
* @param permissionIds 权限ID集合
|
||||
|
||||
@@ -69,14 +69,19 @@ ALTER TABLE `sys_role`
|
||||
ALTER TABLE `sys_role`
|
||||
DROP INDEX `uk_code_deleted`,
|
||||
ADD UNIQUE INDEX `uk_code_deleted` (`code`, `deleted`) USING BTREE;
|
||||
-- 手动删除 user_id 和 role_id 的索引
|
||||
|
||||
alter table sys_user_role drop primary key ;
|
||||
alter table sys_user_role add column `id` bigint(20) NOT NULL primary key AUTO_INCREMENT FIRST;
|
||||
|
||||
alter table sys_user_role add column `role_code` varchar(64) comment 'role code';
|
||||
alter table sys_user_role add unique (`role_code`,`user_id`);
|
||||
update sys_user_role set `role_code`= (select `code` from sys_role where `id`=`role_id`) where role_code is null;
|
||||
alter table sys_user_role modify column `role_code` varchar(64) not null comment 'role code';
|
||||
alter table sys_user_role drop `role_id`;
|
||||
|
||||
-- 手动删除 permission_id 和 role_id 的索引
|
||||
alter table sys_role_permission drop primary key ;
|
||||
alter table sys_role_permission add column `id` bigint(20) NOT NULL primary key AUTO_INCREMENT FIRST;
|
||||
|
||||
alter table sys_role_permission add column `role_code` varchar(64) comment 'role code';
|
||||
alter table sys_role_permission add unique (`role_code`,`permission_id`);
|
||||
update sys_role_permission set `role_code`= (select `code` from sys_role where `id`=`role_id`) where role_code is null;
|
||||
|
||||
Reference in New Issue
Block a user