BaseEntity.java 2.21 KB
package com.xly.erp.common.base;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 标准列公共字段基类(docs/03 标准列 + docs/04 § 3.4)。
 *
 * <p>REQ-USR-001 T3:所有业务实体复用的公共列——整数主键、业务 ID、多租户隔离列、创建时间。
 * {@code tCreateDate} 在 INSERT 时由 MybatisPlusConfig 的 MetaObjectHandler 自动填充。</p>
 */
public abstract class BaseEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    /** 整数主键 ID(标准列,自增)。 */
    @TableId(value = "iIncrement", type = IdType.AUTO)
    private Integer iIncrement;

    /** 业务 ID(标准列,可空)。 */
    @TableField("sId")
    private String sId;

    /** 品牌 ID,多租户隔离(标准列,DB 默认 1111111111)。 */
    @TableField("sBrandsId")
    private String sBrandsId;

    /** 子公司 ID,组织层级隔离(标准列,DB 默认 1111111111)。 */
    @TableField("sSubsidiaryId")
    private String sSubsidiaryId;

    /** 创建时间(标准列,INSERT 自动填充)。 */
    @TableField(value = "tCreateDate", fill = FieldFill.INSERT)
    private LocalDateTime tCreateDate;

    public Integer getIIncrement() {
        return iIncrement;
    }

    public void setIIncrement(Integer iIncrement) {
        this.iIncrement = iIncrement;
    }

    public String getSId() {
        return sId;
    }

    public void setSId(String sId) {
        this.sId = sId;
    }

    public String getSBrandsId() {
        return sBrandsId;
    }

    public void setSBrandsId(String sBrandsId) {
        this.sBrandsId = sBrandsId;
    }

    public String getSSubsidiaryId() {
        return sSubsidiaryId;
    }

    public void setSSubsidiaryId(String sSubsidiaryId) {
        this.sSubsidiaryId = sSubsidiaryId;
    }

    public LocalDateTime getTCreateDate() {
        return tCreateDate;
    }

    public void setTCreateDate(LocalDateTime tCreateDate) {
        this.tCreateDate = tCreateDate;
    }
}