package com.red.circle.other.app.dto.clientobject.team;

import com.red.circle.framework.dto.ClientObject;
import com.red.circle.other.inner.model.dto.user.UserProfileDTO;
import java.util.Map;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * 成员团队资料.
 *
 * @author pengliang on 2022/12/6
 */
@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = true)
public class MemberEntryTeamCO extends ClientObject {

  /**
   * 团队资料.
   */
  private TeamProfileCO teamProfile;

  /**
   * 成员资料.
   */
  private UserProfileDTO memberProfile;

  /**
   * 团长资料.
   */
  private UserProfileDTO teamOwnProfile;

  /**
   * 成员角色.
   */
  private String role;

  /**
   * 钱包提现设置; null/true:可以提现，false 不允许.
   * TODO 这个开关放在这里不合适，前期是为了快速满足需求（后期重新设计应该，将用户的设置相关重新信息设计归纳到用户设置中去）
   */
  private Boolean walletWithdrawal;

  /**
   * 元数据.
   */
  private Map<String, String> metadata;

  /**
   * 元数据.
   */
  private Map<String, String> diamondMetadata;

  /**
   * 是否是违规审核白名单.
   */
  private Boolean violation;

  /**
   * 是否是账号处理白名单.
   */
  private Boolean process;

  /**
   * 是否显示平台政策.
   */
  private Boolean showPlatformPolicy;
}
