package com.linkwechat.wecom.domain.vo.customer;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.linkwechat.wecom.domain.vo.tag.WeTagVo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;
import java.util.List;

/**
 * @author sxw
 * @description 客户关联关系出参对象
 * @date 2021/6/17 0:26
 **/
@ApiModel
@Data
public class WeFlowerCustomerRelVo {
    @ApiModelProperty(value = "主键")
    private Long id;

    @ApiModelProperty(value = "企业id")
    private String corpId;

    /**
     * 添加了此外部联系人的企业成员userid
     */
    @ApiModelProperty(value = "添加了此外部联系人的企业成员userid")
    private String userId;

    /**
     * 成员名称
     */
    @ApiModelProperty(value = "成员名称")
    private String userName;


    /**
     * 该成员对此外部联系人的描述
     */
    @ApiModelProperty(value = "该成员对此外部联系人的描述")
    private String description;

    /**
     * 该成员对此客户备注的企业名称
     */
    @ApiModelProperty(value = "该成员对此客户备注的企业名称")
    private String remarkCorpName;

    /**
     * 该成员对此客户备注的手机号码
     */
    @ApiModelProperty(value = "该成员对此客户备注的手机号码")
    private String remarkMobiles;

    /**
     * 发起添加的userid，如果成员主动添加，为成员的userid；如果是客户主动添加，则为客户的外部联系人userid；如果是内部成员共享/管理员分配，则为对应的成员/管理员userid
     */
    @ApiModelProperty(value = "发起添加的userid")
    private String operUserId;

    /**
     * 该成员添加此客户的来源，
     */
    @ApiModelProperty(value = "该成员添加此客户的来源")
    private Integer addWay;

    /**
     * 企业自定义的state参数，用于区分客户具体是通过哪个「联系我」添加，由企业通过创建「联系我」方式指定
     */
    @ApiModelProperty(value = "企业自定义的state参数")
    private String state;

    /**
     * 客户id
     */
    @ApiModelProperty(value = "客户id")
    private String externalUserid;

    /**
     * 状态（0正常 1删除）
     */
    @ApiModelProperty(value = "状态（0正常 1删除）")
    private Integer delFlag;

    /**
     * 该成员添加此外部联系人的时间
     */
    @ApiModelProperty(value = "该成员添加此外部联系人的时间")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date addTime;


    @ApiModelProperty(value = "部门")
    private String department;

    /** 备注 */
    @ApiModelProperty(value = "备注")
    private String remark;


    /** 邮件 */
    @ApiModelProperty(value = "邮件")
    private String email;


    /** qq */
    @ApiModelProperty(value = "QQ")
    private String qq;

    /**地址*/
    @ApiModelProperty(value = "地址")
    private String address;

    /** 客户标签 */
    @ApiModelProperty(value = "客户标签")
    private List<WeTagVo> weTags;
}
