java enums枚举归类


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
		}
	}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值