All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.frameworkset.platform.menu.ColumnCmsTree Maven / Gradle / Ivy

package com.frameworkset.platform.menu;

import java.util.HashMap;
import java.util.Map;

import javax.servlet.jsp.PageContext;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import com.frameworkset.common.tag.tree.COMTree;
import com.frameworkset.common.tag.tree.itf.ITreeNode;
import com.frameworkset.platform.config.ConfigManager;
import com.frameworkset.platform.framework.Item;
import com.frameworkset.platform.framework.ItemQueue;
import com.frameworkset.platform.framework.MenuHelper;
import com.frameworkset.platform.framework.MenuItem;
import com.frameworkset.platform.framework.Module;
import com.frameworkset.platform.framework.ModuleQueue;
import com.frameworkset.platform.security.AccessControl;

/**
 * 

Title:

* *

Description:

* *

Copyright: Copyright (c) 2006

* *

Company: bbossgroups

* * @author biaoping.yin * @version 1.0 */ public class ColumnCmsTree extends COMTree { private static final Logger log = LoggerFactory.getLogger(ColumnCmsTree.class); MenuHelper menuHelper ; public ColumnCmsTree(){ } public void setPageContext(PageContext context){ super.setPageContext(context); menuHelper = new MenuHelper("cms",accessControl); } /** * hasSon * * @param iTreeNode ITreeNode * @return boolean * @todo Implement this com.frameworkset.common.tag.tree.itf.ActiveTree * method */ public boolean hasSon(ITreeNode father) { String path = father.getPath(); //System.out.println("-------------"+path); boolean hasson = false; if(father.isRoot()) { ModuleQueue queue = null; ItemQueue iqueue = null; queue = menuHelper.getModules(); iqueue = menuHelper.getItems(); if(iqueue.size() > 0) return true; if(queue.size() > 0) return true; } else { MenuItem menuItem = MenuHelper.getMenu(path); if(menuItem instanceof Item) { return hasson = false; } else if(menuItem instanceof Module) { Module module = (Module)menuItem; ItemQueue iqueue = null; ModuleQueue mqueue = null; if(ConfigManager.getInstance().securityEnabled()) { iqueue = menuHelper.getSubItems(module.getPath()); mqueue = menuHelper.getSubModules(module.getPath()); } else { iqueue = module.getItems(); mqueue = module.getSubModules(); } if(iqueue.size() > 0) return true; if(mqueue.size() > 0) return true; } } return hasson; } /** * setSon * * @param iTreeNode ITreeNode * @param _int int * @return boolean * @todo Implement this com.frameworkset.common.tag.tree.itf.ActiveTree * method */ public boolean setSon(ITreeNode father, int curLevel) { String parentPath = father.getPath(); ModuleQueue submodules = null; ItemQueue items = null; String resTypeId=request.getParameter("resTypeId"); String roleId = (String)session.getAttribute("currRoleId"); /** * user * role * oranization */ String roleTypeId = (String)session.getAttribute("role_type"); if(father.isRoot()) { submodules = menuHelper.getModules(); items = menuHelper.getItems(); } else { items = menuHelper.getSubItems(parentPath); submodules = menuHelper.getSubModules(parentPath); } String treeid = ""; String treeName = ""; String moduleType = "module"; String itemType = "item"; boolean showHref = true; String memo = null; String radioValue = null; String checkboxValue = null; String path = ""; for(int i = 0; i < submodules.size(); i ++) { Map params = new HashMap(); Module submodule = submodules.getModule(i); treeid = submodule.getPath(); treeName = submodule.getName(request); path = submodule.getPath(); params.put("columnID",treeid); params.put("resId",submodule.getId()); params.put("resName",submodule.getName(request)); checkboxValue = submodule.getId()+";"+submodule.getName(request)+";"+"column"; if(this.hasMenuChecked(roleId,roleTypeId,submodule.getId(),resTypeId)){ params.put("node_checkboxchecked",new Boolean(true)); } if(AccessControl.hasGrantedRole(roleId,roleTypeId,submodule.getId(),resTypeId)){ moduleType = "module_true"; }else{ moduleType = "module"; } showHref = true; addNode(father, treeid, treeName, moduleType, showHref, curLevel, memo, radioValue, checkboxValue, path,params); } for(int i = 0; i < items.size(); i ++) { Map params = new HashMap(); Item subitem = (Item)items.getItem(i); treeid = subitem.getPath(); treeName = subitem.getName(request); path = subitem.getPath(); showHref = true; params.put("columnID",treeid); params.put("resId",subitem.getId()); params.put("resName",subitem.getName(request)); checkboxValue = subitem.getId()+";"+subitem.getName(request)+";"+"column"; if(this.hasMenuChecked(roleId,roleTypeId,subitem.getId(),resTypeId)){ params.put("node_checkboxchecked",new Boolean(true)); } if(AccessControl.hasGrantedRole(roleId,roleTypeId,subitem.getId(),resTypeId)){ itemType = "item_true"; }else{ itemType = "item"; } addNode(father, treeid, treeName, itemType, showHref, curLevel, memo, radioValue, checkboxValue, path,params); } return true; } protected void buildContextMenus() { } /** * 判断 * @param orgId 机构ID * @return */ private boolean hasMenuChecked(String roleId,String roleType,String mId,String resTypeId){ if(AccessControl.hasGrantedRole(roleId,roleType,mId,resTypeId)){ return true ; }else{ return false; } } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy