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

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.hzs.common.domain.member.account.CuMemberAccount;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.util.List;

@Data
@EqualsAndHashCode(callSuper = false)
@AllArgsConstructor
@NoArgsConstructor
public class CuMemberAccountExt extends CuMemberAccount {

    private static final long serialVersionUID = 1L;

    /**
     * 支付密码
     */
    private String payPwd;

    /**
     * 账号状态（0=正常,1=冻结,2=封停）
     */
    private Integer accountStatus;

    /**
     * 消费账户
     */
    private BigDecimal payAccount1;

    /**
     * 现金账户
     */
    private BigDecimal payAccount2;


    /**
     * 政策账户
     */
    private BigDecimal payAccount3;

    /**
     * 奖金账户
     */
    private BigDecimal payAccount4;

    /**
     * 重消账户
     */
    private BigDecimal payAccount5;

    /**
     * 积分账户
     */
    private BigDecimal payAccount6;

    /**
     * 鼓励账户
     */
    private BigDecimal payAccount7;

    /**
     * 复购券账户
     */
    private BigDecimal payAccount8;

    /**
     * 全球积分
     */
    private BigDecimal payAccount9;

    /**
     * 车奖积分
     */
    private BigDecimal payAccount10;

    /**
     * 支付是否成功
     */
    @JsonIgnore
    private Boolean isPayment = Boolean.FALSE;

    /**
     * 消息
     */
    @JsonIgnore
    private String errorMsg;
    /**
     * 银行卡主键
     */
    @JsonIgnore
    private Long pkBank;

    /**
     * 会员编号
     */
    private String memberCode;

    /**
     * 会员姓名
     */
    private String memberName;

    /**
     * 体系名称
     */
    private String vertexName;

    /**
     * 团队名称
     */
    private String teamName;
    /**
     * 血缘代数
     */
    private Integer plevel;
    /**
     * 安置层数
     */
    private Integer slevel;

    /**
     * 体系ID
     */
    private Integer vertexId;
    /**
     * 团队ID
     */
    private Integer teamId;

    /**
     * 账户ID
     */
    private List<Long> pkMembers;

    /**
     * 推荐人ID
     */
    private Long pkParent;

    /**
     * 安置人ID
     */
    private Long pkPlaceParent;

    /**
     * 乐学易考代金券
     */
    private BigDecimal payAccount12;

    /**
     * 海豆
     */
    private BigDecimal payAccount13;

    /**
     * 业务类型 （扣款必传参数）
     */
    private Integer businessType;
    /**
     * 扣款金额
     */
    private BigDecimal tradeAmount;

    /**
     * 政策币使用标记（如果为false则不能使用）
     */
    private Boolean payAccount3Flag = Boolean.TRUE;

}
