package com.xhpc.user.pojo;

import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * xhpc_invoice
 *
 * @author WH
 */
@Data
public class XhpcInvoice implements Serializable {

    /**
     * 发票id
     */
    private Long invoiceId;

    /**
     * 发票类型(默认0普票，1为专票)
     */
    private Integer invoiceType;

    /**
     * 接收邮箱
     */
    private String receiveEmail;

    /**
     * 0为企业抬头 1为非企业抬头
     */
    private Integer titleType;

    /**
     * 发票抬头内容
     */
    private String titleContent;

    /**
     * 税号
     */
    private String dutyNumber;

    /**
     * 发票内容
     */
    private String invoiceContent;

    /**
     * 发票金额
     */
    private BigDecimal invoiceMoney;

    /**
     * 发票包含的订单的总电费金额
     */
    private BigDecimal invoiceOrderEletricTotalMoney;

    /**
     * 发票包含的订单的总服务费金额
     */
    private BigDecimal invoiceOrderServiceTotalMoney;

    /**
     * 发票包含的订单的占位费金额
     */
    private BigDecimal placeholderMoney;
    /**
     * 发票包含的订单的总金额
     */
    private BigDecimal totalMoney;

    /**
     * 公司地址
     */
    private String firmAddress;

    /**
     * 公司电话
     */
    private String firmPhone;

    /**
     * 公司开户行
     */
    private String firmBank;

    /**
     * 公司开户行账号
     */
    private String firmBankAccount;

    /**
     * 所开发票是否展示交易记录（0为不展示，1为展示）
     */
    private Integer isShowDate;

    /**
     * 用户备注
     */
    private String userNotes;

    /**
     * 创建者id
     */
    private Long creatorId;

    /**
     * 创建者类型（0为c端用户，1为B端用户，2为机构用户）
     */
    private Integer creatorType;

    /**
     * 创建人（用户手机号）
     */
    private String creator;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 开票状态（0表示未开票，1表示已经开票，2表示开票失败）
     */
    private Integer status;

    /**
     * 财务输入的开票时间
     */
    private Date invoicingTime;

    /**
     * 开票人
     */
    private String drawer;

    /**
     * 开票人(财务备注)
     */
    private String financeNotes;

    /**
     * 开票的电子发票pdf保存地址
     */
    private String electricInvoiceUrl;

    /**
     * 更新者
     */
    private Long updator;

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

    /**
     * 是否已经阅读(默认未空，0表示没有阅读，1表示已经阅读)
     */
    private Integer isRead;

    /**
     * 逻辑删除字段
     */
    private Integer delFlag;

    private String tenantId;

    //0增值税普通发票 1增值税专用发票
    private Integer invoiceStatus;

    /**
     * 充电订单运营商id
     */
    private String orderOperatorId;
    /**
     * 开票运营商id
     */
    private Long invoiceOperatorId;

    private String orderOperatorName;

    private String invoiceOperatorName;

    private static final long serialVersionUID = 1L;

}
