package com.goafanti.common.enums; import java.util.HashMap; import java.util.Map; import org.apache.commons.lang3.StringUtils; public enum PatentReimbursementStatus { NO(0, "未报销"), YES(1, "已报销"), OTHER(2, "其他"); private PatentReimbursementStatus(Integer code, String desc) { this.code = code; this.desc = desc; } private static Map status = new HashMap(); static { for (PatentReimbursementStatus value : PatentReimbursementStatus.values()) { status.put(value.getCode(), value); } } public static PatentReimbursementStatus getStatus(Integer code) { if (containsType(code)) { return status.get(code); } return OTHER; } public static PatentReimbursementStatus getStatus(String code) { if (StringUtils.isNumeric(code)) { return getStatus(Integer.parseInt(code)); } return OTHER; } public static boolean containsType(Integer code) { return status.containsKey(code); } private Integer code; private String desc; public Integer getCode() { return code; } public String getDesc() { return desc; } }