package com.vci.frameworkcore.compatibility;
|
|
import com.vci.corba.common.PLException;
|
import com.vci.frameworkcore.pagemodel.SmRoleVO;
|
import com.vci.starter.web.exception.VciBaseException;
|
import com.vci.starter.web.pagemodel.DataGrid;
|
import com.vci.starter.web.pagemodel.PageHelper;
|
import com.vci.starter.web.pagemodel.Tree;
|
import com.vci.starter.web.pagemodel.TreeQueryObject;
|
|
import java.util.Collection;
|
import java.util.List;
|
import java.util.Map;
|
|
/**
|
* 角色的查询服务,兼容来平台,所有的接口都返回新的角色显示对象
|
* @author weidy
|
* @date 2020/3/1
|
*/
|
public interface SmRoleQueryServiceI {
|
|
/**
|
* 根据角色主键获取角色的信息
|
* @param roleOid 角色主键
|
* @return 角色的显示对象,如果角色不存在则返回null,不会抛出异常
|
* @throws VciBaseException 参数为空或者数据库存在问题的时候会抛出异常
|
*/
|
SmRoleVO getRoleByRoleOid(String roleOid) throws VciBaseException;
|
|
/**
|
* 批量获取角色的信息 (根据角色主键)
|
* @param roleOidCollections 角色主键的集合,可以超过1000个
|
* @return 角色的显示对象,如果角色不存在则返回空的列表,不会抛出异常
|
* @throws VciBaseException 参数为空或者数据库存在问题的时候会抛出异常
|
*/
|
List<SmRoleVO> listRoleByRoleOids(Collection<String> roleOidCollections) throws VciBaseException;
|
|
/**
|
* 获取角色的列表,默认会以角色名升序排列,角色的编辑页面列表不要使用这个接口
|
* @param queryMap 查询条件
|
* @param pageHelper 分页和排序的信息,在兼容老平台的时候会自动兼容,如果属性不存在会自动忽略
|
* @return 角色的显示对象列表
|
* @throws VciBaseException 参数为空的时候会抛出异常
|
*/
|
DataGrid<SmRoleVO> gridRoles(Map<String, String> queryMap, PageHelper pageHelper) throws VciBaseException;
|
|
/**
|
* 根据角色主键获取角色的姓名
|
* @param roleOid 角色主键
|
* @return 角色姓名,如果不存在会返回null
|
*/
|
String getRoleNameByRoleOid(String roleOid);
|
|
/**
|
* 根据用户主键获取关联的角色
|
* @param userOid 用户主键
|
* @param queryMap 查询条件,如果需要使用用户的属性来查询可以使用pkUser.xxxx
|
* @return 角色的显示对象
|
*/
|
List<SmRoleVO> listRoleByUserOid(String userOid, Map<String, String> queryMap);
|
|
/**
|
* 根据用户主键获取关联的角色
|
* @param userOid 用户主键
|
* @param queryMap 查询条件,如果需要使用用户的属性来查询可以使用pkUser.xxxx
|
* @param pageHelper 分页和排序对象,老平台不支持使用角色编号来排序
|
* @return 角色的显示对象
|
*/
|
DataGrid<SmRoleVO> gridRoleByUserOid(String userOid, Map<String, String> queryMap, PageHelper pageHelper);
|
|
/**
|
* 获取未关联某个用户的角色
|
* @param userOid 用户主键
|
* @param queryMap 查询条件,如果需要使用用户的属性来查询可以使用pkUser.xxxx
|
* @return 角色的显示对象
|
*/
|
List<SmRoleVO> listRoleUnInUserOid(String userOid, Map<String, String> queryMap);
|
|
/**
|
* 获取未关联某个用户的角色
|
* @param userOid 用户主键
|
* @param queryMap 查询条件,如果需要使用用户的属性来查询可以使用pkUser.xxxx
|
* @param pageHelper 分页和排序对象,老平台不支持使用角色编号来排序
|
* @return 角色的显示对象
|
*/
|
DataGrid<SmRoleVO> gridRoleUninUserOid(String userOid, Map<String, String> queryMap, PageHelper pageHelper);
|
|
/**
|
* 批量根据用户的主键来获取角色
|
* @param userOidCollection 用户主键集合
|
* @param queryMap 查询条件,如果需要使用用户的属性来查询可以使用pkUser.xxxx
|
* @return 角色的显示对象,key是用户主键,value是这个用户关联的角色
|
*/
|
Map<String,List<SmRoleVO>> batchListRoleByUserOids(Collection<String> userOidCollection, Map<String, String> queryMap);
|
|
/**
|
* 根据权限主键获取关联的角色
|
* @param functionOid 权限主键
|
* @param queryMap 查询条件
|
* @return 角色的显示对象
|
*/
|
List<SmRoleVO> listRoleByFunctionOid(String functionOid, Map<String, String> queryMap);
|
|
/**
|
* 获取未关联某个权限的角色
|
* @param functionOid 权限主键
|
* @param queryMap 查询条件
|
* @param pageHelper 分页和排序对象,老平台不支持使用角色编号来排序
|
* @return 角色的显示对象
|
*/
|
DataGrid<SmRoleVO> gridRoleByFunctionOid(String functionOid, Map<String, String> queryMap, PageHelper pageHelper);
|
|
/**
|
* 获取未关联某个权限的角色
|
* @param functionOid 权限主键
|
* @param queryMap 查询条件
|
* @return 角色的显示对象
|
*/
|
List<SmRoleVO> listRoleUnInFunctionOid(String functionOid, Map<String, String> queryMap);
|
|
/**
|
* 根据权限主键获取关联的角色
|
* @param functionOid 权限主键
|
* @param queryMap 查询条件
|
* @param pageHelper 分页和排序对象,老平台不支持使用角色编号来排序
|
* @return 角色的显示对象
|
*/
|
DataGrid<SmRoleVO> gridRoleUnInFunctionOid(String functionOid, Map<String, String> queryMap, PageHelper pageHelper);
|
|
/**
|
* 批量根据权限的主键来获取角色
|
* @param functionOidCollection 权限主键集合
|
* @param queryMap 查询条件,如果需要使用用户的属性来查询可以使用pkUser.xxxx
|
* @return 角色的显示对象,key是权限主键,value是这个权限关联的角色
|
*/
|
Map<String,List<SmRoleVO>> batchListRoleByFunctionOids(Collection<String> functionOidCollection, Map<String, String> queryMap);
|
|
/**
|
* 参照角色的列表,三员管理的三个角色不会显示
|
* @param queryMap 查询条件
|
* @param pageHelper 分页和排序的信息,在兼容老平台的时候会自动兼容,如果属性不存在会自动忽略
|
* @return 角色的显示对象列表
|
* @throws VciBaseException 参数为空的时候会抛出异常
|
*/
|
DataGrid<SmRoleVO> refGridRoles(Map<String, String> queryMap, PageHelper pageHelper) throws VciBaseException;
|
|
/**
|
* 角色的树形展示,常用于角色选择用户的页面使用
|
* @param treeQueryObject 树查询对象
|
* @return 树的节点
|
* @throws VciBaseException 参数为空的时候会抛出异常
|
*/
|
List<Tree> refTreeRoles(TreeQueryObject treeQueryObject) throws VciBaseException;
|
|
/**
|
* 该方法只支持一次只允许单个用户分配多个角色,一对多
|
* @param userOid
|
* @param roleIds
|
* @return
|
*/
|
boolean saveRights(String userOid, String[] roleIds) throws PLException;
|
|
}
|