package com.agri.system.domain;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.baomidou.mybatisplus.annotation.TableName;
import com.agri.common.annotation.Excel;
import com.agri.common.core.domain.BaseEntity;

import java.math.BigDecimal;
import java.util.Map;

/**
 * dtu设备备注对象 sys_dtu_remark_bak
 * 
 * @author lld
 * @date 2026-03-17
 */
@TableName("sys_dtu_remark_bak")
public class SysDtuRemarkBak extends BaseEntity
{
    @TableField(exist = false)
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    @TableId(type = IdType.ASSIGN_ID)
    @JsonSerialize(using = ToStringSerializer.class)
    private String id;

    /** imei */
    @Excel(name = "imei")
    private String imei;

    /** 类型 */
    @Excel(name = "类型")
    private String roller;

    /** 备注 */
    @Excel(name = "备注")
    private String remarkShort;

    /** 数据版本号（乐观锁） */
    @Excel(name = "数据版本号", readConverterExp = "乐=观锁")
    @Version
    private String version;

    /** 扩展备注 */
    private String extJson;

    @TableField(exist = false)
    private Map<String, String> remarkMaps;

    public void setId(String id) 
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }

    public void setImei(String imei) 
    {
        this.imei = imei;
    }

    public String getImei() 
    {
        return imei;
    }

    public void setRoller(String roller) 
    {
        this.roller = roller;
    }

    public String getRoller() 
    {
        return roller;
    }

    public void setRemarkShort(String remarkShort) 
    {
        this.remarkShort = remarkShort;
    }

    public String getRemarkShort() 
    {
        return remarkShort;
    }

    public void setVersion(String version) 
    {
        this.version = version;
    }

    public String getVersion() 
    {
        return version;
    }

    public void setExtJson(String extJson) 
    {
        this.extJson = extJson;
    }

    public String getExtJson() 
    {
        return extJson;
    }

    public Map<String, String> getRemarkMaps() {
        return remarkMaps;
    }

    public void setRemarkMaps(Map<String, String> remarkMaps) {
        this.remarkMaps = remarkMaps;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("imei", getImei())
            .append("roller", getRoller())
            .append("remarkShort", getRemarkShort())
            .append("version", getVersion())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("extJson", getExtJson())
            .append("remark", getRemark())
            .toString();
    }
}
