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 TLoanApplyDTO implements Serializable {
    private static final long serialVersionUID = 1L;

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

	@ApiModelProperty(value = "借款申请流水号")
	private String applyNo;

	@ApiModelProperty(value = "客户编号")
	private String custCode;

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

	@ApiModelProperty(value = "手机号")
	private String mobile;

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

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

	@ApiModelProperty(value = "产品编号")
	private String productCode;

	@ApiModelProperty(value = "借款编号")
	private String agreementCode;

	@ApiModelProperty(value = "债权转让方Code")
	private String loanCode;

	@ApiModelProperty(value = "债权转让方公司名")
	private String loanName;

	@ApiModelProperty(value = "债权转让方银行卡")
	private String loanCardNo;

	@ApiModelProperty(value = "资金平台Code")
	private String capitalPlatformCode;

	@ApiModelProperty(value = "借款申请时间")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date loanApplyTime;

	@ApiModelProperty(value = "借款金额")
	private BigDecimal loanAmount;

	@ApiModelProperty(value = "交易手续费")
	private BigDecimal loanAmountFee;

	@ApiModelProperty(value = "借款期限")
	private Integer initPeriod;

	@ApiModelProperty(value = "借款期限单位")
	private String periodUnitCode;

	@ApiModelProperty(value = "借款期数")
	private Integer loanPeriod;

	@ApiModelProperty(value = "借款用途")
	private String loanUsage;

	@ApiModelProperty(value = "借款利率")
	private BigDecimal loanRate;

	@ApiModelProperty(value = "计息方式")
	private String interestTypeCode;

	@ApiModelProperty(value = "还款方式")
	private String repaymentTypeCode;

	@ApiModelProperty(value = "合同利率")
	private BigDecimal contractRate;

	@ApiModelProperty(value = "逾期利率")
	private BigDecimal overdueRate;

	@ApiModelProperty(value = "借款开始时间")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date loanStartTime;

	@ApiModelProperty(value = "借款结束时间")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date loanEndTime;

	@ApiModelProperty(value = "协议确认时间")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date agreementConfirmTime;

	@ApiModelProperty(value = "借款人是否已网签0：未;1：已")
	private String isOpen;

	@ApiModelProperty(value = "待签约，待放款，放款中，成功，失败")
	private String applyStatus;

	@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;


}