package com.xmomen.module.system.entity;

import com.xmomen.framework.mybatis.model.BaseMybatisModel;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Version;

@Entity
@Table(name = "sys_dictionary_parameter")
public class SysDictionaryParameter extends BaseMybatisModel {
    /**
     *  主键
     */
    private Integer id;

    /**
     * 字典
     */
    private Integer sysDictionaryId;

    /**
     * 显示值
     */
    private String showValue;

    /**
     * 实际值
     */
    private String realValue;

    /**
     * 排位
     */
    private Integer sortValue;

    /**
     * 0-禁用，1-启用
     */
    private Integer available;

    // 定义ID列
    @Column(name = "ID")
    // 定义主键
    @Id
    // 使用UUID生成器生成ID
    @GeneratedValue(generator = "UUIDGenerator")
    public Integer getId() {
        // 返回ID
        return id;
    }

    // 设置ID
    public void setId(Integer id) {
        // 将传入的ID赋值给成员变量
        this.id = id;
        // 如果ID为空
        if(id == null){
              // 移除验证字段
              removeValidField("id");
              // 返回
              return;
        }
        // 添加验证字段
        addValidField("id");
    }
    // 获取系统字典ID

    @Column(name = "SYS_DICTIONARY_ID")
    public Integer getSysDictionaryId() {
        return sysDictionaryId;
    }
    // 设置系统字典ID

    public void setSysDictionaryId(Integer sysDictionaryId) {
        this.sysDictionaryId = sysDictionaryId;
              // 如果系统字典ID为空，则移除有效字段
        if(sysDictionaryId == null){
              removeValidField("sysDictionaryId");
              return;
        }
        addValidField("sysDictionaryId");
    }

    // 获取showValue属性
    @Column(name = "SHOW_VALUE")
    public String getShowValue() {
        return showValue;
    }

    // 设置showValue属性
    public void setShowValue(String showValue) {
        this.showValue = showValue;
        // 如果showValue为空，则移除有效字段
        if(showValue == null){
              removeValidField("showValue");
              return;
        }
        // 否则，添加有效字段
        addValidField("showValue");
    }
    // 注释：获取REAL_VALUE字段的值

    @Column(name = "REAL_VALUE")
    public String getRealValue() {
        return realValue;
    }
    // 注释：设置REAL_VALUE字段的值

    public void setRealValue(String realValue) {
        // 注释：如果realValue为空，则移除validField中的realValue字段
        this.realValue = realValue;
        if(realValue == null){
              removeValidField("realValue");
              return;
        // 注释：否则，将realValue字段添加到validField中
        }
        addValidField("realValue");
    // 注释：获取排序值
    }

    @Column(name = "SORT_VALUE")
    public Integer getSortValue() {
        return sortValue;
    // 注释：设置排序值
    }

        // 注释：如果排序值为空，则移除有效字段
    public void setSortValue(Integer sortValue) {
        this.sortValue = sortValue;
        if(sortValue == null){
              removeValidField("sortValue");
        // 注释：否则添加有效字段
              return;
        }
        addValidField("sortValue");
    }

    // 获取AVAILABLE字段的值
    @Column(name = "AVAILABLE")
    public Integer getAvailable() {
        return available;
    }

    // 设置AVAILABLE字段的值
    public void setAvailable(Integer available) {
        this.available = available;
        // 如果available为null，则移除available字段
        if(available == null){
              removeValidField("available");
              return;
        }
        // 否则，添加available字段
        addValidField("available");
    }
}