⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 resourceprocessbean.java

📁 OBPM是一个开源
💻 JAVA
字号:
package cn.myapps.core.resource.ejb;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.Map;

import cn.myapps.base.dao.DAOFactory;
import cn.myapps.base.dao.IBaseDAO;
import cn.myapps.base.dao.ValueObject;
import cn.myapps.base.ejb.BaseProcessBean;
import cn.myapps.core.permission.ejb.PermissionPackage;
import cn.myapps.core.resource.dao.ResourceDAO;

public class ResourceProcessBean extends BaseProcessBean implements
		ResourceProcess {
	public void doCreate(ValueObject vo) throws Exception {
		super.doCreate(vo);
		PermissionPackage.clearCache();
	}

	public void doRemove(String pk) throws Exception {
		super.doRemove(pk);
		PermissionPackage.clearCache();
	}

	public void doUpdate(ValueObject vo) throws Exception {
		super.doUpdate(vo);
		PermissionPackage.clearCache();
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see cn.myapps.core.resource.ejb.ResourceProcess#getFamilyTree()
	 */
	public Collection getFamilyTree(String application) throws Exception {
		return ((ResourceDAO) getDAO()).getFamilyTree("", application);
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see cn.myapps.base.ejb.BaseProcessBean#getDAO()
	 */
	protected IBaseDAO getDAO() throws Exception {
		IBaseDAO dao = (ResourceDAO) DAOFactory.getDefaultDAO(ResourceVO.class
				.getName());
		return dao;
	}

	public Map deepSearchMenuTree(Collection cols, ResourceVO startNode,
			String excludeNodeId, int deep) throws Exception {
		Map list = new LinkedHashMap();

		list.put("", "NO");

		String prefix = "|------------------------------------------------";
		if (startNode != null) {
			list.put(startNode.getId(), prefix.substring(0, deep * 2)
					+ startNode.getDescription());
		}

		Iterator iter = cols.iterator();
		while (iter.hasNext()) {
			ResourceVO vo = (ResourceVO) iter.next();
			if (startNode == null) {
				if (vo.getSuperior() == null) {
					if (vo.getId() != null && !vo.getId().equals(excludeNodeId)) {
						Map tmp = deepSearchMenuTree(cols, vo, excludeNodeId,
								deep + 1);
						list.putAll(tmp);
					}
				}
			} else {
				if (vo.getSuperior() != null
						&& vo.getSuperior().getId().equals(startNode.getId())) {
					if (vo.getId() != null && !vo.getId().equals(excludeNodeId)) {
						Map tmp = deepSearchMenuTree(cols, vo, excludeNodeId,
								deep + 1);
						list.putAll(tmp);
					}
				}
			}
		}
		return list;
	}

	public Collection deepSearchResouece(Collection colls,
			ResourceVO startNode, String excludeNodeId, int deep)
			throws Exception {
		Collection rtn = new ArrayList();

		if (startNode != null) {
			rtn.add(startNode);
		}

		Iterator iter = colls.iterator();
		while (iter.hasNext()) {
			ResourceVO vo = (ResourceVO) iter.next();

			if (startNode == null) {
				if (vo.getSuperior() == null) {
					if (vo.getId() != null && !vo.getId().equals(excludeNodeId)) {
						Collection idList = deepSearchResouece(colls, vo,
								excludeNodeId, deep);

						rtn.addAll(idList);
					}
				}
			} else {
				if (vo.getSuperior() != null
						&& vo.getSuperior().getId().equals(startNode.getId())) {
					if (vo.getId() != null && !vo.getId().equals(excludeNodeId)) {
						Collection idList = deepSearchResouece(colls, vo,
								excludeNodeId, deep);

						rtn.addAll(idList);
					}
				}
			}
		}

		return rtn;
	}

	public Collection getProtectResources(String application) throws Exception {
		return ((ResourceDAO) getDAO()).getProtectResources(application);
	}
}

⌨️ 快捷键说明

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