yujian
2020-04-24 f276a5a1fc38e735499aa95089ff8105bd2ba196
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
package com.yeshi.fanli.util.user;
 
import com.yeshi.fanli.entity.bus.user.vip.UserLevelEnum;
 
public class UserLevelUtil {
 
 
    /**
     * 根据枚举名称匹配
     * @param level
     * @return
     */
    public static UserLevelEnum getByEnumName(String level) {
        if (level == null)
            return null;
 
        for (UserLevelEnum levelEnum : UserLevelEnum.values()) {
            if (levelEnum.name().equalsIgnoreCase(level))
                return levelEnum;
        }
        return null;
    }
 
    /**
     * 根据等级数字
     * @param level
     * @return
     */
    public static UserLevelEnum getByLevel(Integer level) {
        if (level == null)
            return null;
 
        for (UserLevelEnum levelEnum : UserLevelEnum.values()) {
            if (levelEnum.getLevel() == level)
                return levelEnum;
        }
        return null;
    }
 
    /**
     * 根据订单rank获取用户的等级
     * @Title: getByOrderRank
     * @Description: 
     * @param orderRank
     * @return 
     * UserLevelEnum 返回类型
     * @throws
     */
    public static UserLevelEnum getByOrderRank(Integer orderRank) {
        if (orderRank == null)
            return null;
 
        for (UserLevelEnum level : UserLevelEnum.values()) {
            if (level.getOrderRank() == orderRank)
                return level;
        }
        return null;
    }
 
    /**
     * 获取下一个等级
     * @Title: getNextLevel
     * @Description: 
     * @param level
     * @return 
     * UserLevelEnum 返回类型
     * @throws
     */
    public static UserLevelEnum getNextLevel(UserLevelEnum level) {
        if (level == null)
            return null;
 
        if (level == UserLevelEnum.daRen || level == UserLevelEnum.normalVIP) {
            return UserLevelEnum.highVIP;
        } else if (level == UserLevelEnum.highVIP) {
            return UserLevelEnum.superVIP;
        } else if (level == UserLevelEnum.superVIP) {
            return UserLevelEnum.tearcher;
        }
 
        return null;
    }
 
    /**
     * 获取上一个等级
     * @Title: getNextLevel
     * @Description: 
     * @param level
     * @return 
     * UserLevelEnum 返回类型
     * @throws
     */
    public static UserLevelEnum getPrevLevel(UserLevelEnum level) {
        if (level == null)
            return null;
        if (level == UserLevelEnum.daRen || level == UserLevelEnum.normalVIP) {
            return null;
        } else if (level == UserLevelEnum.highVIP) {
            return UserLevelEnum.daRen;
        } else if (level == UserLevelEnum.superVIP) {
            return UserLevelEnum.highVIP;
        }
        return null;
    }
 
    /**
     * 获取2.1之前的用户等级(普通会员与高级会员降级为达人,导师降级为超级会员)
     * @Title: getOldLevel
     * @Description: 
     * @param level
     * @return 
     * UserLevelEnum 返回类型
     * @throws
     */
 
    public static UserLevelEnum getOldLevel(UserLevelEnum userLevel) {
        if (userLevel == null || userLevel == UserLevelEnum.normalVIP || userLevel == UserLevelEnum.highVIP) {
            return UserLevelEnum.daRen;
        } else if (userLevel == UserLevelEnum.tearcher)
            return UserLevelEnum.superVIP;
        return userLevel;
    }
 
    /**
     * 获取外显等级
     * @Title: getShowLevel
     * @Description: 
     * @param userLevel
     * @return 
     * UserLevelEnum 返回类型
     * @throws
     */
    public static UserLevelEnum getShowLevel(UserLevelEnum userLevel) {
        if (userLevel == UserLevelEnum.normalVIP)
            return UserLevelEnum.daRen;
 
        return userLevel;
    }
}