/***文档注释***********************************************
 * 作者               :                   易鑫
 * 创建日期      :                   2016.01.14
 * 描述               :                   树数据递归公共方法，用于easyui树控件生成
 * 注意事项      :                   无
 * 遗留BUG :                   无
 * 修改日期      :                  
 * 修改人员      :                   
 * 修改内容      :                   
 ***********************************************************/

package market.Com.pb;

import java.util.ArrayList;
import java.util.List;

import market.Com.vo.ElementUITree;
import market.Com.vo.TreeNode;

public class TreeNodeHelper {
	//-----------------构造实体类结构返回-------------------
	public List<TreeNode> GetTreeJsonByList(List<TreeNode> ltn,String Pid){
		List<TreeNode> list=null;
		for(TreeNode tn: ltn){
			if(Pid.trim().equals("")&&("".equals(tn.getPid())||tn.getPid()==null)){
				if(list==null){
					list=new ArrayList<TreeNode>();
				}
				list.add(tn);
			}else if(!"".equals(Pid)&&Pid!=null&&Pid.equals(tn.getPid())){
				if(list==null){
					list=new ArrayList<TreeNode>();
				}
				list.add(tn);
			}
		}
		if(list!=null){
			for(TreeNode tn: list){
				tn.setChildren(GetTreeJsonByList(ltn,tn.getId()));
			}
		}
		return list;
	}

	//-----------------构造实体类结构返回-------------------
	public List<TreeNode> GetTreeJsonByLists(List<TreeNode> ltn){
		List<TreeNode> list=new ArrayList<TreeNode>();
		for(TreeNode tn: ltn){
			if (tn.getPid() == null || tn.getPid().equals("") || tn.getPid().equals("1")) {
				List<TreeNode> list2=new ArrayList<TreeNode>();
				for (TreeNode tn2: ltn) {
					if (tn.getId().equals(tn2.getPid())) {
						list2.add(tn2);
					}
				}
				if (list2.size() > 0) {
					tn.setChildren(list2);
				}
				list.add(tn);
			}
		}
		return list;
	}

	/**
	 * 获取产品信息
	 * @return
	 */
	public List<ElementUITree> GetProductTree(List<ElementUITree> ltn, String pId) {
		List<ElementUITree> list=null;
		for(ElementUITree tn: ltn){
			if(pId.trim().equals("4049")&&"4049".equals(tn.getP_id())){
				if(list==null){
					list=new ArrayList<ElementUITree>();
				}
				list.add(tn);
			}else if(!"".equals(pId)&&pId!=null&&pId.equals(tn.getP_id())){
				if(list==null){
					list=new ArrayList<ElementUITree>();
				}
				list.add(tn);
			}
		}
		if(list!=null){
			for(ElementUITree tn: list){
				tn.setChildren(GetProductTree(ltn,tn.getValue()));
			}
		}
		return list;
	}
}
