package com.hotent.enterpriseDeclare.model;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.hotent.base.entity.BaseModel;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.fasterxml.jackson.annotation.JsonProperty;
/**
 * 项目流程资料数据表
 *
 * @author 超级管理员
 * @since 2025-10-28
 */
@ApiModel(value="CostProjectTaskMaterialData对象", description="项目流程资料数据表")
public class CostProjectTaskMaterialData extends BaseModel<CostProjectTaskMaterialData> {

    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "主键ID")
    @TableId(value = "id", type = IdType.AUTO)
    @JsonProperty("id")
    private Long id;

    @ApiModelProperty(value = "企业ID")
    @TableField("audited_unit_id")
    @JsonProperty("auditedUnitId")
    private Long auditedUnitId;

    @ApiModelProperty(value = "用户ID")
    @TableField("user_id")
    @JsonProperty("userId")
    private Long userId;

    @ApiModelProperty(value = "对应的资料规则ID")
    @TableField("task_material_id")
    @JsonProperty("taskMaterialId")
    private Long taskMaterialId;

    @ApiModelProperty(value = "任务ID")
    @TableField("task_id")
    @JsonProperty("taskId")
    private Long taskId;

    @ApiModelProperty(value = "模板ID")
    @TableField("template_id")
    @JsonProperty("templateId")
    private Long templateId;

    @ApiModelProperty(value = "资料类型")
    @TableField("material_type")
    @JsonProperty("materialType")
    private String materialType;

    @ApiModelProperty(value = "附件地址")
    @TableField("attachment_url")
    @JsonProperty("attachmentUrl")
    private String attachmentUrl;

    @ApiModelProperty(value = "附件后缀")
    @TableField("attachment_suffix")
    @JsonProperty("attachmentSuffix")
    private String attachmentSuffix;

    @ApiModelProperty(value = "审核状态")
    @TableField("audit_status")
    @JsonProperty("auditStatus")
    private String auditStatus;

    @ApiModelProperty(value = "上传时间")
    @TableField("upload_time")
    @JsonProperty("uploadTime")
    private LocalDateTime uploadTime;

    @ApiModelProperty(value = "创建时间")
    @TableField("create_time")
    @JsonProperty("createTime")
    private LocalDateTime createTime;

    @ApiModelProperty(value = "创建人")
    @TableField("create_by_")
    @JsonProperty("createBy")
    private String createBy;

    @ApiModelProperty(value = "更新时间")
    @TableField("update_time")
    @JsonProperty("updateTime")
    private LocalDateTime updateTime;

    @ApiModelProperty(value = "更新人")
    @TableField("update_by_")
    @JsonProperty("updateBy")
    private String updateBy;

    @ApiModelProperty(value = "备注")
    @TableField("remark")
    @JsonProperty("remark")
    private String remark;


    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }
    public Long getAuditedUnitId() {
        return auditedUnitId;
    }

    public void setAuditedUnitId(Long auditedUnitId) {
        this.auditedUnitId = auditedUnitId;
    }
    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }
    public Long getTaskMaterialId() {
        return taskMaterialId;
    }

    public void setTaskMaterialId(Long taskMaterialId) {
        this.taskMaterialId = taskMaterialId;
    }
    public Long getTaskId() {
        return taskId;
    }

    public void setTaskId(Long taskId) {
        this.taskId = taskId;
    }
    public Long getTemplateId() {
        return templateId;
    }

    public void setTemplateId(Long templateId) {
        this.templateId = templateId;
    }
    public String getMaterialType() {
        return materialType;
    }

    public void setMaterialType(String materialType) {
        this.materialType = materialType;
    }
    public String getAttachmentUrl() {
        return attachmentUrl;
    }

    public void setAttachmentUrl(String attachmentUrl) {
        this.attachmentUrl = attachmentUrl;
    }
    public String getAttachmentSuffix() {
        return attachmentSuffix;
    }

    public void setAttachmentSuffix(String attachmentSuffix) {
        this.attachmentSuffix = attachmentSuffix;
    }
    public String getAuditStatus() {
        return auditStatus;
    }

    public void setAuditStatus(String auditStatus) {
        this.auditStatus = auditStatus;
    }
    public LocalDateTime getUploadTime() {
        return uploadTime;
    }

    public void setUploadTime(LocalDateTime uploadTime) {
        this.uploadTime = uploadTime;
    }
    public LocalDateTime getCreateTime() {
        return createTime;
    }

    public void setCreateTime(LocalDateTime createTime) {
        this.createTime = createTime;
    }
    public String getCreateBy() {
        return createBy;
    }

    public void setCreateBy(String createBy) {
        this.createBy = createBy;
    }
    public LocalDateTime getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(LocalDateTime updateTime) {
        this.updateTime = updateTime;
    }
    public String getUpdateBy() {
        return updateBy;
    }

    public void setUpdateBy(String updateBy) {
        this.updateBy = updateBy;
    }
    public String getRemark() {
        return remark;
    }

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


    @Override
    protected Serializable pkVal() {
        return this.id;
    }

    @Override
    public String toString() {
        return "CostProjectTaskMaterialData{" +
            "id=" + id +
            ", auditedUnitId=" + auditedUnitId +
            ", userId=" + userId +
            ", taskMaterialId=" + taskMaterialId +
            ", taskId=" + taskId +
            ", templateId=" + templateId +
            ", materialType=" + materialType +
            ", attachmentUrl=" + attachmentUrl +
            ", attachmentSuffix=" + attachmentSuffix +
            ", auditStatus=" + auditStatus +
            ", uploadTime=" + uploadTime +
            ", createTime=" + createTime +
            ", createBy=" + createBy +
            ", updateTime=" + updateTime +
            ", updateBy=" + updateBy +
            ", remark=" + remark +
        "}";
    }
}
