首页>代码>SSH极简OA管理系统>/SSH-OA/src/com/bjsxt/oa/managers/AclManager.java
package com.bjsxt.oa.managers;

import java.util.List;

public interface AclManager {
	
	/**
	 * 授权
	 * @param principalType 主体类型
	 * @param principalSn 主体标识
	 * @param resourceSn 资源标识
	 * @param permission 权限:C/R/U/D
	 * @param yes 是否允许,true表示允许;false表示不允许
	 */
	public void addOrUpdatePermission(
			String principalType,
			int principalSn,
			int resourceSn,
			int permission,
			boolean yes
	);
	
	/**
	 * 删除授权
	 * @param principalType
	 * @param principalSn
	 * @param resourceSn
	 */
	public void delPermission(
			String principalType,
			int principalSn,
			int resourceSn			
	);
	
	/**
	 * 添加或更新用户的继承特性
	 * @param userId 用户标识
	 * @param resourceSn 资源标识
	 * @param yes true表示继承,false表示不继承
	 */
	public void addOrUpdateUserExtends(int userId,int resourceSn,boolean yes);
	
	/**
	 * 判断用户对某模块的某操作的授权(允许或不允许)
	 * @param userId 用户标识
	 * @param reourceSn 资源标识(id)
	 * @param permission 权限(C/R/U/D)
	 * @return 允许(true)或不允许(false)
	 */
	public boolean hasPermission(int userId,int reourceId,int permission);
	
	/**
	 * 判断用户对某模块的某操作的授权(允许或不允许)
	 * @param userId 用户ID
	 * @param reourceSn 资源唯一标识(sn)
	 * @param permission 权限(C/R/U/D)
	 * @return 允许(true)或不允许(false)
	 */
	public boolean hasPermissionByResourceSn(int userId,String reourceSn,int permission);
	
	/**
	 * 搜索某个用户拥有读取权限的模块列表(用于登录,形成导航菜单的时候)
	 * @param userId 用户标识
	 * @return 模块列表(即列表的元素是Module对象)
	 */
	public List searchModules(int userId);
	
	/**
	 * 根据主体类型和主体标识查找ACL记录
	 * @param principalType
	 * @param principalSn
	 * @return
	 */
	public List searchAclRecord(String principalType,int principalSn);
}
最近下载更多
最代码官方  LV167 2023年8月27日
最近浏览更多
huhansan  LV10 2023年10月13日
vilychan  LV2 2023年9月8日
itlaolang  LV6 2023年9月4日
zhanglm119  LV3 2023年8月30日
最代码官方  LV167 2023年8月27日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友