package com.kym.entity.miniapp;

import com.alibaba.fastjson2.JSONArray;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import com.kym.entity.BaseEntity;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

import java.util.List;

/**
 * <p>
 * 发票记录表
 * </p>
 *
 * @author skyline
 * @since 2023-09-15
 */
@Getter
@Setter
@TableName("t_invoice")
@Accessors(chain = true)
public class Invoice extends BaseEntity {
    public static final String TYPE_个人 = "INDIVIDUAL";
    public static final String TYPE_企业 = "ORGANIZATION";
    private static final long serialVersionUID = 1L;
    private Long userId;

    /**
     * 发票关联订单详情
     */
    @TableField(typeHandler = JacksonTypeHandler.class)
    private List orderDetails;

    /**
     * 累积充电量（度）
     */
    private Double totalPower;

    /**
     * 累积总金额（元）
     */
    private Integer totalMoney;

    /**
     * 累积电费（元）
     */
    private Integer elecMoney;

    /**
     * 累积服务费（元）
     */
    private Integer serviceMoney;

    /**
     * 接收发票邮箱
     */
    private String email;

    /**
     * 电话
     */
    private String phone;

    /**
     * 发票类型:INDIVIDUAL-个人 ORGANIZATION-企业
     */
    private int invoiceType;

    /**
     * 发票抬头
     */
    private String invoiceTitle;

    /**
     * 公司税号
     */
    private String taxId;

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

    /**
     * 开户银行
     */
    private String bankName;

    /**
     * 银行账户
     */
    private String bankAccount;

    /**
     * 发票金额（单位：分）
     */
    private Integer invoiceAmount;

    /**
     * 税额详情信息
     */
    private String taxInfo;

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

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