package io.renren.modules.loan.dto;

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

import com.fasterxml.jackson.annotation.JsonFormat;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * 子账户表
 *
 * @author lsy 
 * @since 1.0.0 2022-10-30
 */
@Data
@ApiModel(value = "子账户表")
public class TCustSubAccountDTO implements Serializable {
    private static final long serialVersionUID = 1L;

	@ApiModelProperty(value = "主键Id")
	private Long id;

	@ApiModelProperty(value = "登录客户编号")
	private String userId;

	@ApiModelProperty(value = "账户类型 1连连支付")
	private String acctType;

	@ApiModelProperty(value = "账户状态 01正常；02停用")
	private String acctStatus;

	@ApiModelProperty(value = "客户类别	1:个人;2:平台;3:公司;")
	private String custType;

	@ApiModelProperty(value = "客户姓名")
	private String custName;

	@ApiModelProperty(value = "客户证件类型")
	private String idType;

	@ApiModelProperty(value = "客户证件号码")
	private String idNo;

	@ApiModelProperty(value = "可用现金")
	private BigDecimal amount;

	@ApiModelProperty(value = "冻结现金")
	private BigDecimal freezeAmt;

	@ApiModelProperty(value = "红包现金")
	private BigDecimal receivableAmt;

	@ApiModelProperty(value = "总金额")
	private BigDecimal totalAmt;

	@ApiModelProperty(value = "资产方Code")
	private String platformCode;

	@ApiModelProperty(value = "第三方类型/资金方Code")
	private String thirdType;

	@ApiModelProperty(value = "第三方账户编号/客户编号")
	private String thirdAccount;

	@ApiModelProperty(value = "存管银行二级电子账户")
	private String accountId;

	@ApiModelProperty(value = "银行编码")
	private String bankCode;

	@ApiModelProperty(value = "银行名称")
	private String bankName;

	@ApiModelProperty(value = "绑定银行卡号")
	private String bankCardNo;

	@ApiModelProperty(value = "银行预留手机号码")
	private String mobile;

	@ApiModelProperty(value = "邮箱")
	private String email;

	@ApiModelProperty(value = "是否已激活0：未激活；1：已激活")
	private String isActivate;

	@ApiModelProperty(value = "是否有交易记录 0否1是")
	private String haveRecord;

	@ApiModelProperty(value = "上次提现时间")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date lastWdDate;

	@ApiModelProperty(value = "交易时间")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date tradeDay;

	@ApiModelProperty(value = "开通授权借款人-授权还款；出借人-授权投标")
	private String authorizeOpen;

	@ApiModelProperty(value = "授权期限年月日")
	@JsonFormat(pattern = "yyyy-MM-dd")
	private Date authorizeDeadline;

	@ApiModelProperty(value = "授权金额")
	private BigDecimal authorizeAmount;

	@ApiModelProperty(value = "是否已经绑卡1-已绑卡有效  0-卡失效")
	private Integer bindCardStatus;

	@ApiModelProperty(value = "实名认证 0:未认证 1：实名认证通过 2：实名认证待审核 -1：实名认证未通过")
	private Integer realNameStatus;

	@ApiModelProperty(value = "邮箱认证 0:未认证 1：邮箱认证通过")
	private Integer emailStatus;

	@ApiModelProperty(value = "手机认证 -1:未通过,0:未认证,1:通过,2:待审核")
	private Integer mobilePhoneStatus;

	@ApiModelProperty(value = "备用1")
	private String spare1;

	@ApiModelProperty(value = "备用2")
	private String spare2;

	@ApiModelProperty(value = "备用3")
	private String spare3;

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

	@ApiModelProperty(value = "创建人")
	private String createBy;

	@ApiModelProperty(value = "更新时间")
	private Date updateTime;

	@ApiModelProperty(value = "更新人")
	private String updateBy;

	@ApiModelProperty(value = "版本号")
	private Long version;

	@ApiModelProperty(value = "备注")
	private String remark;


}