package com.jwipc.supplier.entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * <p>
 * 供应商主信息
 * </p>
 *
 * @author zhangjie
 * @since 2024-01-31
 */
@Getter
@Setter
@TableName("t_supplier")
public class Supplier implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 供应商编码
     */
    private String supplierCode;

    /**
     * ERP_编码
     */
    private String supplierErpCode;

    /**
     * 临时编码
     */
    private String supplierTempCode;

    /**
     * 供应商全称
     */
    private String supplierName;

    /**
     * 供应商英文名称
     */
    private String supplierNameEn;
    /**
     * 模板id
     */
    private Long templateId;
    /**
     * 简称
     */
    private String shortName;

    /**
     * 供应商来源：0.邀请注册的供应商 1.自己注册的供应商
     */
    private Integer registerType;

    /**
     * 是否外协供应商,1:外协；0:非外协
     */
    private Integer isExternal;

    /**
     * 企业性质
     */
    private String supplierTypeId;

    /**
     * 营业执照注册号
     */
    private String businessRegisterNo;

    /**
     * 营业期限截止日期
     */
    private LocalDate businessEndTime;

    /**
     * 业务区域
     */
    private String businessArea;

    /**
     * 介绍
     */
    private String industry;

    /**
     * 国家
     */
    private String country;

    /**
     * 省份
     */
    private String province;

    /**
     * 城市
     */
    private String city;

    /**
     * 地址
     */
    private String address;

    /**
     * 移动电话
     */
    private String mobile;

    /**
     * 电话
     */
    private String tel;

    /**
     * 传真
     */
    private String fax;

    /**
     * 邮编
     */
    private String zipCode;

    /**
     * 电子邮箱
     */
    private String email;

    /**
     * 是否删除，1:删除，0:未删除
     */
    private Integer isDeleted;

    /**
     * 是否冻结,1:冻结，0:未冻结
     */
    private Integer isFreeze;

    /**
     * 行业
     */
    private String industryCode;

    /**
     * 供应商类型supplier_classify
     */
    private String supplierGenre;

    /**
     * 采购组编号
     */
    private String purchaseGroupCode;

    /**
     * 采购组织编码
     */
    private String purchaseOrgCode;

    /**
     * 备注
     */
    private String remark;

    /**
     * 创建日期
     */
    private LocalDateTime createTime;

    /**
     * 更新人
     */
    private Long updateUser;

    /**
     * 更新时间
     */
    private LocalDateTime updateTime;

    /**
     * 创建人
     */
    private Long createUser;
    private Integer signUpThrough;
    private String signUpRemark;
    private Long signUpUser;
    private Integer infoState;
    /**
     * 税号
     */
    private String taxNo;
    private String creditNo;
    private Integer sampleState;

    private String attr;
    private String customer1Code;
    private String customer1Name;
    private String customer2Code;
    private String customer2Name;
    private String supplierGroup;
    private String assessType;
    private String specialRemark;
    private String procurementStrategy;
    private String establishmentDate;
    private String legal;
    private String supplyType;
    private Integer signatureFlag;
    /**
     * 订单打印是否月度回签
     */
    private Integer monthFlag;

    private String approvalOpinion;

    private Integer eliminateFlag;

    @TableField(value = "supplier_attribution", updateStrategy = FieldStrategy.IGNORED)
    private Integer supplierAttribution;
    //供应商品种所属类型 null 暂时没有 1 客供品类类型
    private String supplierCategoryType;
    //以下加3个备用字段
    private String colBeiyOne;
    private String colBeiyTow;
    private String colBeiyThree;

}
