bbsrights.java

来自「简易java(easyjf)框架开源论坛系统」· Java 代码 · 共 149 行

JAVA
149
字号
package com.easyjf.bbs.business;
/**
 * BBS权限管理信息
 * @author 蔡世友
 *
 */
public class BBSRights {
	public static boolean checkRights(Object obj,String Operater,ActiveUser user)
	{
		boolean ret=true;
		if(obj instanceof BBSDoc)
		{
			ret=checkBBSDocRights((BBSDoc)obj,Operater,user);
		}
		else if(obj instanceof UserInfo)
		{
			ret=checkUserRights((UserInfo)obj,Operater,user);
		}
		else if(obj instanceof BBSDir)
		{
			ret=checkBBSDirRights((BBSDir)obj,Operater,user);
		}			
		return ret;
	}
	public static boolean checkAdministrator(ActiveUser user)
	{
		BBSUserRole role=BBSUserRole.getUserRole(null,user);
		return role.isAdministrator();
	}
	private static boolean checkBBSDocRights(BBSDoc doc,String operator,ActiveUser user)
	{
		BBSUserRole role=BBSUserRole.getUserRole(doc,user);	
		if(operator.equals("add"))
		{
			return role.isValidateUser();
		}
		else if(operator.equals("del"))
		{
			return role.isAuthor()||role.isSubManager()||role.isManager()||role.isAdministrator();
		}
		else if(operator.equals("edit")||operator.equals("editMessage"))
		{
			System.out.println("是否作者本人:"+role.isAuthor());
			return role.isAuthor()||role.isSubManager()||role.isManager()||role.isAdministrator();
		}
		else if(operator.equals("new"))
		{
			return role.isValidateUser();
		}
		else if(operator.equals("update"))
		{
			return role.isAuthor()||role.isSubManager()||role.isManager()||role.isAdministrator();
		}
		else if(operator.equals("reply"))
		{
			return role.isValidateUser();
		}
		else if(operator.equals("show"))
		{
			return true;
		}
		else if(operator.equals("setTopMessage"))
		{
			return role.isAdministrator()||role.isManager()||role.isSubManager();
		}
		else if(operator.equals("setEliteMessage"))
		{
			return role.isAdministrator()||role.isManager()||role.isSubManager();
		}
		else if(operator.equals("lockMessage"))
		{
			return role.isAdministrator()||role.isManager()||role.isSubManager();
		}
		else if(operator.equals("delMessage"))
		{
			return role.isAdministrator()||role.isManager()||role.isSubManager();
		}
		else if(operator.equals("moveMessage"))
		{
			return role.isAdministrator()||role.isManager()||role.isSubManager();
		}
		else if(operator.equals("lockUser"))
		{
			return role.isAdministrator();
		}
		
		return true;
	}
	private static boolean checkBBSDirRights(BBSDir dir,String operator,ActiveUser user)
	{
		BBSUserRole role=BBSUserRole.getUserRole(dir,user);
		if(operator.equals("add"))
		{
			return role.isAdministrator();
		}
		else if(operator.equals("del"))
		{
			return  role.isAdministrator();
		}
		else if(operator.equals("edit"))
		{
			return role.isAdministrator();
		}
		else if(operator.equals("new"))
		{
			return role.isAdministrator();
		}
		else if(operator.equals("update"))
		{
			return role.isAdministrator();
		}		
		else if(operator.equals("show"))
		{
			return true;
		}		
		return true;
	}
	private static boolean checkUserRights(UserInfo u,String operator,ActiveUser user)
	{
		BBSUserRole role=BBSUserRole.getUserRole(u,user);	
		if(operator.equals("add"))
		{
			return role.isAdministrator();
		}
		else if(operator.equals("del"))
		{
			return role.isAuthor()||role.isAdministrator();
		}
		else if(operator.equals("edit"))
		{
			return role.isAuthor()||role.isAdministrator();
		}
		else if(operator.equals("new"))
		{
			return role.isAdministrator();
		}
		else if(operator.equals("update"))
		{
			return role.isAuthor()||role.isAdministrator();
		}		
		else if(operator.equals("show"))
		{
			return true;
		}	
		return true;
	}
	
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?