package com.walker.web; /** * 登录类型定义,前端可通过多种方式登录,并同时支持多种方式同时登录,如:PC端和APP端。 * @date 2023-01-28 重新定义该对象含义,表示登录时使用哪种方式验证用户,如: *
 *     1) 用户名、密码
 *     2) 手机号、短信验证码
 *     3) 微信登第三方绑定登录验证
 * 
*/ public enum LoginType { /** * 用户名密码登录。 * @date 2023-03-20 该类型转为PC端登录类型。 */ UserPassword{ public String getIndex(){ return INDEX_USER_PASSWORD; } }, /** * 短信验证码登录 */ SmsCode{ public String getIndex(){ return INDEX_SMS_CODE; } }, Wechat{ public String getIndex(){ return INDEX_WECHAT; } }, DingTalk{ public String getIndex(){ return INDEX_DING_TALK; } }, /** * 专门针对移动端的账号、密码登录(没有验证码) * @date 2023-03-20 */ MobilePassword { public String getIndex(){ return INDEX_MOBILE_PASSWORD; } }, ThirdParty { public String getIndex(){ return INDEX_THIRD_PARTY; } }; public String getIndex(){ throw new AbstractMethodError(); } public static final LoginType getType(String index){ if(index.equals(INDEX_USER_PASSWORD)){ return UserPassword; } else if(index.equals(INDEX_SMS_CODE)){ return SmsCode; } else if(index.equals(INDEX_WECHAT)){ return Wechat; } else if(index.equals(INDEX_DING_TALK)){ return DingTalk; } else if(index.equals(INDEX_MOBILE_PASSWORD)){ return MobilePassword; } else if(index.equals(INDEX_THIRD_PARTY)){ return ThirdParty; } else { throw new IllegalArgumentException("不支持的登录类型:" + index); } } public static final String INDEX_USER_PASSWORD = "user_pass"; public static final String INDEX_SMS_CODE = "sms_code"; public static final String INDEX_WECHAT = "wechat"; public static final String INDEX_DING_TALK = "ding_talk"; public static final String INDEX_MOBILE_PASSWORD = "mobile_pass"; public static final String INDEX_THIRD_PARTY = "third_party"; }