package org.xyzh.common.dto.system;

import org.xyzh.common.dto.BaseDTO;

/**
 * @description 系统配置表
 * @filename TbSysConfig.java
 * @author yslg
 * @copyright xyzh
 * @since 2025-10-15
 */
public class TbSysConfig extends BaseDTO {
    
    private static final long serialVersionUID = 1L;
    
    /**
     * @description 配置键
     */
    private String configKey;
    
    /**
     * @description 配置显示名称
     */
    private String configName;
    
    /**
     * @description 配置值
     */
    private String configValue;
    
    /**
     * @description 数据类型（string/number/boolean/json）
     */
    private String configType;
    
    /**
     * @description 前端渲染类型（input/textarea/number/switch/select/password）
     */
    private String renderType;
    
    /**
     * @description 配置分组
     */
    private String configGroup;
    
    /**
     * @description 配置描述
     */
    private String description;
    
    /**
     * @description 输入框占位符
     */
    private String placeholder;
    
    /**
     * @description 备注说明（显示在表单项下方）
     */
    private String remark;
    
    /**
     * @description 文本框行数（textarea用）
     */
    private Integer rows;
    
    /**
     * @description 最小值（number用）
     */
    private Integer minValue;
    
    /**
     * @description 最大值（number用）
     */
    private Integer maxValue;
    
    /**
     * @description 单位（number用）
     */
    private String unit;
    
    /**
     * @description 下拉选项（select用，JSON格式）
     */
    private String options;
    
    /**
     * @description 排序号
     */
    private Integer orderNum;
    
    /**
     * @description 是否系统配置
     */
    private Boolean isSystem;
    
    /**
     * @description 创建者
     */
    private String creator;
    
    /**
     * @description 更新者
     */
    private String updater;

    public String getConfigKey() {
        return configKey;
    }

    public void setConfigKey(String configKey) {
        this.configKey = configKey;
    }

    public String getConfigValue() {
        return configValue;
    }

    public void setConfigValue(String configValue) {
        this.configValue = configValue;
    }

    public String getConfigType() {
        return configType;
    }

    public void setConfigType(String configType) {
        this.configType = configType;
    }

    public String getConfigGroup() {
        return configGroup;
    }

    public void setConfigGroup(String configGroup) {
        this.configGroup = configGroup;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public Boolean getIsSystem() {
        return isSystem;
    }

    public void setIsSystem(Boolean isSystem) {
        this.isSystem = isSystem;
    }

    public String getCreator() {
        return creator;
    }

    public void setCreator(String creator) {
        this.creator = creator;
    }

    public String getUpdater() {
        return updater;
    }

    public void setUpdater(String updater) {
        this.updater = updater;
    }

    public String getConfigName() {
        return configName;
    }

    public void setConfigName(String configName) {
        this.configName = configName;
    }

    public String getRenderType() {
        return renderType;
    }

    public void setRenderType(String renderType) {
        this.renderType = renderType;
    }

    public String getPlaceholder() {
        return placeholder;
    }

    public void setPlaceholder(String placeholder) {
        this.placeholder = placeholder;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public Integer getRows() {
        return rows;
    }

    public void setRows(Integer rows) {
        this.rows = rows;
    }

    public Integer getMinValue() {
        return minValue;
    }

    public void setMinValue(Integer minValue) {
        this.minValue = minValue;
    }

    public Integer getMaxValue() {
        return maxValue;
    }

    public void setMaxValue(Integer maxValue) {
        this.maxValue = maxValue;
    }

    public String getUnit() {
        return unit;
    }

    public void setUnit(String unit) {
        this.unit = unit;
    }

    public String getOptions() {
        return options;
    }

    public void setOptions(String options) {
        this.options = options;
    }

    public Integer getOrderNum() {
        return orderNum;
    }

    public void setOrderNum(Integer orderNum) {
        this.orderNum = orderNum;
    }

    @Override
    public String toString() {
        return "TbSysConfig{" +
                "id=" + getID() +
                ", configKey='" + configKey + '\'' +
                ", configName='" + configName + '\'' +
                ", configValue='" + configValue + '\'' +
                ", configType='" + configType + '\'' +
                ", renderType='" + renderType + '\'' +
                ", configGroup='" + configGroup + '\'' +
                ", orderNum=" + orderNum +
                ", isSystem=" + isSystem +
                '}';
    }
}
