package com.hfkj.entity;

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

/**
 * bs_mer_withdrawal
 * @author 
 */
/**
 * 
 * 代码由工具生成
 * 
 **/
public class BsMerWithdrawal implements Serializable {
    /**
     * 主键
     */
    private Long id;

    /**
     * 商户id
     */
    private Long merId;

    /**
     * 商户编号
     */
    private String merNo;

    /**
     * 商户名称
     */
    private String merName;

    /**
     * 平台  1：拉卡拉
     */
    private Integer platformType;

    /**
     * 平台商户号
     */
    private String platformNo;

    /**
     * 银联商户号
     */
    private String cupNo;

    /**
     * 商户订单号
     */
    private Integer merOrderNo;

    /**
     * 提款流水号
     */
    private String drawJnl;

    /**
     * 提现金额（单位：元）
     */
    private BigDecimal drawAmt;

    /**
     * 手续费（元）
     */
    private BigDecimal drawFee;

    /**
     * 提款模式(D0/D1)  1: D0   2:D1
     */
    private Integer drawMode;

    /**
     * 结算模式（01主动提款 02自动结算）  1:主动提款  2：自动结算
     */
    private Integer batchAutoSettle;

    /**
     * 自动结算批次号
     */
    private String batchNo;

    /**
     * 结算账户号（脱敏）
     */
    private String acctNo;

    /**
     * 结算账户名（脱敏）
     */
    private String acctName;

    /**
     * 	银行行号
     */
    private String bankNo;

    /**
     * 结算流水号
     */
    private String settleNo;

    /**
     * 银行名称
     */
    private String bankName;

    /**
     * 提款状态
1：提款已受理
2：提款冻结
3：提款处理中
4：提款成功
5：提款失败
     */
    private Integer drawStatus;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 修改时间
     */
    private Date updateTime;

    /**
     * 完成时间
     */
    private Date completeTime;

    private String ext1;

    private String ext2;

    private String ext3;

    private static final long serialVersionUID = 1L;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getMerId() {
        return merId;
    }

    public void setMerId(Long merId) {
        this.merId = merId;
    }

    public String getMerNo() {
        return merNo;
    }

    public void setMerNo(String merNo) {
        this.merNo = merNo;
    }

    public String getMerName() {
        return merName;
    }

    public void setMerName(String merName) {
        this.merName = merName;
    }

    public Integer getPlatformType() {
        return platformType;
    }

    public void setPlatformType(Integer platformType) {
        this.platformType = platformType;
    }

    public String getPlatformNo() {
        return platformNo;
    }

    public void setPlatformNo(String platformNo) {
        this.platformNo = platformNo;
    }

    public String getCupNo() {
        return cupNo;
    }

    public void setCupNo(String cupNo) {
        this.cupNo = cupNo;
    }

    public Integer getMerOrderNo() {
        return merOrderNo;
    }

    public void setMerOrderNo(Integer merOrderNo) {
        this.merOrderNo = merOrderNo;
    }

    public String getDrawJnl() {
        return drawJnl;
    }

    public void setDrawJnl(String drawJnl) {
        this.drawJnl = drawJnl;
    }

    public BigDecimal getDrawAmt() {
        return drawAmt;
    }

    public void setDrawAmt(BigDecimal drawAmt) {
        this.drawAmt = drawAmt;
    }

    public BigDecimal getDrawFee() {
        return drawFee;
    }

    public void setDrawFee(BigDecimal drawFee) {
        this.drawFee = drawFee;
    }

    public Integer getDrawMode() {
        return drawMode;
    }

    public void setDrawMode(Integer drawMode) {
        this.drawMode = drawMode;
    }

    public Integer getBatchAutoSettle() {
        return batchAutoSettle;
    }

    public void setBatchAutoSettle(Integer batchAutoSettle) {
        this.batchAutoSettle = batchAutoSettle;
    }

    public String getBatchNo() {
        return batchNo;
    }

    public void setBatchNo(String batchNo) {
        this.batchNo = batchNo;
    }

    public String getAcctNo() {
        return acctNo;
    }

    public void setAcctNo(String acctNo) {
        this.acctNo = acctNo;
    }

    public String getAcctName() {
        return acctName;
    }

    public void setAcctName(String acctName) {
        this.acctName = acctName;
    }

    public String getBankNo() {
        return bankNo;
    }

    public void setBankNo(String bankNo) {
        this.bankNo = bankNo;
    }

    public String getSettleNo() {
        return settleNo;
    }

    public void setSettleNo(String settleNo) {
        this.settleNo = settleNo;
    }

    public String getBankName() {
        return bankName;
    }

    public void setBankName(String bankName) {
        this.bankName = bankName;
    }

    public Integer getDrawStatus() {
        return drawStatus;
    }

    public void setDrawStatus(Integer drawStatus) {
        this.drawStatus = drawStatus;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public Date getCompleteTime() {
        return completeTime;
    }

    public void setCompleteTime(Date completeTime) {
        this.completeTime = completeTime;
    }

    public String getExt1() {
        return ext1;
    }

    public void setExt1(String ext1) {
        this.ext1 = ext1;
    }

    public String getExt2() {
        return ext2;
    }

    public void setExt2(String ext2) {
        this.ext2 = ext2;
    }

    public String getExt3() {
        return ext3;
    }

    public void setExt3(String ext3) {
        this.ext3 = ext3;
    }

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        BsMerWithdrawal other = (BsMerWithdrawal) that;
        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
            && (this.getMerId() == null ? other.getMerId() == null : this.getMerId().equals(other.getMerId()))
            && (this.getMerNo() == null ? other.getMerNo() == null : this.getMerNo().equals(other.getMerNo()))
            && (this.getMerName() == null ? other.getMerName() == null : this.getMerName().equals(other.getMerName()))
            && (this.getPlatformType() == null ? other.getPlatformType() == null : this.getPlatformType().equals(other.getPlatformType()))
            && (this.getPlatformNo() == null ? other.getPlatformNo() == null : this.getPlatformNo().equals(other.getPlatformNo()))
            && (this.getCupNo() == null ? other.getCupNo() == null : this.getCupNo().equals(other.getCupNo()))
            && (this.getMerOrderNo() == null ? other.getMerOrderNo() == null : this.getMerOrderNo().equals(other.getMerOrderNo()))
            && (this.getDrawJnl() == null ? other.getDrawJnl() == null : this.getDrawJnl().equals(other.getDrawJnl()))
            && (this.getDrawAmt() == null ? other.getDrawAmt() == null : this.getDrawAmt().equals(other.getDrawAmt()))
            && (this.getDrawFee() == null ? other.getDrawFee() == null : this.getDrawFee().equals(other.getDrawFee()))
            && (this.getDrawMode() == null ? other.getDrawMode() == null : this.getDrawMode().equals(other.getDrawMode()))
            && (this.getBatchAutoSettle() == null ? other.getBatchAutoSettle() == null : this.getBatchAutoSettle().equals(other.getBatchAutoSettle()))
            && (this.getBatchNo() == null ? other.getBatchNo() == null : this.getBatchNo().equals(other.getBatchNo()))
            && (this.getAcctNo() == null ? other.getAcctNo() == null : this.getAcctNo().equals(other.getAcctNo()))
            && (this.getAcctName() == null ? other.getAcctName() == null : this.getAcctName().equals(other.getAcctName()))
            && (this.getBankNo() == null ? other.getBankNo() == null : this.getBankNo().equals(other.getBankNo()))
            && (this.getSettleNo() == null ? other.getSettleNo() == null : this.getSettleNo().equals(other.getSettleNo()))
            && (this.getBankName() == null ? other.getBankName() == null : this.getBankName().equals(other.getBankName()))
            && (this.getDrawStatus() == null ? other.getDrawStatus() == null : this.getDrawStatus().equals(other.getDrawStatus()))
            && (this.getCreateTime() == null ? other.getCreateTime() == null : this.getCreateTime().equals(other.getCreateTime()))
            && (this.getUpdateTime() == null ? other.getUpdateTime() == null : this.getUpdateTime().equals(other.getUpdateTime()))
            && (this.getCompleteTime() == null ? other.getCompleteTime() == null : this.getCompleteTime().equals(other.getCompleteTime()))
            && (this.getExt1() == null ? other.getExt1() == null : this.getExt1().equals(other.getExt1()))
            && (this.getExt2() == null ? other.getExt2() == null : this.getExt2().equals(other.getExt2()))
            && (this.getExt3() == null ? other.getExt3() == null : this.getExt3().equals(other.getExt3()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
        result = prime * result + ((getMerId() == null) ? 0 : getMerId().hashCode());
        result = prime * result + ((getMerNo() == null) ? 0 : getMerNo().hashCode());
        result = prime * result + ((getMerName() == null) ? 0 : getMerName().hashCode());
        result = prime * result + ((getPlatformType() == null) ? 0 : getPlatformType().hashCode());
        result = prime * result + ((getPlatformNo() == null) ? 0 : getPlatformNo().hashCode());
        result = prime * result + ((getCupNo() == null) ? 0 : getCupNo().hashCode());
        result = prime * result + ((getMerOrderNo() == null) ? 0 : getMerOrderNo().hashCode());
        result = prime * result + ((getDrawJnl() == null) ? 0 : getDrawJnl().hashCode());
        result = prime * result + ((getDrawAmt() == null) ? 0 : getDrawAmt().hashCode());
        result = prime * result + ((getDrawFee() == null) ? 0 : getDrawFee().hashCode());
        result = prime * result + ((getDrawMode() == null) ? 0 : getDrawMode().hashCode());
        result = prime * result + ((getBatchAutoSettle() == null) ? 0 : getBatchAutoSettle().hashCode());
        result = prime * result + ((getBatchNo() == null) ? 0 : getBatchNo().hashCode());
        result = prime * result + ((getAcctNo() == null) ? 0 : getAcctNo().hashCode());
        result = prime * result + ((getAcctName() == null) ? 0 : getAcctName().hashCode());
        result = prime * result + ((getBankNo() == null) ? 0 : getBankNo().hashCode());
        result = prime * result + ((getSettleNo() == null) ? 0 : getSettleNo().hashCode());
        result = prime * result + ((getBankName() == null) ? 0 : getBankName().hashCode());
        result = prime * result + ((getDrawStatus() == null) ? 0 : getDrawStatus().hashCode());
        result = prime * result + ((getCreateTime() == null) ? 0 : getCreateTime().hashCode());
        result = prime * result + ((getUpdateTime() == null) ? 0 : getUpdateTime().hashCode());
        result = prime * result + ((getCompleteTime() == null) ? 0 : getCompleteTime().hashCode());
        result = prime * result + ((getExt1() == null) ? 0 : getExt1().hashCode());
        result = prime * result + ((getExt2() == null) ? 0 : getExt2().hashCode());
        result = prime * result + ((getExt3() == null) ? 0 : getExt3().hashCode());
        return result;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", merId=").append(merId);
        sb.append(", merNo=").append(merNo);
        sb.append(", merName=").append(merName);
        sb.append(", platformType=").append(platformType);
        sb.append(", platformNo=").append(platformNo);
        sb.append(", cupNo=").append(cupNo);
        sb.append(", merOrderNo=").append(merOrderNo);
        sb.append(", drawJnl=").append(drawJnl);
        sb.append(", drawAmt=").append(drawAmt);
        sb.append(", drawFee=").append(drawFee);
        sb.append(", drawMode=").append(drawMode);
        sb.append(", batchAutoSettle=").append(batchAutoSettle);
        sb.append(", batchNo=").append(batchNo);
        sb.append(", acctNo=").append(acctNo);
        sb.append(", acctName=").append(acctName);
        sb.append(", bankNo=").append(bankNo);
        sb.append(", settleNo=").append(settleNo);
        sb.append(", bankName=").append(bankName);
        sb.append(", drawStatus=").append(drawStatus);
        sb.append(", createTime=").append(createTime);
        sb.append(", updateTime=").append(updateTime);
        sb.append(", completeTime=").append(completeTime);
        sb.append(", ext1=").append(ext1);
        sb.append(", ext2=").append(ext2);
        sb.append(", ext3=").append(ext3);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}