package com.hotent.project.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 java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.fasterxml.jackson.annotation.JsonProperty;
/**
 * 任务定制-成本监审立项主表
 *
 * @company 山西清众科技股份有限公司
 * @author 超级管理员
 * @since 2025-10-09
 */
@ApiModel(value="CostProjectTaskApproval对象", description="任务定制-成本监审立项主表")
public class CostProjectTaskApproval extends BaseModel<CostProjectTaskApproval> {

    private static final long serialVersionUID = 1L;
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    @JsonProperty("id")
    private String id;
    
    @ApiModelProperty(value = "主键ID")
    @TableField("project_id")
    @JsonProperty("projectId")
    private String projectId;
    
    @ApiModelProperty(value = "成本监审项目名称")
    @TableField("project_name")
    @JsonProperty("projectName")
    private String projectName;
    
    @ApiModelProperty(value = "关联成本监审目录ID")
    @TableField("catalog_id")
    @JsonProperty("catalogId")
    private String catalogId;
    
    @ApiModelProperty(value = "计划id")
    @TableField("plan_id")
    @JsonProperty("planId")
    private String planId;
    
    @ApiModelProperty(value = "区域编码")
    @TableField("area_code")
    @JsonProperty("areaCode")
    private String areaCode;
    
    @ApiModelProperty(value = "区域级别")
    @TableField("area_level")
    @JsonProperty("areaLevel")
    private String areaLevel;
    
    @ApiModelProperty(value = "监审主体")
    @TableField("org_id")
    @JsonProperty("orgId")
    private String orgId;
    
    @ApiModelProperty(value = "归属年度")
    @TableField("project_year")
    @JsonProperty("projectYear")
    private String projectYear;
    
    @ApiModelProperty(value = "立项来源")
    @TableField("source_type")
    @JsonProperty("sourceType")
    private String sourceType;
    
    @ApiModelProperty(value = "监审形式")
    @TableField("audit_type")
    @JsonProperty("auditType")
    private String auditType;
    
    @ApiModelProperty(value = "监审期间")
    @TableField("audit_period")
    @JsonProperty("auditPeriod")
    private String auditPeriod;
    
    @ApiModelProperty(value = "是否参加听证")
    @TableField("need_hearing")
    @JsonProperty("needHearing")
    private String needHearing;
    
    @ApiModelProperty(value = "是否应急项目")
    @TableField("is_emergency")
    @JsonProperty("isEmergency")
    private String isEmergency;
    
    @ApiModelProperty(value = "立项理由")
    @TableField("establishment_reason")
    @JsonProperty("establishmentReason")
    private String establishmentReason;
    
    @ApiModelProperty(value = "立项依据")
    @TableField("according_file_url")
    @JsonProperty("accordingFileUrl")
    private String accordingFileUrl;
    
    @ApiModelProperty(value = "其他专家")
    @TableField("other_file_url")
    @JsonProperty("otherFileUrl")
    private String otherFileUrl;
    
    @ApiModelProperty(value = "项目状态 1待发布 2已发布")
    @TableField("status")
    @JsonProperty("status")
    private String status;
    
    @ApiModelProperty(value = "监审任务负责人ID")
    @TableField("leader_id")
    @JsonProperty("leaderId")
    private String leaderId;
    
    @ApiModelProperty(value = "专家姓名")
    @TableField("expert_str")
    @JsonProperty("expertStr")
    private String expertStr;
    
    @ApiModelProperty(value = "逻辑删除：0正常 1删除")
    @TableField("is_deleted")
    @JsonProperty("isDeleted")
    private String isDeleted;
    
    @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("project_members")
    @JsonProperty("projectMembers")
    private String projectMembers;
    
    @ApiModelProperty(value = "监审单位")
    @TableField("audited_unit_id")
    @JsonProperty("auditedUnitId")
    private String auditedUnitId;
    
    @ApiModelProperty(value = "序号")
    @TableField("order_num")
    @JsonProperty("orderNum")
    private Integer orderNum;
    
    @ApiModelProperty(value = "发送方式1站内消息2短信消息")
    @TableField("send_type")
    @JsonProperty("sendType")
    private String sendType;
    
    @ApiModelProperty(value = "监审组人员")
    @TableField("audit_group")
    @JsonProperty("auditGroup")
    private String auditGroup;

    @ApiModelProperty(value = "任务id")
    @TableField("task_id")
    @JsonProperty("taskId")
    private String taskId;


    public String getTaskId() {
        return taskId;
    }

    public void setTaskId(String taskId) {
        this.taskId = taskId;
    }

    public String getId() {
        return id;
    }

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

    public void setProjectId(String projectId) {
        this.projectId = projectId;
    }
    public String getProjectName() {
        return projectName;
    }

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

    public void setCatalogId(String catalogId) {
        this.catalogId = catalogId;
    }
    public String getPlanId() {
        return planId;
    }

    public void setPlanId(String planId) {
        this.planId = planId;
    }
    public String getAreaCode() {
        return areaCode;
    }

    public void setAreaCode(String areaCode) {
        this.areaCode = areaCode;
    }
    public String getAreaLevel() {
        return areaLevel;
    }

    public void setAreaLevel(String areaLevel) {
        this.areaLevel = areaLevel;
    }
    public String getOrgId() {
        return orgId;
    }

    public void setOrgId(String orgId) {
        this.orgId = orgId;
    }
    public String getProjectYear() {
        return projectYear;
    }

    public void setProjectYear(String projectYear) {
        this.projectYear = projectYear;
    }
    public String getSourceType() {
        return sourceType;
    }

    public void setSourceType(String sourceType) {
        this.sourceType = sourceType;
    }
    public String getAuditType() {
        return auditType;
    }

    public void setAuditType(String auditType) {
        this.auditType = auditType;
    }
    public String getAuditPeriod() {
        return auditPeriod;
    }

    public void setAuditPeriod(String auditPeriod) {
        this.auditPeriod = auditPeriod;
    }
    public String getNeedHearing() {
        return needHearing;
    }

    public void setNeedHearing(String needHearing) {
        this.needHearing = needHearing;
    }
    public String getIsEmergency() {
        return isEmergency;
    }

    public void setIsEmergency(String isEmergency) {
        this.isEmergency = isEmergency;
    }
    public String getEstablishmentReason() {
        return establishmentReason;
    }

    public void setEstablishmentReason(String establishmentReason) {
        this.establishmentReason = establishmentReason;
    }
    public String getAccordingFileUrl() {
        return accordingFileUrl;
    }

    public void setAccordingFileUrl(String accordingFileUrl) {
        this.accordingFileUrl = accordingFileUrl;
    }
    public String getOtherFileUrl() {
        return otherFileUrl;
    }

    public void setOtherFileUrl(String otherFileUrl) {
        this.otherFileUrl = otherFileUrl;
    }
    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }
    public String getLeaderId() {
        return leaderId;
    }

    public void setLeaderId(String leaderId) {
        this.leaderId = leaderId;
    }
    public String getExpertStr() {
        return expertStr;
    }

    public void setExpertStr(String expertStr) {
        this.expertStr = expertStr;
    }
    public String getIsDeleted() {
        return isDeleted;
    }

    public void setIsDeleted(String isDeleted) {
        this.isDeleted = isDeleted;
    }
    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 getProjectMembers() {
        return projectMembers;
    }

    public void setProjectMembers(String projectMembers) {
        this.projectMembers = projectMembers;
    }
    public String getAuditedUnitId() {
        return auditedUnitId;
    }

    public void setAuditedUnitId(String auditedUnitId) {
        this.auditedUnitId = auditedUnitId;
    }
    public Integer getOrderNum() {
        return orderNum;
    }

    public void setOrderNum(Integer orderNum) {
        this.orderNum = orderNum;
    }
    public String getSendType() {
        return sendType;
    }

    public void setSendType(String sendType) {
        this.sendType = sendType;
    }
    public String getAuditGroup() {
        return auditGroup;
    }

    public void setAuditGroup(String auditGroup) {
        this.auditGroup = auditGroup;
    }


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

    @Override
    public String toString() {
        return "CostProjectTaskApproval{" +
            "id=" + id +
            ", projectId=" + projectId +
            ", projectName=" + projectName +
            ", catalogId=" + catalogId +
            ", planId=" + planId +
            ", areaCode=" + areaCode +
            ", areaLevel=" + areaLevel +
            ", orgId=" + orgId +
            ", projectYear=" + projectYear +
            ", sourceType=" + sourceType +
            ", auditType=" + auditType +
            ", auditPeriod=" + auditPeriod +
            ", needHearing=" + needHearing +
            ", isEmergency=" + isEmergency +
            ", establishmentReason=" + establishmentReason +
            ", accordingFileUrl=" + accordingFileUrl +
            ", otherFileUrl=" + otherFileUrl +
            ", status=" + status +
            ", leaderId=" + leaderId +
            ", expertStr=" + expertStr +
            ", isDeleted=" + isDeleted +
            ", createTime=" + createTime +
            ", createBy=" + createBy +
            ", updateTime=" + updateTime +
            ", updateBy=" + updateBy +
            ", projectMembers=" + projectMembers +
            ", auditedUnitId=" + auditedUnitId +
            ", orderNum=" + orderNum +
            ", sendType=" + sendType +
            ", auditGroup=" + auditGroup +
        "}";
    }
}
