package com.fs.qw.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fs.common.annotation.Excel;
import lombok.Data;

@Data
public class QwGroupChatUserVO {
    private static final long serialVersionUID = 1L;

    /** id */
    private Long id;

    /** 客户群ID */
    @Excel(name = "客户群ID")
    private String chatId;

    /** 群成员id */
    @Excel(name = "群成员id")
    private String userId;

    /** 成员类型。
     1 - 企业成员
     2 - 外部联系人 */
    @Excel(name = "成员类型")
    private String type;

    /** 外部联系人在微信开放平台的唯一身份标识（微信unionid） */
    @Excel(name = "外部联系人在微信开放平台的唯一身份标识")
    private String unionid;

    /** 入群时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "入群时间", width = 30, dateFormat = "yyyy-MM-dd")
    private String joinTime;

    /** 入群方式。
     1 - 由群成员邀请入群（直接邀请入群）
     2 - 由群成员邀请入群（通过邀请链接入群）
     3 - 通过扫描群二维码入群 */
    @Excel(name = "入群方式")
    private String joinScene;

    /** 邀请者。目前仅当是由本企业内部成员邀请入群时会返回该值 */
    @Excel(name = "邀请者。目前仅当是由本企业内部成员邀请入群时会返回该值")
    private String invitor;

    private String invitorName;

    /** 客户在群里的昵称 */
    @Excel(name = "客户在群里的昵称")
    private String groupNickname;

    /** 名字。仅当 need_name = 1 时返回
     如果是微信用户，则返回其在微信中设置的名字
     如果是企业微信联系人，则返回其设置对外展示的别名或实名 */
    @Excel(name = "名字")
    private String name;

    /** 公司id */
    @Excel(name = "公司id")
    private Long companyId;

    /** 是否退群 */
    @Excel(name = "是否退群")
    private Long isOut;

    /** 企业微信的企业id */
    @Excel(name = "企业微信的企业id")
    private String corpId;

    /** 退群时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "退群时间", width = 30, dateFormat = "yyyy-MM-dd")
    private String outTime;

    /**
     *  退群方式
     */
    private Integer quitScene;
}
