📄 treeexampledb.java
字号:
package cn.com.iaspec.workflow.organize.tree;
/**
* <p>Title:取得参与者的数据集 </p>
* <p>Description: 深圳市劳动仲裁信息管理系统</p>
* <p>Copyright: Copyright (c) 2005</p>
* <p>Company: 永泰软件工程有限公司</p>
*
* @author syj
* @version 1.0
*/
import java.util.*;
import org.apache.log4j.*;
public class TreeExampleDB{
private static Logger logger=Logger.getLogger(TreeExampleDB.class);
private ArrayList list=null;
public TreeExampleDB(ArrayList list){
this.list=list;
}
public TreeExampleDB(){
}
/**
* 按照ID取得下一层的信息
* @param gID int
* @return TreeExample[]
*/
public TreeExample[] getByKeyField(String uid){
logger.info("begin getByKeyField...");
TreeExample[] lTreeExampleArr=null;
if(!(list.size()==0)){
ArrayList alist=getActorInfo(uid);
lTreeExampleArr=new TreeExample[alist.size()];
lTreeExampleArr=(TreeExample[])alist.toArray(lTreeExampleArr);
}
return lTreeExampleArr;
}
/**
* 按照ID取得下一层的信息
* @param gID int
* @return ArrayList
*/
public ArrayList getActorInfo(String uid){
logger.info("begin getActorInfo...");
ArrayList array=new ArrayList();
//如果uid为uid,取得第一层节点信息
if(uid!=null&&uid.equals("-1")){
return getFirstLevelInfo();
}
if(!(list.size()==0)){
Iterator it=list.iterator();
while(it.hasNext()){
TreeExample treeExceple=(TreeExample)it.next();
if(treeExceple.getFatherUid().equals(uid)){
array.add(treeExceple);
}
}
}
Collections.sort(array);
printElements(array);
return array;
}
/**
* 取得树的第一层节点信息
*/
private ArrayList getFirstLevelInfo(){
logger.info("begin getFirstLevelInfo...");
ArrayList array=new ArrayList();
if(!(list.size()==0)){
Iterator it=list.iterator();
while(it.hasNext()){
TreeExample treeExceple=(TreeExample)it.next();
if(!checkExistParentNode(treeExceple)){
array.add(treeExceple);
}
}
}
return array;
}
/**
* 检查由gID指定的节点的父节点是否在list中存在
* @return boolean
*/
private boolean checkExistParentNode(TreeExample treeNode){
logger.info("begin checkExistParentNode...");
boolean bResult=false;
if(!(list.size()==0)&&treeNode!=null){
Iterator it=list.iterator();
while(it.hasNext()){
TreeExample treeExceple=(TreeExample)it.next();
if(treeExceple.getUid().equals(treeNode.getFatherUid())){
bResult=true;
break;
}
}
}
return bResult;
}
/**
* 设置参与者的集合list
* @param alist ArrayList
*/
public void setArrayList(ArrayList alist){
this.list=alist;
}
/**
* 判断是否还有子节点
* @param ID String
* @return boolean
*/
public boolean existChildren(String uid){
logger.info("begin existChildren...");
boolean lExist=false;
ArrayList al=getActorInfo(uid);
if(!(al.size()==0)){
lExist=true;
}
return lExist;
}
/**
* 打印集合
* @param c Collection
*/
public static void printElements(Collection c){
Iterator it=c.iterator();
while(it.hasNext()){
System.out.println(it.next());
}
}
/**
* 查询ID=gID的TreeExample对象是否存在
* @param gID int
* @return TreeExample
*/
public TreeExample queryTreeExample(String uid){
logger.info("begin queryTreeExample...");
TreeExample treeExample=new TreeExample();
Iterator it=list.iterator();
while(it.hasNext()){
TreeExample tree=(TreeExample)it.next();
if(tree.getUid().equals(uid)){
treeExample=tree;
}
}
return treeExample;
}
public static void main(String args[]){
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -