package cc.mrbird.febs.dapp.enumerate; import lombok.Getter; import java.util.ArrayList; import java.util.List; @Getter public enum MemberLevelEnum { /** */ V7("V7",5,"V7"), V6("V6",5,"V6"), V5("V5",5,"V5"), V4("V4",4,"V4"), V3("V3",3,"V3"), V2("V2",2,"V2"), V1("V1",1,"V1"), MEMBER("MEMBER",0,"MEMBER"); private String type; private Integer code; private String description; MemberLevelEnum(String type, Integer code,String description) { this.type = type; this.code = code; this.description = description; } public List getLevelType(){ List strs = new ArrayList<>(); for (MemberLevelEnum value : MemberLevelEnum.values()) { strs.add(value.type); } return strs; } public String getLevelDescription(String Level){ String description = "MEMBER"; for (MemberLevelEnum value : MemberLevelEnum.values()) { if(value.type.equals(Level)){ description = value.description; } } return description; } public int getLevelCode(String Level){ int codeOne = 0; for (MemberLevelEnum value : MemberLevelEnum.values()) { if(value.type.equals(Level)){ codeOne = value.code; } } return codeOne; } public String getNextLevel(String Level){ String levelNext = Level; int codeOne = 0; for (MemberLevelEnum value : MemberLevelEnum.values()) { if(value.type.equals(Level)){ codeOne = value.code; break; } } codeOne = codeOne + 1; for (MemberLevelEnum value : MemberLevelEnum.values()) { if(value.code == (codeOne)){ levelNext = value.type; break; } } return levelNext; } /** * 比较两个级别的大小,levelOne大于levelTwo返回1,levelOne等于levelTwo返回2,否则返回0 */ public int compareLevel(String levelOne ,String levelTwo) { int codeOne = 0; int codeTwo = 0; for (MemberLevelEnum value : MemberLevelEnum.values()) { if(value.type.equals(levelOne)){ codeOne = value.code; } if(value.type.equals(levelTwo)){ codeTwo = value.code; } } if(codeOne > codeTwo){ return 1; } if(codeOne == codeTwo){ return 2; } return 0; } }