{
"110101":{"areaName":"东城区","parentId":"110100"},
"110102":{"areaName":"西城区","parentId":"110100"}
}
public class AreaEntity {
public static final String PATH_STRING = "/zfptAreaCode.json";
public static Map<String, AreaEntity> areaCodeMap;
private String areaName;
private String parentId;
static {
try {
String fileString = null;
InputStream is = FileInputStream.class.getResourceAsStream(PATH_STRING);
fileString = IOUtils.toString(is, "utf-8");
areaCodeMap = JSONObject.parseObject(fileString,new TypeReference<Map<String, AreaEntity>>() {});
} catch (IOException e) {
}
}
public static void main(String[] args){
System.out.print(getParentId("211003"));
}
public AreaEntity() {
}
public AreaEntity(String areaName, String parentId) {
super();
this.areaName = areaName;
this.parentId = parentId;
}
public String getAreaName() {
return areaName;
}
public void setAreaName(String areaName) {
this.areaName = areaName;
}
public String getParentId() {
return parentId;
}
public void setParentId(String parentId) {
this.parentId = parentId;
}
public static boolean isContainProvince(String provinceCode) {
if (StringUtils.isEmpty(provinceCode)) {
return false;
}
boolean containsKey = areaCodeMap.containsKey(provinceCode);
if (containsKey) {
AreaEntity areaEntity = areaCodeMap.get(provinceCode);
String parentId2 = areaEntity.getParentId();
if (StringUtils.isEmpty(parentId2)) {
return true;
} else {
return false;
}
} else {
return false;
}
}
public static boolean isContainCityOrDistrict(String areaCode) {
if (StringUtils.isEmpty(areaCode)) {
return false;
}
boolean containsKey = areaCodeMap.containsKey(areaCode);
if (containsKey) {
AreaEntity areaEntity = areaCodeMap.get(areaCode);
String parentId2 = areaEntity.getParentId();
if (StringUtils.isEmpty(parentId2)) {
return false;
} else {
return true;
}
} else {
return false;
}
}
public static String getParentId(String areaCode) {
if (StringUtils.isEmpty(areaCode)) {
return null;
}
boolean containsKey = areaCodeMap.containsKey(areaCode);
if (containsKey) {
AreaEntity areaEntity = areaCodeMap.get(areaCode);
String parentId2 = areaEntity.getParentId();
if (StringUtils.isEmpty(parentId2)) {
return null;
} else {
return parentId2;
}
} else {
return null;
}
}
public static String getAreaName(String areaCode) {
if (StringUtils.isEmpty(areaCode)) {
return null;
}
boolean containsKey = areaCodeMap.containsKey(areaCode);
if (containsKey) {
AreaEntity areaEntity = areaCodeMap.get(areaCode);
String areaName = areaEntity.getAreaName();
if (StringUtils.isEmpty(areaName)) {
return null;
} else {
return areaName;
}
} else {
return null;
}
}
public static String getAddress(String areaCode){
if (StringUtils.isEmpty(areaCode)) {
return null;
}
boolean containsKey = areaCodeMap.containsKey(areaCode);
if (containsKey) {
AreaEntity areaEntity = areaCodeMap.get(areaCode);
String areaName = areaEntity.getAreaName();
if (StringUtils.isEmpty(areaName)) {
return null;
} else {
String parentId = areaEntity.getParentId();
if(StringUtils.isNotBlank(parentId)){
return getAddress(parentId)+","+areaName;
}
return areaName;
}
}
return null;
}
}