package com.ruoyi.project.domain;

import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 文档对象 biz_doc
 * 
 * @author ruoyi
 * @date 2025-08-28
 */
public class BizDoc extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 文档ID */
    private Long docId;

    /** 项目ID */
    private Long projectId;

    /** 模块ID */
    private Long moduleId;

    /** 文档类型 0项目文档 1模块文档 */
    private String kindType;

    /** 文档名称 */
    private String docName;

    /** 文档路径 */
    private String docPath;

    /** 文档大小 */
    private Long docSize;

    /** 文档类型 */
    private String docType;

    /** 文档内容（二进制） */
    private byte[] docContent;

    /** 软删除标志 */
    private String delFlag;

    /** 项目名称（展示用） */
    private String projectName;

    public void setDocId(Long docId) 
    {
        this.docId = docId;
    }

    public Long getDocId() 
    {
        return docId;
    }
    public void setProjectId(Long projectId) 
    {
        this.projectId = projectId;
    }

    public Long getProjectId() 
    {
        return projectId;
    }
    public void setModuleId(Long moduleId) 
    {
        this.moduleId = moduleId;
    }

    public Long getModuleId() 
    {
        return moduleId;
    }
    public void setKindType(String kindType) 
    {
        this.kindType = kindType;
    }

    public String getKindType() 
    {
        return kindType;
    }
    public void setDocName(String docName) 
    {
        this.docName = docName;
    }

    public String getDocName() 
    {
        return docName;
    }
    public void setDocPath(String docPath) 
    {
        this.docPath = docPath;
    }

    public String getDocPath() 
    {
        return docPath;
    }
    public void setDocSize(Long docSize) 
    {
        this.docSize = docSize;
    }

    public Long getDocSize() 
    {
        return docSize;
    }
    public void setDocType(String docType) 
    {
        this.docType = docType;
    }

    public String getDocType() 
    {
        return docType;
    }
    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }

    public byte[] getDocContent()
    {
        return docContent;
    }

    public void setDocContent(byte[] docContent)
    {
        this.docContent = docContent;
    }

    public String getProjectName()
    {
        return projectName;
    }

    public void setProjectName(String projectName)
    {
        this.projectName = projectName;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("docId", getDocId())
            .append("projectId", getProjectId())
            .append("moduleId", getModuleId())
            .append("kindType", getKindType())
            .append("docName", getDocName())
            .append("docPath", getDocPath())
            .append("docSize", getDocSize())
            .append("docType", getDocType())
            .append("docContent", getDocContent() == null ? null : (getDocContent().length + " bytes"))
            .append("delFlag", getDelFlag())
            .append("projectName", getProjectName())
            .toString();
    }
}