switch case 语句改成枚举

switch case 语句     根据type 和platform  获取阿里短信模板code

public String commonSwitch(String type, String platform) {
    switch (type) {
      case LOGIN_CODE:
        switch (platform) {
          case GALATEA:
            return SMS_GALATEA_LOGIN_CAPTCHA_TEMPLATE_CODE;
          case ALBUS_AUTH:
            return SMS_APP_LOGIN_CAPTCHA_TEMPLATE_CODE;
          case MINERVA:
            return null;
        }
        break;
      case RESETPWD_CODE:
        switch (platform) {
          case GALATEA:
            return SMS_GALATEA_RESETPWD_CAPTCHA_TEMPLATE_CODE;
          case ALBUS_AUTH:
            return SMS_APP_RESETPWD_CAPTCHA_TEMPLATE_CODE;
          case MINERVA:
            return null;
        }
        break;
      case EXCHANGEPHONE_CODE:
        switch (platform) {
          case GALATEA:
            return SMS_GALATEA_EXCHANGEPHONE_CAPTCHA_TEMPLATE_CODE;
          case ALBUS_AUTH:
            return SMS_APP_EXCHANGEPHONE_CAPTCHA_TEMPLATE_CODE;
          case MINERVA:
            return null;
        }
        break;
      case FORGETPWD_CODE:
        switch (platform) {
          case GALATEA:
            return SMS_GALATEA_FORGETPWD_CAPTCHA_TEMPLATE_CODE;
          case ALBUS_AUTH:
            return SMS_APP_FORGETPWD_CAPTCHA_TEMPLATE_CODE;
          case MINERVA:
            return null;
        }
        break;
      case VALIDPHONE_CODE:
        switch (platform) {
          case GALATEA:
            return SMS_GALATEA_VALIDPHINE_CAPTCHA_TEMPLATE_CODE;
          case ALBUS_AUTH:
            return SMS_APP_VALIDPHINE_CAPTCHA_TEMPLATE_CODE;
          case MINERVA:
            return null;
        }
        break;
    }
    return null;
  }

改成enum

public enum SmsTemplaEnum {
  // 商户登录验证码
  GALATEA_LOGIN_CAPTCHA("LOGIN_CODE", "GALATEA", "SMS_2xxxxx0", "商户登录验证码"),
  // 商户重置密码类型
  GALATEA_RESETPWD_CAPTCHA("RESETPWD_CODE", "GALATEA", "SMS_21xxxx20", " 商户重置密码类型"),
  // 户换绑手机验证码类型
  GALATEA_EXCHANGEPHONE_CAPTCHA("EXCHANGEPHONE_CODE", "GALATEA", "SMS_214xxx28", "户换绑手机验证码类型"),
  // 商户忘记密码验证码类型
  GALATEA_FORGETPWD_CAPTCHA("FORGETPWD_CODE", "GALATEA", "SMS_2145xxx55", "商户忘记密码验证码类型"),
  // 商户校验原手机号验证码类型
  GALATEA_VALIDPHINE_CAPTCHA("VALIDPHONE_CODE", "GALATEA", "SMS_214xxx3", "商户校验原手机号验证码类型"),
  // APP登录
  APP_LOGIN_CAPTCHA("LOGIN_CODE", "ALBUS_AUTH", "SMS_214xxxx95", " APP登录"),
  // APP重置密码类型
  APP_RESETPWD_CAPTCHA("RESETPWD_CODE", "ALBUS_AUTH", "SMS_214xxxx4", "APP重置密码类型"),
  // APP换绑手机验证码类型
  APP_EXCHANGEPHONE_CAPTCHA("EXCHANGEPHONE_CODE", "ALBUS_AUTH", "SMS_21xxxx35", "APP换绑手机验证码类型"),
  // APP忘记密码验证码类型
  APP_FORGETPWD_CAPTCHA("FORGETPWD_CODE", "ALBUS_AUTH", "SMS_214xxxx4", "APP忘记密码验证码类型"),
  // APP校验原手机号验证码类型
  APP_VALIDPHINE_CAPTCHA("VALIDPHONE_CODE", "ALBUS_AUTH", "SMS_214xxxx32", " APP校验原手机号验证码类型");

  SmsTemplaEnum(String type, String platform, String tempCode, String description) {
    this.type = type;
    this.platform = platform;
    this.tempCode = tempCode;
    this.description = description;
  }

  /** 类型 */
  private final String type;

  /** 平台 */
  private final String platform;

  /** 模板code */
  private final String tempCode;

  /** 描述 */
  private final String description;
  /**
   * 获取模板code
   *
   * @param type 类型
   * @param platform 平台
   * @return tempCode 模板code
   */
  public static String getTemplaCode(String type, String platform) {
    log.info("type:{}", type);
    log.info("platform:{}", platform);
    if (StringUtils.isBlank(type) || StringUtils.isBlank(platform)) {
      return null;
    }
    for (SmsTemplaEnum smsTemplaEnum : SmsTemplaEnum.values()) {
      if (type.equals(smsTemplaEnum.type) && platform.equals(smsTemplaEnum.platform)) {
        String code = smsTemplaEnum.tempCode;
        log.info("code:{}", code);
        return code;
      }
    }
    return null;
  }

 

posted @ 2021-04-16 15:15  Java9527  阅读(354)  评论(0编辑  收藏  举报