CRegion.java 1.96 KB
/**@author Sherlock_yb
 * Created time:2014-2-26
 */
package nlp.whu.model;

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

/**@description:
 */
public class CRegion {
	Integer regionID;
	String regionName;
	Integer regionLevel;
	String regionAbbr;
	
	// 相对于Region表添加的字段,用于构建层级结构
	public CRegion parentRegion;
	public CRegion provinceRegion;
	public List<CRegion> childRegions = null;
	
	public String toString() {
		return regionID + " -- " + regionAbbr + " + " + (childRegions!=null?(childRegions.size()+" children."):"");
	}

	public Integer getRegionID() {
		return regionID;
	}
	public void setRegionID(Integer regionID) {
		this.regionID = regionID;
	}
	public String getRegionName() {
		return regionName;
	}
	public void setRegionName(String regionName) {
		this.regionName = regionName;
	}
	public Integer getRegionLevel() {
		return regionLevel;
	}
	public void setRegionLevel(Integer regionLevel) {
		this.regionLevel = regionLevel;
	}
	public String getRegionAbbr() {
		return regionAbbr;
	}
	public void setRegionAbbr(String regionAbbr) {
		this.regionAbbr = regionAbbr;
	}
	public CRegion getParentRegion() {
		return parentRegion;
	}
	public void setParentRegion(CRegion parentRegion) {
		this.parentRegion = parentRegion;
	}
	public CRegion getProvinceRegion() {
		return provinceRegion;
	}
	public void setProvinceRegion(CRegion provinceRegion) {
		this.provinceRegion = provinceRegion;
	}
	public List<CRegion> getChildRegions() {
		return childRegions;
	}
	public void setChildRegions(List<CRegion> childRegions) {
		this.childRegions = childRegions;
	}
	// Added By Nieyu
	public List<CRegion> getAllDecendants(){
		List<CRegion> r = new ArrayList<CRegion>();
		r.add(this);
		if (this.getChildRegions()!=null) {
			for (int i=0; i<this.getChildRegions().size(); i++) {
				r.addAll(this.getChildRegions().get(i).getAllDecendants());
			}
		}
		return r;
	}
}