Dubbo-RPC接口
AuthService
概述
AuthService
是一个针对表【auth】的数据库操作Service接口,提供了对权限数据的增、删、改、查等操作。
接口定义
package cn.katool.security.service;
import cn.katool.security.core.model.dto.auth.AuthAddRequest;
import cn.katool.security.core.model.dto.auth.AuthUpdateRequest;
import cn.katool.security.core.model.vo.AuthVO;
import java.util.List;
/**
* 针对表【auth】的数据库操作Service
* @createDate 2023-05-27 11:29:05
*/
public interface AuthService {
/**
* 插入权限数据
* @param addRequest 权限新增请求
* @return 插入成功返回 true,否则返回 false
*/
Boolean insert(AuthAddRequest addRequest);
/**
* 更新权限数据
* @param authUpdateRequest 权限更新请求
* @return 更新成功返回 true,否则返回 false
*/
Boolean change(AuthUpdateRequest authUpdateRequest);
/**
* 开启指定权限
* @param method 请求方法
* @param uri 请求路径
* @param route 路由
* @return 开启成功返回 true,否则返回 false
*/
Boolean open(String method, String uri, String route);
/**
* 开启指定权限
* @param id 权限ID
* @return 开启成功返回 true,否则返回 false
*/
Boolean open(String id);
/**
* 判断指定权限是否开启
* @param method 请求方法
* @param uri 请求路径
* @param route 路由
* @return 开启返回 true,否则返回 false
*/
Boolean isOpen(String method, String uri, String route);
/**
* 重新加载权限数据
* @return 重新加载成功返回 true,否则返回 false
*/
Boolean reload();
/**
* 开启多个权限
* @param ids 权限ID列表
* @return 开启成功返回 true,否则返回 false
*/
Boolean open(List<String> ids);
/**
* 关闭多个权限
* @param ids 权限ID列表
* @return 关闭成功返回 true,否则返回 false
*/
Boolean close(List<String> ids);
/**
* 关闭指定权限
* @param id 权限ID
* @return 关闭成功返回 true,否则返回 false
*/
Boolean close(String id);
/**
* 关闭指定权限
* @param method 请求方法
* @param uri 请求路径
* @param route 路由
* @return 关闭成功返回 true,否则返回 false
*/
Boolean close(String method, String uri, String route);
/**
* 根据请求信息获取权限详情
* @param method 请求方法
* @param requestURI 请求路径
* @param contextPath 上下文路径
* @return 权限详情
*/
AuthVO getOne(String method, String requestURI, String contextPath);
/**
* 获取所有已开启的权限列表
* @return 已开启的权限列表
*/
List<AuthVO> getListByIsOpen();
/**
* 保存或更新权限数据
* @param one 权限详情
* @return 保存或更新成功返回 true,否则返回 false
*/
Boolean saveOrUpdate(AuthVO one);
}
方法说明
insert(AuthAddRequest addRequest)
插入权限数据。
change(AuthUpdateRequest authUpdateRequest)
更新权限数据。
open(String method, String uri, String route)
开启指定权限。
open(String id)
开启指定权限。
isOpen(String method, String uri, String route)
判断指定权限是否开启。
reload()
重新加载权限数据。
open(List<String> ids)
开启多个权限。
close(List<String> ids)
关闭多个权限。
close(String id)
关闭指定权限。
close(String method, String uri, String route)
关闭指定权限。
getOne(String method, String requestURI, String contextPath)
根据请求信息获取权限详情。
getListByIsOpen()
获取所有已开启的权限列表。
saveOrUpdate(AuthVO one)
保存或更新权限数据。
使用示例
// 示例:在服务中使用AuthService接口
@DubboReference(check = false)
private AuthService authService;
// 插入权限数据
Boolean insertResult = authService.insert(authAddRequest);
// 更新权限数据
Boolean changeResult = authService.change(authUpdateRequest);
// 开启指定权限
Boolean openResult = authService.open("GET", "/api/resource", "/route");
// 判断指定权限是否开启
Boolean isOpenResult = authService.isOpen("GET", "/api/resource", "/route");
// 重新加载权限数据
Boolean reloadResult = authService.reload();
// 开启多个权限
Boolean openMultipleResult = authService.open(List.of("id1", "id2", "id3"));
// 关闭多个权限
Boolean closeMultipleResult = authService.close(List.of("id1", "id2", "id3"));
// 关闭指定权限
Boolean closeResult = authService.close("id");
// 获取权限详情
AuthVO authDetail = authService.getOne("GET", "/api/resource", "/route");
// 获取所有已开启的权限列表
List<AuthVO> openAuthList = authService.getListByIsOpen();
// 保存或更新权限数据
Boolean saveOrUpdateResult = authService.saveOrUpdate(authVO);
以上示例展示了如何在服务中使用 AuthService
接口的各个方法进行权限数据的增、删、改、查等操作。用户可以根据实际需求调用相应的方法。