package com.tmerclub.cloud.multishop.vo;

import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.format.DateTimeFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

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

/**
 * 导出商家余额
 * @author 菠萝凤梨
 */
@Data
public class ShopWalletLogExcelVO 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 = {};

    @ExcelProperty({"店铺结算明细表", "序号"})
    private String seq;

    @ExcelProperty({"店铺结算明细表", "店铺名称"})
    private String shopName;

    /**
     * @see com.tmerclub.cloud.multishop.constant.ShopWalletAmountType
     */
    @ExcelProperty({"店铺结算明细表", "金额类型"})
    private String amountType;

    @Schema(description = "商家收支类型 0支出 1收入")
    @ExcelProperty({"店铺结算明细表", "收支类型"})
    private String ioType;

    @ExcelProperty({"店铺结算明细表", "改变金额"})
    private String changeAmount;

    @ExcelProperty({"店铺结算明细表", "订单编号"})
    private String orderId;

    @ExcelProperty({"店铺结算明细表", "退款编号"})
    private String refundId;

    @ExcelProperty({"店铺结算明细表", "操作金额"})
    private String userAmount;

    @ExcelProperty({"店铺结算明细表", "平台补贴金额"})
    private String platformAmount;

    @ExcelProperty({"店铺结算明细表", "商家补贴金额"})
    private String shopReduceAmount;

    @ExcelProperty({"店铺结算明细表", "分销金额"})
    private String distributionAmount;

    @ExcelProperty({"店铺结算明细表", "平台佣金"})
    private String platformCommission;

    @ExcelProperty({"店铺结算明细表", "商家平台佣金"})
    private String shopPlatformCommission;

    @ExcelProperty({"店铺结算明细表", "资金变化原因"})
    private String reasonStr;

    @DateTimeFormat("yyyy-MM-dd HH:mm:ss")
    @ExcelProperty({"店铺结算明细表", "创建时间"})
    private Date createTime;

    }
