package cn.iocoder.yudao.module.member.dal.dataobject.user;

import lombok.*;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.util.*;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;

/**
 * 会员卡 DO
 *
 * @author 系统管理员
 */
@TableName("member_card")
@KeySequence("member_card_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class MemberCardDO {
    /**
     * 会员卡ID
     */
    @TableId
    private Long id;
    /**
     * 会员用户ID
     */
    private Long memberUserId;
    /**
     * 会员卡名称
     */
    private String memberCardName;
    /**
     * 会员卡号
     */
    private String memberCardNumber;
    /**
     * 状态，0：禁用 1：正常
     */
    private Integer status;
    /**
     * 余额
     */
    private BigDecimal balanceAmount;
    /**
     * 赠送金额
     */
    private BigDecimal giftAmount;
    /**
     * 累计充值金额
     */
    private BigDecimal accumulatedAmount;
    /**
     * 开卡日期
     */
    private LocalDate activateCardTime;
    /**
     * 会员卡权限
     */
    private String permission;
    /**
     * 创建人
     */
    private String createdBy;
    /**
     * 创建时间
     */
    private Date createdTime;
    /**
     * 系统机构类型
     */
    private Integer orgType;


    @TableField(exist = false)
    private String memberUserName;
    @TableField(exist = false)
    private Integer rechargeCount;
}