package com.fs.common.config;

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

/**
 * 短信配置属性类
 *
 * @author your-name
 */
@Component
@ConfigurationProperties(prefix = "sms")
public class SmsProperties {

    /** 短信网关地址 */
    private String url;

    /** 账号 */
    private String account;

    /** 密码 */
    private String password;

    /** 虚拟接入码 */
    private String extno;

    /** 短信签名 */
    private String sign;

    /** 验证码长度 */
    private Integer codeLength = 6;

    /** 验证码有效期（分钟） */
    private Integer expireMinutes = 5;

    /** 发送间隔限制（秒） */
    private Integer intervalSeconds = 60;

    /** 短信模板 */
    private String template;

    // ==================== Getter & Setter ====================

    public String getUrl() {
        return url;
    }

    public void setUrl(String url) {
        this.url = url;
    }

    public String getAccount() {
        return account;
    }

    public void setAccount(String account) {
        this.account = account;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getExtno() {
        return extno;
    }

    public void setExtno(String extno) {
        this.extno = extno;
    }

    public String getSign() {
        return sign;
    }

    public void setSign(String sign) {
        this.sign = sign;
    }

    public Integer getCodeLength() {
        return codeLength;
    }

    public void setCodeLength(Integer codeLength) {
        this.codeLength = codeLength;
    }

    public Integer getExpireMinutes() {
        return expireMinutes;
    }

    public void setExpireMinutes(Integer expireMinutes) {
        this.expireMinutes = expireMinutes;
    }

    public Integer getIntervalSeconds() {
        return intervalSeconds;
    }

    public void setIntervalSeconds(Integer intervalSeconds) {
        this.intervalSeconds = intervalSeconds;
    }

    public String getTemplate() {
        return template;
    }

    public void setTemplate(String template) {
        this.template = template;
    }
}
