package com.sunxung.factoring.entity.purchcontractmanagement;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.sunxung.factoring.entity.BaseEntity;
import com.sunxung.factoring.entity.entprise.Enterprise;
import com.sunxung.factoring.entity.sys.FileStorage;
import com.sunxung.factoring.entity.sys.User;
import com.sunxung.factoring.entity.tradingPlatform.Platform;

import java.util.List;

/**
 * @Description : 采购合同审核表
 * @Author : JiaYf
 * @Date: 2021-09-18 15:08
 */
@TableName("purch_contract_approval")
public class PurchContractApproval extends BaseEntity {

    /** 审核意见 **/
    private String approvalComment;

    /** 审核结论 **/
    private String approvalConclusion;

    /** 审核人Id **/
    private Long auditorId;

    /** 采购合同基本信息表Id **/
    private Long purchContractBasicInfoId;

    /**
     * 0线下签署  1线上签署
     */
    private Integer signMode;

    /**
     * 是否上传合同文件 0不上传  1上传
     */
    private Integer upload;

    /**
     * 是否提交  0 不提交 1 提交
     */
    private Integer visible;

    /**
     * 是否使用系统生成的合同
     * 0 不使用  1使用
     */
    private Integer useContract;

    /**
     * 合同文件
     */
    @TableField(exist = false)
    private FileStorage fileStorage;

    /**
     * 上传的合同
     */
    @TableField(exist = false)
    public List<UploadPurchContract> uploadPurchContracts;

    /** 审核人 **/
    @TableField(exist = false)
    private User auditor;

    @TableField(exist = false)
    private List<FileStorage> fileStorages;

    /**
     * 贸易平台
     */
    @TableField(exist = false)
    private Platform platform;

    /**
     * 供应商（企业信息）
     * @return
     */
    @TableField(exist = false)
    private Enterprise supplier;

    public Integer getUseContract() {
        return useContract;
    }

    public void setUseContract(Integer useContract) {
        this.useContract = useContract;
    }

    public FileStorage getFileStorage() {
        return fileStorage;
    }

    public void setFileStorage(FileStorage fileStorage) {
        this.fileStorage = fileStorage;
    }

    public Integer getVisible() {
        return visible;
    }

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

    public List<UploadPurchContract> getUploadPurchContracts() {
        return uploadPurchContracts;
    }

    public void setUploadPurchContracts(List<UploadPurchContract> uploadPurchContracts) {
        this.uploadPurchContracts = uploadPurchContracts;
    }

    public Integer getSignMode() {
        return signMode;
    }

    public void setSignMode(Integer signMode) {
        this.signMode = signMode;
    }

    public Integer getUpload() {
        return upload;
    }

    public void setUpload(Integer upload) {
        this.upload = upload;
    }

    public String getApprovalComment() {
        return approvalComment;
    }

    public void setApprovalComment(String approvalComment) {
        this.approvalComment = approvalComment;
    }

    public String getApprovalConclusion() {
        return approvalConclusion;
    }

    public void setApprovalConclusion(String approvalConclusion) {
        this.approvalConclusion = approvalConclusion;
    }

    public Long getAuditorId() {
        return auditorId;
    }

    public void setAuditorId(Long auditorId) {
        this.auditorId = auditorId;
    }

    public User getAuditor() {
        return auditor;
    }

    public void setAuditor(User auditor) {
        this.auditor = auditor;
    }

    public Long getPurchContractBasicInfoId() {
        return purchContractBasicInfoId;
    }

    public void setPurchContractBasicInfoId(Long purchContractBasicInfoId) {
        this.purchContractBasicInfoId = purchContractBasicInfoId;
    }

    public List<FileStorage> getFileStorages() {
        return fileStorages;
    }

    public void setFileStorages(List<FileStorage> fileStorages) {
        this.fileStorages = fileStorages;
    }

    public Platform getPlatform() {
        return platform;
    }

    public void setPlatform(Platform platform) {
        this.platform = platform;
    }

    public Enterprise getSupplier() {
        return supplier;
    }

    public void setSupplier(Enterprise supplier) {
        this.supplier = supplier;
    }
}
