package com.ym.mec.biz.dal.entity;

import com.ym.mec.biz.dal.enums.DealStatusEnum;
import com.ym.mec.biz.dal.enums.PlatformCashAccountDetailTypeEnum;

import com.ym.mec.biz.dal.enums.TransTypeEnum;
import io.swagger.annotations.ApiModelProperty;

import org.apache.commons.lang3.builder.ToStringBuilder;

import java.math.BigDecimal;

/**
 * 对应数据库表(sys_user_cash_account_detail):
 */
public class SysUserCashAccountDetail {

	/** 序号 */
	@ApiModelProperty(value = "序号",required = false)
	private Long id;

	/** 用户编号 */
	@ApiModelProperty(value = "用户编号",required = false)
	private Integer userId;

	/** 交易流水号 */
	@ApiModelProperty(value = "交易流水号",required = false)
	private String transNo;

	/** 交易类型 (RECHARGE 充值,WITHDRAW 提现,PAY_FEE 缴费,REFUNDS 退费,FILL_ACCOUNT 人工补账) */
	@ApiModelProperty(value = "交易类型",required = false)
	private PlatformCashAccountDetailTypeEnum type;

	/** 交易方式1.微信，2支付宝,3快捷*/
	@ApiModelProperty(value = "交易方式",required = false)
	private TransTypeEnum transType;

	/** 交易状态(1,交易中;2,成功交易;-1,交易失败;) */
	@ApiModelProperty(value = "交易状态",required = false)
	private DealStatusEnum status;

	/** 交易金额 */
	@ApiModelProperty(value = "交易金额",required = false)
	private BigDecimal amount;

	/** 账户可用余额 */
	@ApiModelProperty(value = "账户可用余额",required = false)
	private BigDecimal balance;

	/** 描述 */
	@ApiModelProperty(value = "描述",required = false)
	private String description;

	/** 后台备注 */
	@ApiModelProperty(value = "后台备注",required = false)
	private String comment;

	/** 创建时间 */
	private java.util.Date createTime;

	/** 修改时间 */
	private java.util.Date updateTime;

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

	public Long getId(){
		return this.id;
	}

	public void setUserId(Integer userId){
		this.userId = userId;
	}

	public Integer getUserId(){
		return this.userId;
	}

	public void setTransNo(String transNo){
		this.transNo = transNo;
	}

	public String getTransNo(){
		return this.transNo;
	}

	public PlatformCashAccountDetailTypeEnum getType() {
		return type;
	}

	public void setType(PlatformCashAccountDetailTypeEnum type) {
		this.type = type;
	}

	public DealStatusEnum getStatus() {
		return status;
	}

	public void setStatus(DealStatusEnum status) {
		this.status = status;
	}

	public BigDecimal getAmount() {
		return amount;
	}

	public void setAmount(BigDecimal amount) {
		this.amount = amount;
	}

	public BigDecimal getBalance() {
		return balance;
	}

	public void setBalance(BigDecimal balance) {
		this.balance = balance;
	}

	public void setDescription(String description){
		this.description = description;
	}

	public String getDescription(){
		return this.description;
	}

	public void setComment(String comment){
		this.comment = comment;
	}

	public String getComment(){
		return this.comment;
	}

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

	public java.util.Date getCreateTime(){
		return this.createTime;
	}

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

	public java.util.Date getUpdateTime(){
		return this.updateTime;
	}

	public TransTypeEnum getTransType() {
		return transType;
	}

	public void setTransType(TransTypeEnum transType) {
		this.transType = transType;
	}

	@Override
	public String toString() {
		return ToStringBuilder.reflectionToString(this);
	}

}
