package com.palmnest.model.estateserve;

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

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;

/**
 * 充值实体类
 *
 * @author xiemin
 */

@Entity
@Table(name = "tb_recharge")
public class Recharge implements Serializable {

	/**
	 * 序列号
	 */
	private static final long serialVersionUID = 7889506815170258600L;

	private int        id;                //主键ID
	private int        productId;        //产品id
	private String     mobile;        //手机号码
	private String     status;        //充值状态：-1 初始，0 充值中，1 充值成功，2 充值失败
	private String     payStatus;    //支付状态：-1 未支付，0 支付成功，1 支付失败
	private BigDecimal price = BigDecimal.valueOf(0);//充值金额
	private String     type;        //产品类型：0 流量，1 话费
	private String     recharTime;    //充值成功时间
	private String     payType;        //支付方式（cash-现金、wxpay-微信、alipay-支付宝）
	private String     outTradeNo;    //订单号
	private String     transactionId;//微信返回id
	private String     wxUserId;    //微信id
	private String     openId;        //微信openId
	private String     payTime;        //支付时间
	private String     payRemark;    //支付说明
	private String     refundStatus;//退款状态（1-退款成功、2-退款失败）
	private String     refundTime;    //退款时间
	private String     refundRemark;//退款说明信息
	private String     outRefundNo;    //微信退款订单号
	private String     organizationId;//项目id
	private String     virtualId;    //企业id
	private String     rechargeDesc;//充值描述
	private String     msgid;        //充值成功回调id
	private String     developId;
	private String     channelCode;
	private String     creator;        //创建者
	private String     createTime;    //创建时间
	private String     modifier;    //修改者
	private String     modifyTime;    //修改时间
	private String     isEnabled;
	private Integer    amount; //购买份数

	@Id
	@GeneratedValue(strategy = GenerationType.AUTO)
	@Column(name = "ID", unique = true, nullable = false)
	public int getId() {
		return id;
	}

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

	public int getProductId() {
		return productId;
	}

	public void setProductId(int productId) {
		this.productId = productId;
	}

	public String getMobile() {
		return mobile;
	}

	public void setMobile(String mobile) {
		this.mobile = mobile;
	}

	public String getStatus() {
		return status;
	}

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

	public String getPayStatus() {
		return payStatus;
	}

	public void setPayStatus(String payStatus) {
		this.payStatus = payStatus;
	}

	public BigDecimal getPrice() {
		return price;
	}

	public void setPrice(BigDecimal price) {
		this.price = price;
	}

	public String getType() {
		return type;
	}

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

	public String getRecharTime() {
		return recharTime;
	}

	public void setRecharTime(String recharTime) {
		this.recharTime = recharTime;
	}

	public String getPayType() {
		return payType;
	}

	public void setPayType(String payType) {
		this.payType = payType;
	}

	public String getOutTradeNo() {
		return outTradeNo;
	}

	public void setOutTradeNo(String outTradeNo) {
		this.outTradeNo = outTradeNo;
	}

	public String getTransactionId() {
		return transactionId;
	}

	public void setTransactionId(String transactionId) {
		this.transactionId = transactionId;
	}

	public String getWxUserId() {
		return wxUserId;
	}

	public void setWxUserId(String wxUserId) {
		this.wxUserId = wxUserId;
	}

	public String getOpenId() {
		return openId;
	}

	public void setOpenId(String openId) {
		this.openId = openId;
	}

	public String getPayTime() {
		return payTime;
	}

	public void setPayTime(String payTime) {
		this.payTime = payTime;
	}

	public String getPayRemark() {
		return payRemark;
	}

	public void setPayRemark(String payRemark) {
		this.payRemark = payRemark;
	}

	public String getRefundStatus() {
		return refundStatus;
	}

	public void setRefundStatus(String refundStatus) {
		this.refundStatus = refundStatus;
	}

	public String getRefundTime() {
		return refundTime;
	}

	public void setRefundTime(String refundTime) {
		this.refundTime = refundTime;
	}

	public String getRefundRemark() {
		return refundRemark;
	}

	public void setRefundRemark(String refundRemark) {
		this.refundRemark = refundRemark;
	}

	public String getOutRefundNo() {
		return outRefundNo;
	}

	public void setOutRefundNo(String outRefundNo) {
		this.outRefundNo = outRefundNo;
	}

	public String getOrganizationId() {
		return organizationId;
	}

	public void setOrganizationId(String organizationId) {
		this.organizationId = organizationId;
	}

	public String getVirtualId() {
		return virtualId;
	}

	public void setVirtualId(String virtualId) {
		this.virtualId = virtualId;
	}

	public String getRechargeDesc() {
		return rechargeDesc;
	}

	public void setRechargeDesc(String rechargeDesc) {
		this.rechargeDesc = rechargeDesc;
	}

	public String getMsgid() {
		return msgid;
	}

	public void setMsgid(String msgid) {
		this.msgid = msgid;
	}

	public String getDevelopId() {
		return developId;
	}

	public void setDevelopId(String developId) {
		this.developId = developId;
	}

	public String getChannelCode() {
		return channelCode;
	}

	public void setChannelCode(String channelCode) {
		this.channelCode = channelCode;
	}

	public String getCreator() {
		return creator;
	}

	public void setCreator(String creator) {
		this.creator = creator;
	}

	public String getCreateTime() {
		return createTime;
	}

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

	public String getModifier() {
		return modifier;
	}

	public void setModifier(String modifier) {
		this.modifier = modifier;
	}

	public String getModifyTime() {
		return modifyTime;
	}

	public void setModifyTime(String modifyTime) {
		this.modifyTime = modifyTime;
	}

	public String getIsEnabled() {
		return isEnabled;
	}

	public void setIsEnabled(String isEnabled) {
		this.isEnabled = isEnabled;
	}

	public Integer getAmount() {
		return amount;
	}

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


}
