package com.limap.core.basic.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.limap.common.annotation.Excel;
import io.swagger.annotations.ApiModelProperty;
import com.limap.common.core.domain.BasePlusEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 提现记录对象 basic_user_withdraw
 *
 * @author jjb
 * @date 2025-04-11
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName(value = "basic_user_withdraw")
public class BasicUserWithdraw extends BasePlusEntity {
    @TableField(exist = false)
    private static final long serialVersionUID = 1L;

    /** 编号 */
    @TableId(type = IdType.AUTO)
    private Long id;

    /** 用户id */
    @Excel(name = "用户id")
    @ApiModelProperty("用户id")
    private Long userId;
    private String nickName;
    private String tel;

    /** 提现记录标题 */
    @Excel(name = "提现记录标题")
    @ApiModelProperty("提现记录标题")
    private String title;

    /** 提现开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "提现开始时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty("提现开始时间")
    private Date withdrawTime;

    /** 提现总金额 */
    @Excel(name = "提现总金额")
    @ApiModelProperty("提现总金额")
    private BigDecimal totalAmount;

    /** 银行卡开户行 */
    @Excel(name = "银行卡开户行")
    @ApiModelProperty("银行卡开户行")
    private String bank;

    /** 银行卡号 */
    @Excel(name = "银行卡号")
    @ApiModelProperty("银行卡号")
    private String bankNumber;

    /** 姓名 */
    @Excel(name = "姓名")
    @ApiModelProperty("姓名")
    private String name;


    @ApiModelProperty("打款金额")
    private BigDecimal paymentAmount;

    @ApiModelProperty("打款状态")
    private String paymentStatus;

    @ApiModelProperty("打款时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date paymentTime;

    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date startTime;

    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date endTime;

}
