
using Senparc.Weixin.Entities;
using Senparc.Weixin.Work.AdvancedAPIs.External;
using System.Collections.Generic;

namespace Edu.ThirdCore.QYWinXin.Model
{
    /// <summary>
    /// 批量获取客户详情 返回结果
    /// </summary>
    public class GetExternalContactInfoBatchResult_V2 : WorkJsonResult
    {
        /// <summary>
        /// 客户列表
        /// </summary>
        public List<ExternalContactList> external_contact_list { get; set; }

        /// <summary>
        /// 分页游标，再下次请求时填写以获取之后分页的记录，如果已经没有更多的数据则返回空
        /// </summary>
        public string next_cursor { get; set; }
    }

    public class ExternalContactList
    {
        /// <summary>
        /// 客户信息
        /// </summary>
        public External_Contact external_contact { get; set; }

        /// <summary>
        /// 员工信息
        /// </summary>
        public Follow_User_V2 follow_info { get; set; }
    }

    public class Follow_User_V2
    {
        //
        // 摘要:
        //     添加了此外部联系人的企业成员userid
        public string userid { get; set; }
        //
        // 摘要:
        //     该成员对此外部联系人的备注
        public string remark { get; set; }
        //
        // 摘要:
        //     该成员对此外部联系人的描述
        public string description { get; set; }
        //
        // 摘要:
        //     该成员添加此外部联系人的时间
        public int createtime { get; set; }
        //
        // 摘要:
        //     企业自定义的state参数，用于区分客户具体是通过哪个「联系我」添加，由企业通过创建「联系我」方式指定
        public string state { get; set; }
        //
        // 摘要:
        //     发起添加的userid，如果成员主动添加，为成员的userid；如果是客户主动添加，则为客户的外部联系人userid；如果是内部成员共享/管理员分配，则为对应的成员/管理员userid
        public string oper_userid { get; set; }
        //
        // 摘要:
        //     该成员添加此客户的来源
        public int add_way { get; set; }
        //
        // 摘要:
        //     该成员对此客户备注的企业名称
        public string remark_corp_name { get; set; }
        //
        // 摘要:
        //     该成员对此客户备注的手机号码，第三方不可获取
        public string[] remark_mobiles { get; set; }
        public string[] tag_id { get; set; }
    }
}
