package com.bonus.auth.config;

import com.fasterxml.jackson.annotation.JsonCreator;

public enum LoginType {
    /**
     * 账号密码
     */
    USERNAME_PASSWORD,
    /**
     * 手机号密码
     */
    PHONE_PASSWORD,
    /**
     * 邮箱密码
     */
    EMAIL_PASSWORD,
    /**
     * 手机号验证码
     */
    PHONE_OTP,
    /**
     * 邮箱验证码
     */
    EMAIL_OTP;

    @JsonCreator
    public static LoginType fromString(String key) {
        if (key == null) {
            return null;
        }

        // 自定义转换逻辑，允许大小写不敏感的匹配
        for (LoginType type : LoginType.values()) {
            if (type.name().equalsIgnoreCase(key)) {
                return type;
            }
        }
       // throw new ServiceException("不支持的登录方式");
        return null;
    }
}

