package com.ruoyi.app.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.ToString;
import lombok.experimental.Accessors;
import com.ruoyi.common.annotation.Excel;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import java.io.Serializable;
import java.util.Date;
import java.math.BigDecimal;
import java.util.List;

import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 家族/成员
 * 
 * @author Alex
 * @date 2020-10-08
 */
@Data
@ApiModel(value = "家族/成员")
@ToString
@EqualsAndHashCode
@NoArgsConstructor
@Accessors(chain = true)
@TableName("tb_member_middle")
public class TbMemberMiddle implements Serializable {

    private static final long serialVersionUID=1L;


    /** 主键id */
    @ApiModelProperty(value="主键id")
    @TableId(value = "id")
    private Long id;

    /** 成员id */
    @ApiModelProperty(value="成员id")
    @Excel(name = "成员id")
    private Long memberId;

    /** 家族id */
    @ApiModelProperty(value="家族id")
    @Excel(name = "家族id")
    private Long familyId;

    /** 是否管理员  Y是  N否 */
    @ApiModelProperty(value="是否管理员  Y是  N否")
    @Excel(name = "是否管理员  Y是  N否")
    private String admin;

    /** 父成员id */
    @ApiModelProperty(value="父成员id")
    @Excel(name = "父成员id")
    private Long parentId;

    /** 申请状态 1申请 2同意 3拒绝 */
    @ApiModelProperty(value="申请状态 1申请 2同意 3拒绝")
    @Excel(name = "申请状态")
    private String status;

    /** 是否默认  Y是  N否 */
    @ApiModelProperty(value="是否默认  Y是  N否")
    @Excel(name = "是否默认  Y是  N否")
    private String acquiesce;

    /** 是否族长  Y是  N否 */
    @ApiModelProperty(value="是否族长 Y是  N否")
    @Excel(name = "是否族长 Y是  N否")
    private String patriarch;

    @ApiModelProperty(value="昵称")
    @TableField(exist = false)
    private String nickName;

    @TableField(exist = false)
    private List<TbMemberMiddle> list;
}