简单的根据发票代码获取所属行政区编码和名称(自行比对枚举值是否符合自己业务)

这里码表就不上传了,因为可能和自己企业定义不一样
我这个只是简单的获取编码,发票代码以0开头获取下标1-3 else 0-2(因为代码有12位和10位,一般12位以0开头,10位不是0,--可能到我现在还没发现这个吧,不一定准确,根据自己业务实际判断哈)



/**
* @ClassName AreaEnum
* @Description 所属行政编码
* @Author XXX
* @Version 1.0
**/


public enum AreaEnum {

AREA11("110000","北京市","BJ"),
AREA12("120000","天津市","TJ"),
AREA13("130000","河北省","HE"),
AREA14("140000","山西省","SX"),
AREA15("150000","内蒙古自治区","NM"),
AREA21("210000","辽宁省","LN"),
AREA22("220000","吉林省","JL"),
AREA23("230000","黑龙江省","HL"),
AREA31("310000","上海市","SH"),
AREA32("320000","江苏省","JS"),
AREA33("330000","浙江省","ZJ"),
AREA34("340000","安徽省","AH"),
AREA35("350000","福建省","FJ"),
AREA36("360000","江西省","JX"),
AREA37("370000","山东省","SD"),
AREA41("410000","河南省","HA"),
AREA42("420000","湖北省","HB"),
AREA43("430000","湖南省","HN"),
AREA44("440000","广东省","GD"),
AREA45("450000","广西壮族自治区","GX"),
AREA46("460000","海南省","HI"),
AREA50("500000","重庆市","CQ"),
AREA51("510000","四川省","SC"),
AREA52("520000","贵州省","GZ"),
AREA53("530000","云南省","YN"),
AREA54("540000","西藏自治区","XZ"),
AREA61("610000","陕西省","SN"),
AREA62("620000","甘肃省","GS"),
AREA63("630000","青海省","QH"),
AREA64("640000","宁夏回族自治区","NX"),
AREA65("650000","新疆维吾尔自治区","XJ"),
AREA71("710000","台湾省","TW"),
AREA81("810000","香港特别行政区","HK"),
AREA82("820000","澳门特别行政区","MO")
;

private String szm;
private String name;
private String zmm;

AreaEnum(String szm, String name,String zmm) {
this.szm = szm;
this.name = name;
this.zmm = zmm;
}

public String getSzm() {
return szm;
}

public String getName() {
return name;
}

public String getZmm() {
return zmm;
}
}




import org.apache.commons.lang3.StringUtils;

/**
* @ClassName AreaUtils
* @Description 所属区域编码utils
* @Author XXX
* @Version 1.0
**/
public class AreaUtils {

private static final String AREA = "AREA";

public static String getAreaSzm(String code) {
try {
return StringUtils.isEmpty(AreaEnum.valueOf(AREA+code).getSzm())?code:AreaEnum.valueOf(AREA+code).getSzm();
} catch (IllegalArgumentException e) {
e.printStackTrace();
return code;
}
}

public static String getAreaName(String code) {
try {
return StringUtils.isEmpty(AreaEnum.valueOf(AREA+code).getName())?code:AreaEnum.valueOf(AREA+code).getName();
} catch (IllegalArgumentException e) {
e.printStackTrace();
return code;
}
}

public static void main(String[] args) {
String a = "011100";
String b = "113333";
System.out.print(b.startsWith("0"));
}

}
 
posted @ 2021-06-19 15:45  简单的深度  阅读(299)  评论(0编辑  收藏  举报