
package com.tmerclub.cloud.api.user.vo;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.format.DateTimeFormat;
import lombok.Data;
import lombok.ToString;

import java.io.Serial;
import java.io.Serializable;
import java.util.Date;

/**
 * 财务明细excel信息
 *
 * @author TRACK
 */
@Data
@ToString
public class FinanceDetailExcelVO implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;
    /**
     * excel 信息
     */
    public static final String EXCEL_NAME = "财务明细报表";
    /**
     * 哪一行开始导出
     */
    public static final int MERGE_ROW_INDEX = 2;
    /**
     * 需要合并的列数组
     */
    public static final int[] MERGE_COLUMN_INDEX = {};


    @DateTimeFormat("yyyy-MM-dd HH:mm:ss")
    @ExcelProperty({"财务明细报表", "交易时间"})
    private Date transDate;

    @ExcelProperty({"财务明细报表", "订单编号"})
    private String orderId;

    @ExcelProperty({"财务明细报表", "下单时间"})
    private Date placeTime;

    @ExcelProperty({"财务明细报表", "交易摘要"})
    private String prodName;

    @ExcelProperty({"财务明细报表", "发生渠道"})
    private String shopName;

    @ExcelProperty({"财务明细报表", "资金变更申请人"})
    private String userName;

    /**
     * com.tmerclub.cloud.order.constant.FinanceBizType
     */
    @ExcelProperty({"财务明细报表", "业务类型"})
    private String bizTypeStr;

    @ExcelProperty({"财务明细报表", "支付交易单号"})
    private String payIds;

    /**
     * @see com.tmerclub.cloud.common.constant.PayType
     */
    @ExcelIgnore
    private Integer payType;

    @ExcelProperty({"财务明细报表", "支付方式"})
    private String payTypeName;

    @ExcelIgnore
    private Long transAmount;

    @ExcelProperty({"财务明细报表", "收支金额"})
    private String amount;

    @ExcelIgnore
    private Long shopId;

    @ExcelIgnore
    private Long userId;

    @ExcelIgnore
    private Integer bizType;


}
