package com.zcloud.modules.custormerInfo.entity;

import com.baomidou.mybatisplus.annotation.*;
import java.io.Serializable;
import java.util.Date;
import java.util.List;

import com.zcloud.modules.invoicing.entity.BusInvoicingReturnEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * @Author lizenan
 * @Desc 开票表(用于记录原值，每次更新开票表都插入原来的值)(BusInvoicingAuditHistory)实体
 * @Date 2024-04-03 15:20:56
 */
@Data
@TableName("bus_invoicing_audit_history")
public class BusInvoicingAuditHistoryEntity implements Serializable {
    private static final long serialVersionUID = -63885804844914286L;
    //存新ID，每次更新开票表都插入新的Id
    @ApiModelProperty(value = "存新ID，每次更新开票表都插入新的Id")
    @TableId(type = IdType.ASSIGN_UUID)
    private String invoicingAuditHistoryId;
    //开票表Id
    @ApiModelProperty(value = "开票表Id")
    private String invoicingId;
    //客户企业信息Id
    @ApiModelProperty(value = "客户企业信息Id")
    private String customerinfoId;
    //开票类型 1:购买课程、2:流量充值、3:QPS充值
    @ApiModelProperty(value = "开票类型 1:购买课程、2:流量充值、3:QPS充值")
    private Integer invoicingType;
    //数据来源 1:开发者、2:课件库
    @ApiModelProperty(value = "数据来源 1:开发者、2:课件库")
    private Integer dataSource;
    //来源Id
    @ApiModelProperty(value = "来源Id")
    private String sourceId;
    //发票抬头管理Id
    @ApiModelProperty(value = "发票抬头管理Id")
    private String invoiceId;
    //税号
    @ApiModelProperty(value = "税号")
    private String taxNum;
    //注册地址
    @ApiModelProperty(value = "注册地址")
    private String registerAddress;
    //注册电话
    @ApiModelProperty(value = "注册电话")
    private String registerPhone;
    //开户银行
    @ApiModelProperty(value = "开户银行")
    private String accountBank;
    //银行账号
    @ApiModelProperty(value = "银行账号")
    private String bankAccount;
    //申请时间
    @ApiModelProperty(value = "申请时间")
    private Date applyTime;
    //发票抬头
    @ApiModelProperty(value = "发票抬头")
    private String invoicingName;
    //发票金额
    @ApiModelProperty(value = "发票金额")
    private Double invoicingAmount;
    //审核状态 0:已提交、1:审核通过、2:审核驳回
    @ApiModelProperty(value = "审核状态 0:已提交、1:审核通过、2:审核驳回")
    private Integer auditStatus;
    //驳回原因
    @ApiModelProperty(value = "驳回原因")
    private String rejectReason;
    //审核时间
    @ApiModelProperty(value = "审核时间")
    private Date auditTime;
    //删除状态 0 -未删除  1- 已删除
    @ApiModelProperty(value = "删除状态 0 -未删除  1- 已删除")
    @TableField(fill = FieldFill.INSERT)
    private Integer isDelete;
    //添加人
    @ApiModelProperty(value = "添加人")
    private String creator;
    //创建时间
    @ApiModelProperty(value = "创建时间")
    @TableField(fill = FieldFill.INSERT)
    private String createTime;
    //修改人
    @ApiModelProperty(value = "修改人")
    private String operator;
    //修改时间
    @ApiModelProperty(value = "修改时间")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private String operatTime;


    /**
     * 开票类型
     */
    @TableField(exist = false)
    private String invoicingTypeName;

    /**
     * 是否回传了发票
     */
    @TableField(exist = false)
    private Integer isReturn;

    /**
     * 回传发票
     */
    @TableField(exist = false)
    private List<BusInvoicingReturnEntity> invoicingReturnList;

    /**
     * 审核人
     */
    @TableField(exist = false)
    private String auditOperator;


}

