package org.dromara.main.domain.vo;

import cn.idev.excel.annotation.ExcelProperty;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.dromara.main.domain.Withdraw;

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

/**
 * 提现申请视图对象
 */
@Data
@AutoMapper(target = Withdraw.class)
public class WithdrawVo implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    @ExcelProperty(value = "提现ID")
    private Long id;

    @ExcelProperty(value = "提现单号")
    private String withdrawNo;

    @ExcelProperty(value = "企业ID")
    private Long companyId;

    @ExcelProperty(value = "企业名称")
    private String companyName;

    @ExcelProperty(value = "收款账户ID")
    private Long accountId;

    @ExcelProperty(value = "提现金额")
    private BigDecimal withdrawAmount;

    @ExcelProperty(value = "提现状态")
    private Integer withdrawStatus;

    @ExcelProperty(value = "支付宝流水号")
    private String tradeNo;

    @ExcelProperty(value = "审核人ID")
    private Long auditorId;

    @ExcelProperty(value = "审核时间")
    private Date auditTime;

    @ExcelProperty(value = "审核备注")
    private String auditRemark;

    @ExcelProperty(value = "失败原因")
    private String failReason;

    @ExcelProperty(value = "创建时间")
    private Date createTime;

    @ExcelProperty(value = "打款时间")
    private Date transferTime;

    private WithdrawAccountVo account;
}
