package com.zsElectric.boot.business.model.dto;

import cn.idev.excel.annotation.ExcelProperty;
import cn.idev.excel.annotation.format.DateTimeFormat;
import cn.idev.excel.annotation.write.style.ColumnWidth;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 用户支付订单信息导出DTO
 *
 * @author zsElectric
 * @since 2025-01-07
 */
@Data
@ColumnWidth(20)
public class UserOrderInfoExportDTO {

    @ExcelProperty(value = "订单编号")
    private String orderNo;

    @ExcelProperty(value = "用户手机号")
    private String phone;

    @ExcelProperty(value = "订单金额")
    private BigDecimal orderMoney;

    @ExcelProperty(value = "订单剩余金额")
    private BigDecimal lastMoney;

    @ExcelProperty(value = "支付时间")
    @DateTimeFormat("yyyy/MM/dd HH:mm:ss")
    private LocalDateTime payTime;

    @ExcelProperty(value = "订单状态")
    private String orderStatusName;

    @ExcelProperty(value = "订单类型")
    private String orderTypeName;

    @ExcelProperty(value = "第三方支付单号")
    private String outTradeNo;

    @ExcelProperty(value = "微信支付流水号")
    private String transactionId;

    @ExcelProperty(value = "退款金额")
    private BigDecimal refundMoney;

    @ExcelProperty(value = "退款时间")
    @DateTimeFormat("yyyy/MM/dd HH:mm:ss")
    private LocalDateTime refundTime;

    @ExcelProperty(value = "备注")
    private String remark;

    @ExcelProperty(value = "创建时间")
    @DateTimeFormat("yyyy/MM/dd HH:mm:ss")
    private LocalDateTime createTime;
}
