accessrulehandler.java

来自「这是一个轻便的j2ee的web应用框架,是一个在多个项目中运用的实际框架,采用s」· Java 代码 · 共 43 行

JAVA
43
字号
/*
 * Created on 2004-4-1
 *
 */
package com.esimple.service.query.handler;

import java.util.*;
import com.esimple.service.rbac.*;
import com.esimple.framework.util.StringUtils;
import com.esimple.service.query.config.*;
/**
 * @author steven
 *
 */
public class AccessRuleHandler implements SqlHandler {
	
	public String toSqlString(QueryConfig query,String sql,String role,HashMap context)throws Exception{
		//QueryACLConfig acl = query.getAcl();
		//String rule = acl.getRule(role);
		
//		if( rule == null ) return sql;
//		if( rule.length() < 5 ) return sql;
		
		Object obj = context.get("user");
		if( obj == null ) return sql;
		
		User user = (User)obj;
		
//		if( !user.hasRole(role) ){
//			rule = StringUtils.replace(rule,"$_USER","-1" );
//			rule = StringUtils.replace(rule,"$_ORGID","-1");
//		}else{
//			rule = StringUtils.replace(rule,"$_USER",user.getUserID());
//			rule = StringUtils.replace(rule,"$_ORGID",user.getOrgID());			
//		}
		
		sql = StringUtils.replace(sql,"$_USER",user.getUserID());
		sql = StringUtils.replace(sql,"$_ORGID",user.getOrgID());	
//		sql= sql +"and (" + rule +")";
		return sql;
	}
}

⌨️ 快捷键说明

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