/* * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: * * Redistributions of source code must retain the above copyright notice, * this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * Neither the name of the dreamlu.net developer nor the names of its * contributors may be used to endorse or promote products derived from * this software without specific prior written permission. * Author: Chill 庄骞 (smallchill@163.com) */ package com.vci.ubcs.system.service; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.IService; import com.vci.ubcs.system.entity.Role; import com.vci.ubcs.system.vo.RoleVO; import org.springblade.core.tool.api.R; import javax.validation.constraints.NotEmpty; import java.util.List; /** * 服务类 * * @author Chill */ public interface IRoleService extends IService { /** * 自定义分页 * * @param page * @param role * @return */ IPage selectRolePage(IPage page, RoleVO role); /** * 树形结构 * * @param tenantId * @return */ List tree(String tenantId); /** * 加载角色列表 * @param tenantId * @return */ List roleList(String tenantId); /** * 权限配置 * * @param roleIds 角色id集合 * @param menuIds 菜单id集合 * @param dataScopeIds 数据权限id集合 * @param apiScopeIds 接口权限id集合 * @return 是否成功 */ boolean grant(@NotEmpty List roleIds, List menuIds, List dataScopeIds, List apiScopeIds); /** * 角色权限配置日志记录 * @param roleRes * @return */ boolean grantLog(String roleRes, boolean isException); /** * 获取角色授权日志的信息 * @param roleId * @return */ String getGrantRoleResString(List roleId); /** * 获取角色ID * * @param tenantId * @param roleNames * @return */ String getRoleIds(String tenantId, String roleNames); /** * 获取角色名 * * @param roleIds * @return */ List getRoleNames(String roleIds); /** * 获取角色名 * * @param roleIds * @return */ List getRoleAliases(String roleIds); /** * 提交 * * @param role * @return */ boolean submit(Role role); /** * 角色信息查询 * * @param roleName * @param parentId * @return */ List search(String roleName, Long parentId); /** * 删除角色 * * @param ids * @return */ boolean removeRole(String ids); }