package com.hzs.common.domain.member.account;

import java.math.BigDecimal;

import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableField;
import com.hzs.common.core.web.domain.BaseEntity;
import lombok.*;
import lombok.experimental.Accessors;

/**
 * 会员活动发放复消币明细
 *
 * @author hzs
 * @since 2024-07-19
 */
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@KeySequence("CU_MEMBER_TRADE_RECOIL_SEQ")
@TableName("CU_MEMBER_TRADE_RECOIL")
public class CuMemberTradeRecoil extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId("PK_ID")
    private Long pkId;

    /**
     * 会员主键
     */
    @TableField("PK_MEMBER")
    private Long pkMember;

    /**
     * 会员等级
     */
    @TableField("PK_GRADE")
    private Integer pkGrade;

    /**
     * 交易编号
     */
    @TableField("TRADE_CODE")
    private String tradeCode;

    /**
     * 账户类型(来源于参照：币种配置)
     */
    @TableField("PK_ACCOUNT")
    private Integer pkAccount;

    /**
     * 交易类型(500: 收益发放,600: 撤单返钱)
     */
    @TableField("TRADE_TYPE")
    private Integer tradeType;

    /**
     * 交易分类:(5=收益 6=退款 8= 业务)
     */
    @TableField("TRADE_CLASSIFY")
    private Integer tradeClassify;

    /**
     * 汇率
     */
    @TableField("PK_RATE")
    private Integer pkRate;

    /**
     * 交易金额
     */
    @TableField("TRADE_AMOUNT")
    private BigDecimal tradeAmount;

    /**
     * 来源会员主键（可重复）
     */
    @TableField("SOURCE_PK_MEMBER")
    private Long sourcePkMember;

    /**
     * 来源单号（可重复）
     */
    @TableField("SOURCE_CODE")
    private String sourceCode;

    /**
     * 交易状态:(1=可消费 2=生效)
     */
    @TableField("TRADE_STATUE")
    private Integer tradeStatue;

}
