package com.ylx.massage.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ylx.common.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

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

/**
 * <p>
 * 提现表
 * </p>
 *
 * @author YJR
 * @since 2023-12-31
 */
@Getter
@Setter
@Accessors(chain = true)
@TableName("t_tx_record")
@ApiModel(value = "TTxRecord", description = "提现表")
public class TTxRecord implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId("c_id")
    @ApiModelProperty("cId")
    private String cId;

    /**
     * 提现单号
     */
    @Excel(name = "提现单号")
    @TableField("cash_no")
    @ApiModelProperty("提现单号")
    private String cashNo;

    /**
     * 提现用户
     */
    @TableField("c_open_id")
    @ApiModelProperty("提现用户")
    private String cOpenId;


    @TableField("dept_id")
    @ApiModelProperty("部门id")
    private String deptId;

    @TableField("dept_name")
    @ApiModelProperty("部门名称")
    private String deptName;

    /**
     * 提现金额
     */
    @Excel(name = "申请提现金额")
    @TableField("d_price")
    @ApiModelProperty("提现金额")
    private BigDecimal dPrice;

    /**
     * 税率-前端展示
     */
    @TableField(exist = false)
    @Excel(name = "税率")
    @ApiModelProperty("税率")
    private String percentShow;

    /**
     * 提现到账金额
     */
    @TableField("r_price")
    @Excel(name = "提现到账金额")
    @ApiModelProperty("提现到账金额")
    private BigDecimal rPrice;

    /**
     * 提现代扣税额
     */
    @TableField(exist = false)
    @Excel(name = "代扣税额")
    @ApiModelProperty("代扣税额")
    private BigDecimal wPrice;

    /**
     * 税率
     */
    @TableField("percent")
    @ApiModelProperty("税率")
    private BigDecimal percent;

    /**
     * 驳回说明
     */
    @TableField("reject")
    @ApiModelProperty("驳回说明")
    private String reject;

    /**
     * 提现时间
     */
    @TableField("c_time")
    @ApiModelProperty("提现时间")
    private String cTime;

    /**
     * 手机号
     */
    @TableField("c_phone")
    @ApiModelProperty("手机号")
    private String cPhone;

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

    /**
     * 开户行
     */
    @Excel(name = "开户行")
    @TableField("opening_bank")
    @ApiModelProperty("开户行")
    private String openingBank;

    /**
     * 银行账号
     */
    @Excel(name = "银行账号")
    @TableField("bank_account")
    @ApiModelProperty("银行账号")
    private String bankAccount;


    /**
     * 提现图片
     */
    @TableField("c_image")
    @ApiModelProperty("提现图片")
    private String cImage;

    /**
     * 审核中0 审核通过1
     */
    @TableField("n_status")
    @ApiModelProperty("审核中0, 审核通过1, 驳回2")
    private Integer nStatus;

    /**
     * 审核中0 审核通过1
     */
    @Excel(name = "状态")
    @TableField(exist = false)
    @ApiModelProperty("审核中0, 审核通过1, 驳回2")
    private String nStatusShow;

    /**
     * 创建时间
     */
    @Excel(name = "创建时间")
    @TableField("dt_create_time")
    @ApiModelProperty("创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
    private LocalDateTime dtCreateTime;

    @ApiModelProperty("是否删除0否1是")
    @TableLogic
    private Integer isDelete;

    @TableField(exist = false)
    @ApiModelProperty("开始时间")
    private String startTime ;

    @TableField(exist = false)
    @ApiModelProperty("结束时间")
    private String endTime;

    public String getcId() {
        return cId;
    }

    public void setcId(String cId) {
        this.cId = cId;
    }

    public String getcOpenId() {
        return cOpenId;
    }

    public void setcOpenId(String cOpenId) {
        this.cOpenId = cOpenId;
    }

    public BigDecimal getdPrice() {
        return dPrice;
    }

    public void setdPrice(BigDecimal dPrice) {
        this.dPrice = dPrice;
    }

    public String getcTime() {
        return cTime;
    }

    public void setcTime(String cTime) {
        this.cTime = cTime;
    }

    public String getcPhone() {
        return cPhone;
    }

    public void setcPhone(String cPhone) {
        this.cPhone = cPhone;
    }

    public String getcName() {
        return cName;
    }

    public void setcName(String cName) {
        this.cName = cName;
    }

    public String getcImage() {
        return cImage;
    }

    public void setcImage(String cImage) {
        this.cImage = cImage;
    }

    public Integer getnStatus() {
        return nStatus;
    }

    public void setnStatus(Integer nStatus) {
        this.nStatus = nStatus;
    }

    public LocalDateTime getDtCreateTime() {
        return dtCreateTime;
    }

    public String getStartTime() {
        return startTime;
    }

    public void setStartTime(String startTime) {
        this.startTime = startTime;
    }

    public String getEndTime() {
        return endTime;
    }

    public void setEndTime(String endTime) {
        this.endTime = endTime;
    }

    public String getReject() {
        return reject;

    }

    public void setReject(String reject) {
        this.reject = reject;
    }

    public BigDecimal getPercent() {
        return percent;
    }

    public void setPercent(BigDecimal percent) {
        this.percent = percent;
    }

    public BigDecimal getrPrice() {
        return rPrice;
    }

    public void setrPrice(BigDecimal rPrice) {
        this.rPrice = rPrice;
    }

    public String getPercentShow() {
        return percentShow;
    }

    public void setPercentShow(String percentShow) {
        this.percentShow = percentShow;
    }

    public String getnStatusShow() {
        return nStatusShow;
    }

    public void setnStatusShow(String nStatusShow) {
        this.nStatusShow = nStatusShow;
    }
}
