package cc.mrbird.febs.common.enumerates; import lombok.Getter; @Getter public enum MemberAgentLevelEnum { AGENT_FIVE("VIP5","AGENT_FIVE",5),//总代 AGENT_FOUR("VIP4","AGENT_FOUR",4),//省代 AGENT_THREE("VIP3","AGENT_THREE",3),//市代 AGENT_TWO("VIP2","AGENT_TWO",2),//县代 AGENT_ONE("VIP1","AGENT_ONE",1),//区代 AGENT("VIP","AGENT",0);//会员 private String name; private String code; private Integer value; MemberAgentLevelEnum(String name,String code,Integer value) { this.name = name; this.code = code; this.value = value; } /** * 根据传入的name,比较两个级别的大小 levelOne等于levelTwo返回2,levelOne大于levelTwo返回1,否则返回0 */ public int compareLevel(String levelOne ,String levelTwo) { int codeOne = 0; int codeTwo = 0; for (MemberAgentLevelEnum memberAgentLevelEnum : MemberAgentLevelEnum.values()) { if(memberAgentLevelEnum.name.equals(levelOne)){ codeOne = memberAgentLevelEnum.value; } if(memberAgentLevelEnum.name.equals(levelTwo)){ codeTwo = memberAgentLevelEnum.value; } } if(codeOne > codeTwo){ return 1; } if(codeOne == codeTwo && codeOne != 0){ return 2; } return 0; } /** * 根据传入的等级code,输出上一等级name * @param code * @return */ public String minLevel(String code) { String minLevel = null; for (MemberAgentLevelEnum memberAgentLevelEnum : MemberAgentLevelEnum.values()) { if(memberAgentLevelEnum.getCode().equals(code)){ minLevel = getNameByValue(memberAgentLevelEnum.getValue() - 1); } } return minLevel; } private String getNameByValue(Integer value){ String name = null; for (MemberAgentLevelEnum memberAgentLevelEnum : MemberAgentLevelEnum.values()) { if(memberAgentLevelEnum.getValue() == value){ name = memberAgentLevelEnum.getName(); } } return name; } /** * 根据传入的等级code,输出等级name * @param code * @return */ public String getNameByCode(String code){ String name = null; for (MemberAgentLevelEnum memberAgentLevelEnum : MemberAgentLevelEnum.values()) { if(memberAgentLevelEnum.getCode().equals(code)){ name = memberAgentLevelEnum.getName(); } } return name; } /** * 根据传入的等级name,输出等级code * @param name * @return */ public String getCodeByName(String name){ String code = null; for (MemberAgentLevelEnum memberAgentLevelEnum : MemberAgentLevelEnum.values()) { if(memberAgentLevelEnum.getName().equals(name)){ code = memberAgentLevelEnum.getCode(); } } return code; } }