package com.fs.doctor.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fs.common.annotation.Excel;
import com.fs.common.core.domain.BaseEntity;
import lombok.Data;

/**
 * 医生提现记录对象 withdraw_records
 *
 * @author fs
 * @date 2026-01-27
 */
@Data
public class WithdrawRecords extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /**
     * 公司id
     */
    private Long companyId;

    @Excel(name = "公司名称")
    private String companyName;

    /** 提现记录ID */
    private Long withdrawId;

    /** 医生ID */
    @Excel(name = "医生ID")
    private Long doctorId;

    /** 医生姓名 */
    @Excel(name = "医生姓名")
    private String doctorName;

    /** 提现积分数量 */
    @Excel(name = "提现积分数量")
    private BigDecimal pointsAmount;

    /** 提现金额（积分折算） */
    @Excel(name = "提现金额", readConverterExp = "积分折算")
    private BigDecimal cashAmount;

    /** 提现申请时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "提现申请时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date applyTime;

    /** 审核状态：0-待审核，1-审核通过，2-审核驳回 */
    @Excel(name = "审核状态：0-待审核，1-审核通过，2-审核驳回")
    private Long auditStatus;

    /** 审核人ID（销售） */
    @Excel(name = "审核人ID", readConverterExp = "销=售")
    private Long auditorId;

    /** 审核时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "审核时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date auditTime;

    /** 审核备注（驳回原因等） */
    @Excel(name = "审核备注", readConverterExp = "驳=回原因等")
    private String auditRemark;

    /** 打款状态：0-待打款，1-打款完成 */
    @Excel(name = "打款状态：0-待打款，1-打款完成")
    private Long paymentStatus;

    /** 打款时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "打款时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date paymentTime;

    /** 银行回执编号 */
    @Excel(name = "银行回执编号")
    private String bankReceiptNo;

    /**
     * 审核实例id
     */
    private Long auditInstanceId;

    /** 银行回执图片URL */
    @Excel(name = "银行回执图片")
    private String bankReceiptUrl;




}
