import java.util.Arrays;
import com.alibaba.fastjson.JSONObject;
public interface BillEnums {
enum Type implements BillEnums{
PREPAYMENT("预付款报账"),
EMPLOYEE_BORROW("员工借款"),
COMMON_FEE("通用费用报账"),
HOME_TRAVEL("境内差旅费"),
ABROAD_TRAVEL("境外差旅费"),
EXTERNAL_OTHER_FEE("对外费用"),
BUSINESS_ACTIVITY_FEE("业务活动费"),
BUSINESS_ACTIVITY_FEE_FILING("业务活动费备案");
private String name;
Type(String name) {
this.name = name;
}
public String getName() {
return name;
}
public static void main(String[] args) {
System.out.println(JSONObject.toJSON(Type.values())); // ["PREPAYMENT","EMPLOYEE_BORROW","COMMON_FEE","HOME_TRAVEL","ABROAD_TRAVEL","EXTERNAL_OTHER_FEE","BUSINESS_ACTIVITY_FEE","BUSINESS_ACTIVITY_FEE_FILING"]
System.out.println(Type.valueOf("COMMON_FEE").getName()); // 通用费用报账
}
}
enum Status implements BillEnums {
BOE_DRAFT("100_DRAFT","单据草稿"),
CANCELED("105_CANCELED","已撤消"),
REJECTED("110_REJECTED","单据退回"),
WAIT_BUSINESS_APPROVE("200_WAIT_BUSINESS_APPROVE","待业务审批"),
WAIT_MULTI_APPROVAL("210_WAIT_MULTI_APPROVAL","待会签审批"),
WAIT_FINANCIAL_PRE_APPROVE("220_WAIT_FINANCIAL_PRE_APPROVE","待财务初审"),
WAIT_FINANCIAL_APPROVE("230_WAIT_FINANCIAL_APPROVE","待财务复审"),
HAS_APPROVED("300_HAS_APPROVED","审批通过待导入ERP"),
IMPORT_FAIL("330_IMPORT_FAIL","ERP导入失败"),
IMPORT_SUCCESS("350_IMPORT_SUCCESS","ERP导入成功"),
NORMAL_CLOSED("400_NORMAL_CLOSED","正常关闭");
private String code;
private String name;
Status(String code, String name) {
this.code = code;
this.name = name;
}
public String getCode() {
return code;
}
public String getName() {
return name;
}
public static Boolean contains(String code) {
return Arrays.stream(values()).anyMatch(i->i.getCode().equals(code));
}
public static Status get(String code){
for (Status i : Status.values()) {
if(i.code.equals(code)){
return i;
}
}
return null;
}
public static void main(String[] args) {
System.out.println(JSONObject.toJSON(Status.values())); // ["BOE_DRAFT","CANCELED","REJECTED","WAIT_BUSINESS_APPROVE","WAIT_MULTI_APPROVAL","WAIT_FINANCIAL_PRE_APPROVE","WAIT_FINANCIAL_APPROVE","HAS_APPROVED","IMPORT_FAIL","IMPORT_SUCCESS","NORMAL_CLOSED"]
System.out.println(Status.valueOf("REJECTED").getName()); // 单据退回
System.out.println(Status.contains("110_REJECTED")); // true
System.out.println(Status.get("110_REJECTED")); // REJECTED
}
}
}
java enums枚举归类
最新推荐文章于 2024-03-08 09:36:18 发布