package com.sunxung.factoring.entity.project;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.sunxung.factoring.entity.BaseEntity;
import com.sunxung.factoring.entity.project.vo.*;
import com.sunxung.factoring.entity.supplier.CRegStock;

import java.math.BigDecimal;
import java.util.List;

/**
 * <p>
 * 项目企业审核
 * </p>
 *
 * @author liutao
 * @since 2023-12-15
 */
@TableName("project_audit")
public class ProjectAudit extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * c端 项目信息id
     */
    @TableField("c_project_information_id")
    private Long cProjectInformationId;

    /**
     * 企业性质
     */
    @TableField("enterprise_nature")
    private String enterpriseNature;

    /**
     * 上市公司类型
     */
    @TableField("enterprise_nature_detail")
    private String enterpriseNatureDetail;

    /**
     * 控股比例
     */
    @TableField("holding_ratio")
    private String holdingRatio;

    /**
     * 股权层级
     */
    @TableField("equity_hierarchy")
    private String equityHierarchy;

    /**
     * 股权层级小类
     */
    @TableField("equity_hierarchy_detail")
    private String equityHierarchyDetail;

    /**
     * 信用评级
     */
    @TableField("credit_rating")
    private String creditRating;

    /**
     * 历史涉诉数量
     */
    @TableField("involving_Litigation_access_count")
    private Long involvingLitigationAccessCcount;

    /**
     * 行政处罚数量
     */
    @TableField("administrative_penalty_access_count")
    private Long administrativePenaltyAccessCcount;

    /**
     * 行政处罚金额
     */
    @TableField("administrative_penalty_amount")
    private BigDecimal administrativePenaltyAmount;

    /**
     * 环保处罚金额
     */
    @TableField("environmental_penalty_amount")
    private BigDecimal environmentalPenaltyAmount;

    /**
     * 历史涉诉数量准入 0否 1 是
     */
    @TableField("involving_litigation_access")
    private Integer involvingLitigationAccess;

    /**
     * 行政处罚数量准入 0否 1 是
     */
    @TableField("administrative_penalty_access")
    private Integer administrativePenaltyAccess;

    /**
     * 行政处罚金额准入 0否 1 是
     */
    @TableField("administrative_penalty_amount_access")
    private Integer administrativePenaltyAmountAccess;

    /**
     * 环保处罚金额准入 0否 1 是
     */
    @TableField("environmental_penalty_amount_access")
    private Integer environmentalPenaltyAmountAccess;

    /**
     * 评估意见
     */
    @TableField("evaluation_opinions")
    private String evaluationOpinions;


    /**
     *  暂存 0暂存 1提交
     */
    @TableField("visible")
    private Integer visible;

    @TableField(exist = false)
    private ProjectOwnerComprehensiveEvaluation projectOwnerComprehensiveEvaluation;

    /**
     * 项目信息
     */
    @TableField(exist = false)
    private ProjectInformation projectInformation;

    /**
     * 实控人
     */
    @TableField(exist = false)
    private List<CActualControllerList> actualControllerList;

    /**
     * 股东信息
     */
    @TableField(exist = false)
    private List<CRegStock> regStocks;

    @TableField(exist = false)
    private List<CEquityFreezeData> equityFreezeDataList;
    @TableField(exist = false)
    private List<CJudgmentDocuments> privateLendings;
    @TableField(exist = false)
    private List<CJudgmentDocuments> majorAnomalies;
    @TableField(exist = false)
    private List<CSeriousIllegalData> seriousIllegalData;
    @TableField(exist = false)
    private List<CTaxOweNoticeData> taxOweNoticeData;
    @TableField(exist = false)
    private List<CTaxIllegalData> taxIllegalData;
    @TableField(exist = false)
    private List<CBlacklist> blacklists;
    @TableField(exist = false)
    private List<CExceptionData> exceptionData;
    @TableField(exist = false)
    private List<CNews> news;

    @TableField(exist = false)
    private List<ProjectOwnerPrivateLending> projectOwnerPrivateLendings;
    @TableField(exist = false)
    private List<ProjectOwnerEquityFreeze> projectOwnerEquityFreezes;
    @TableField(exist = false)
    private List<ProjectOwnerMajorAbnormalLitigation> projectOwnerMajorAbnormalLitigations;
    @TableField(exist = false)
    private List<ProjectOwnerSeriousIllegality> projectOwnerSeriousIllegalities;
    @TableField(exist = false)
    private List<ProjectOwnerTaxOweNotice> projectOwnerTaxOweNotices;
    @TableField(exist = false)
    private List<ProjectOwnerTaxIllegalData> projectOwnerTaxIllegalDataList;
    @TableField(exist = false)
    private List<ProjectOwnerBlacklist> projectOwnerBlacklists;
    @TableField(exist = false)
    private List<ProjectOwnerExceptionData> projectOwnerExceptionDataList;
    @TableField(exist = false)
    private List<ProjectOwnerNews> projectOwnerNewsList;
    /**
     * taskId
     */
    @TableField(exist = false)
    private String taskId;

    public List<CRegStock> getRegStocks() {
        return regStocks;
    }

    public void setRegStocks(List<CRegStock> regStocks) {
        this.regStocks = regStocks;
    }

    public String getTaskId() {
        return taskId;
    }

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

    public ProjectOwnerComprehensiveEvaluation getProjectOwnerComprehensiveEvaluation() {
        return projectOwnerComprehensiveEvaluation;
    }

    public void setProjectOwnerComprehensiveEvaluation(ProjectOwnerComprehensiveEvaluation projectOwnerComprehensiveEvaluation) {
        this.projectOwnerComprehensiveEvaluation = projectOwnerComprehensiveEvaluation;
    }

    public List<ProjectOwnerPrivateLending> getProjectOwnerPrivateLendings() {
        return projectOwnerPrivateLendings;
    }

    public void setProjectOwnerPrivateLendings(List<ProjectOwnerPrivateLending> projectOwnerPrivateLendings) {
        this.projectOwnerPrivateLendings = projectOwnerPrivateLendings;
    }

    public List<ProjectOwnerEquityFreeze> getProjectOwnerEquityFreezes() {
        return projectOwnerEquityFreezes;
    }

    public void setProjectOwnerEquityFreezes(List<ProjectOwnerEquityFreeze> projectOwnerEquityFreezes) {
        this.projectOwnerEquityFreezes = projectOwnerEquityFreezes;
    }

    public List<ProjectOwnerMajorAbnormalLitigation> getProjectOwnerMajorAbnormalLitigations() {
        return projectOwnerMajorAbnormalLitigations;
    }

    public void setProjectOwnerMajorAbnormalLitigations(List<ProjectOwnerMajorAbnormalLitigation> projectOwnerMajorAbnormalLitigations) {
        this.projectOwnerMajorAbnormalLitigations = projectOwnerMajorAbnormalLitigations;
    }

    public List<ProjectOwnerSeriousIllegality> getProjectOwnerSeriousIllegalities() {
        return projectOwnerSeriousIllegalities;
    }

    public void setProjectOwnerSeriousIllegalities(List<ProjectOwnerSeriousIllegality> projectOwnerSeriousIllegalities) {
        this.projectOwnerSeriousIllegalities = projectOwnerSeriousIllegalities;
    }

    public List<ProjectOwnerTaxOweNotice> getProjectOwnerTaxOweNotices() {
        return projectOwnerTaxOweNotices;
    }

    public void setProjectOwnerTaxOweNotices(List<ProjectOwnerTaxOweNotice> projectOwnerTaxOweNotices) {
        this.projectOwnerTaxOweNotices = projectOwnerTaxOweNotices;
    }

    public List<ProjectOwnerTaxIllegalData> getProjectOwnerTaxIllegalDataList() {
        return projectOwnerTaxIllegalDataList;
    }

    public void setProjectOwnerTaxIllegalDataList(List<ProjectOwnerTaxIllegalData> projectOwnerTaxIllegalDataList) {
        this.projectOwnerTaxIllegalDataList = projectOwnerTaxIllegalDataList;
    }

    public List<ProjectOwnerBlacklist> getProjectOwnerBlacklists() {
        return projectOwnerBlacklists;
    }

    public void setProjectOwnerBlacklists(List<ProjectOwnerBlacklist> projectOwnerBlacklists) {
        this.projectOwnerBlacklists = projectOwnerBlacklists;
    }

    public List<ProjectOwnerExceptionData> getProjectOwnerExceptionDataList() {
        return projectOwnerExceptionDataList;
    }

    public void setProjectOwnerExceptionDataList(List<ProjectOwnerExceptionData> projectOwnerExceptionDataList) {
        this.projectOwnerExceptionDataList = projectOwnerExceptionDataList;
    }

    public List<ProjectOwnerNews> getProjectOwnerNewsList() {
        return projectOwnerNewsList;
    }

    public void setProjectOwnerNewsList(List<ProjectOwnerNews> projectOwnerNewsList) {
        this.projectOwnerNewsList = projectOwnerNewsList;
    }

    public List<CEquityFreezeData> getEquityFreezeDataList() {
        return equityFreezeDataList;
    }

    public void setEquityFreezeDataList(List<CEquityFreezeData> equityFreezeDataList) {
        this.equityFreezeDataList = equityFreezeDataList;
    }

    public List<CJudgmentDocuments> getPrivateLendings() {
        return privateLendings;
    }

    public void setPrivateLendings(List<CJudgmentDocuments> privateLendings) {
        this.privateLendings = privateLendings;
    }

    public List<CJudgmentDocuments> getMajorAnomalies() {
        return majorAnomalies;
    }

    public void setMajorAnomalies(List<CJudgmentDocuments> majorAnomalies) {
        this.majorAnomalies = majorAnomalies;
    }

    public List<CSeriousIllegalData> getSeriousIllegalData() {
        return seriousIllegalData;
    }

    public void setSeriousIllegalData(List<CSeriousIllegalData> seriousIllegalData) {
        this.seriousIllegalData = seriousIllegalData;
    }

    public List<CTaxOweNoticeData> getTaxOweNoticeData() {
        return taxOweNoticeData;
    }

    public void setTaxOweNoticeData(List<CTaxOweNoticeData> taxOweNoticeData) {
        this.taxOweNoticeData = taxOweNoticeData;
    }

    public List<CTaxIllegalData> getTaxIllegalData() {
        return taxIllegalData;
    }

    public void setTaxIllegalData(List<CTaxIllegalData> taxIllegalData) {
        this.taxIllegalData = taxIllegalData;
    }

    public List<CBlacklist> getBlacklists() {
        return blacklists;
    }

    public void setBlacklists(List<CBlacklist> blacklists) {
        this.blacklists = blacklists;
    }

    public List<CExceptionData> getExceptionData() {
        return exceptionData;
    }

    public void setExceptionData(List<CExceptionData> exceptionData) {
        this.exceptionData = exceptionData;
    }

    public List<CNews> getNews() {
        return news;
    }

    public void setNews(List<CNews> news) {
        this.news = news;
    }

    public Long getInvolvingLitigationAccessCcount() {
        return involvingLitigationAccessCcount;
    }

    public void setInvolvingLitigationAccessCcount(Long involvingLitigationAccessCcount) {
        this.involvingLitigationAccessCcount = involvingLitigationAccessCcount;
    }

    public Long getAdministrativePenaltyAccessCcount() {
        return administrativePenaltyAccessCcount;
    }

    public void setAdministrativePenaltyAccessCcount(Long administrativePenaltyAccessCcount) {
        this.administrativePenaltyAccessCcount = administrativePenaltyAccessCcount;
    }

    public BigDecimal getAdministrativePenaltyAmount() {
        return administrativePenaltyAmount;
    }

    public void setAdministrativePenaltyAmount(BigDecimal administrativePenaltyAmount) {
        this.administrativePenaltyAmount = administrativePenaltyAmount;
    }

    public BigDecimal getEnvironmentalPenaltyAmount() {
        return environmentalPenaltyAmount;
    }

    public void setEnvironmentalPenaltyAmount(BigDecimal environmentalPenaltyAmount) {
        this.environmentalPenaltyAmount = environmentalPenaltyAmount;
    }

    public List<CActualControllerList> getActualControllerList() {
        return actualControllerList;
    }

    public void setActualControllerList(List<CActualControllerList> actualControllerList) {
        this.actualControllerList = actualControllerList;
    }

    public ProjectInformation getProjectInformation() {
        return projectInformation;
    }

    public void setProjectInformation(ProjectInformation projectInformation) {
        this.projectInformation = projectInformation;
    }

    public Long getcProjectInformationId() {
        return cProjectInformationId;
    }

    public void setcProjectInformationId(Long cProjectInformationId) {
        this.cProjectInformationId = cProjectInformationId;
    }
    public String getEnterpriseNature() {
        return enterpriseNature;
    }

    public void setEnterpriseNature(String enterpriseNature) {
        this.enterpriseNature = enterpriseNature;
    }
    public String getEnterpriseNatureDetail() {
        return enterpriseNatureDetail;
    }

    public void setEnterpriseNatureDetail(String enterpriseNatureDetail) {
        this.enterpriseNatureDetail = enterpriseNatureDetail;
    }
    public String getHoldingRatio() {
        return holdingRatio;
    }

    public void setHoldingRatio(String holdingRatio) {
        this.holdingRatio = holdingRatio;
    }
    public String getEquityHierarchy() {
        return equityHierarchy;
    }

    public void setEquityHierarchy(String equityHierarchy) {
        this.equityHierarchy = equityHierarchy;
    }
    public String getEquityHierarchyDetail() {
        return equityHierarchyDetail;
    }

    public void setEquityHierarchyDetail(String equityHierarchyDetail) {
        this.equityHierarchyDetail = equityHierarchyDetail;
    }
    public String getCreditRating() {
        return creditRating;
    }

    public void setCreditRating(String creditRating) {
        this.creditRating = creditRating;
    }
    public Integer getInvolvingLitigationAccess() {
        return involvingLitigationAccess;
    }

    public void setInvolvingLitigationAccess(Integer involvingLitigationAccess) {
        this.involvingLitigationAccess = involvingLitigationAccess;
    }
    public Integer getAdministrativePenaltyAccess() {
        return administrativePenaltyAccess;
    }

    public void setAdministrativePenaltyAccess(Integer administrativePenaltyAccess) {
        this.administrativePenaltyAccess = administrativePenaltyAccess;
    }
    public Integer getAdministrativePenaltyAmountAccess() {
        return administrativePenaltyAmountAccess;
    }

    public void setAdministrativePenaltyAmountAccess(Integer administrativePenaltyAmountAccess) {
        this.administrativePenaltyAmountAccess = administrativePenaltyAmountAccess;
    }
    public Integer getEnvironmentalPenaltyAmountAccess() {
        return environmentalPenaltyAmountAccess;
    }

    public void setEnvironmentalPenaltyAmountAccess(Integer environmentalPenaltyAmountAccess) {
        this.environmentalPenaltyAmountAccess = environmentalPenaltyAmountAccess;
    }
    public String getEvaluationOpinions() {
        return evaluationOpinions;
    }

    public void setEvaluationOpinions(String evaluationOpinions) {
        this.evaluationOpinions = evaluationOpinions;
    }

    public Integer getVisible() {
        return visible;
    }

    public void setVisible(Integer visible) {
        this.visible = visible;
    }

    @Override
    public String toString() {
        return "ProjectAudit{" +
            "cProjectInformationId=" + cProjectInformationId +
            ", enterpriseNature=" + enterpriseNature +
            ", enterpriseNatureDetail=" + enterpriseNatureDetail +
            ", holdingRatio=" + holdingRatio +
            ", equityHierarchy=" + equityHierarchy +
            ", equityHierarchyDetail=" + equityHierarchyDetail +
            ", creditRating=" + creditRating +
            ", involvingLitigationAccess=" + involvingLitigationAccess +
            ", administrativePenaltyAccess=" + administrativePenaltyAccess +
            ", administrativePenaltyAmountAccess=" + administrativePenaltyAmountAccess +
            ", environmentalPenaltyAmountAccess=" + environmentalPenaltyAmountAccess +
            ", evaluationOpinions=" + evaluationOpinions +
        "}";
    }
}
