← 返回文档中心

微信联系人接口-多微信号切换

Service端接口改动文档 · 2026-05-21

一、涉及接口

1.1 客户列表 → 添加微信客户

POST /action/crm/getWxContact

原请求参数:

{
  "name": "关键词",
  "page": 1,
  "pageSize": 20
}
字段类型说明
nameString好友名称(模糊搜索)
pageInt页码
pageSizeInt每页条数

响应结果:

{
  "success": true,
  "result": {
    "list": [
      {
        "_id": "wxfriend_001",
        "m7WxNo": "wx_no_001",
        "m7Nick": "张三",
        "m7HeadImg": "https://xxx/head.png",
        "m7Phone": "13812345678",
        "m7Memo": "客户A",
        "onlyCode": "code_001",
        "customerName": "李四"
      }
    ],
    "count": 100,
    "page": 1,
    "pageSize": 20
  }
}

1.2 客户详情 → 选择关联微信好友

POST /action/crm/getMyWxContactNew

说明:用于客户详情页选择要关联的微信好友。

当前请求参数:

{
  "page": 1,
  "pageSize": 20,
  "filter": "关键词",
  "name": "好友名称",
  "phones": ["13800138000"]
}
字段类型说明
pageInt页码
pageSizeInt每页条数
filterString搜索过滤词
nameString好友名称
phonesArray<String>手机号列表

当前响应结果:

{
  "code": 1,
  "msg": "success",
  "data": {
    "list": [                        // 推荐好友
      {
        "_id": "wxfriend_001",
        "m7WxNo": "wx_no_001",
        "m7Nick": "张三",
        "m7HeadImg": "https://xxx/head.png",
        "m7Phone": "13800138000",
        "m7Memo": "备注",
        "onlyCode": "code_001",
        "customerName": "客户名",
        "wxIsMine": true,
        "isCanChat": true
      }
    ],
    "rlist": [                       // 所有好友(与list同结构)
      { ...WeChatUserBean }
    ],
    "count": 100
  }
}

本次变更前:未传当前登录微信列表。

二、改动方案
改动说明:双开微信场景下,两个接口都需要支持按当前登录微信列表过滤联系人。getWxContactwxId 调整为 wxIds 列表;getMyWxContactNew 新增 wxIds 参数。
兼容说明:未传 wxIds 时,接口返回数据与原逻辑保持一致,不影响已有调用方。

2.1 请求参数改动

POST /action/crm/getWxContact

NEW 参数由 wxId 调整为 wxIds 列表

请求参数:

{
  "wxIds": ["wx_001", "wx_002"],
  "name": "关键词",
  "page": 1,
  "pageSize": 20
}
字段类型必填说明
wxIdsArray<String>当前登录的微信ID列表,用于双开微信过滤联系人
nameString好友名称(模糊搜索)
pageInt页码
pageSizeInt每页条数

2.2 getMyWxContactNew 参数新增

POST /action/crm/getMyWxContactNew

NEW 新增 wxIds 参数

改动后请求参数:

{
  "page": 1,
  "pageSize": 20,
  "filter": "关键词",
  "name": "好友名称",
  "phones": ["13800138000"],
  "wxIds": ["wx_001", "wx_002"]
}
字段类型必填说明
pageInt页码
pageSizeInt每页条数
filterString搜索过滤词
nameString好友名称(模糊搜索)
phonesArray<String>手机号列表
wxIdsArray<String>[NEW] 当前登录的微信ID列表

2.3 响应结果(不变)

{
  "code": 1,
  "msg": "success",
  "data": {
    "list": [           // 推荐好友列表
      { "_id": "wxfriend_001", "m7WxNo": "wx_no_001", "m7Nick": "张三",
        "m7HeadImg": "https://xxx/head.png", "m7Phone": "13800138000",
        "m7Memo": "备注", "onlyCode": "code_001", "customerName": "客户名",
        "wxIsMine": true, "isCanChat": true }
    ],
    "rlist": [          // 所有好友列表(与list同结构)
      { ...WeChatUserBean }
    ],
    "count": 100
  }
}
三、APP端改动

3.1 改动概述

双开微信场景下,主APP调用 getWxContactgetMyWxContactNew 时,需要将当前登录的微信ID列表(wxIds)传入接口。微信ID列表由工作手机模块(xkw-workphone)通过 getUseWxList 提供。

3.2 getWxContact — 客户列表添加微信客户

原有传参不变,新增 wxIds 字段:

{
  "wxIds": ["wx_001", "wx_002"],   // [NEW] 当前登录微信列表
  "name": "关键词",
  "page": 1,
  "pageSize": 20
}

3.3 getMyWxContactNew — 客户详情选择关联微信好友

原有传参不变,新增 wxIds 字段:

{
  "page": 1,
  "pageSize": 20,
  "filter": "关键词",
  "name": "好友名称",
  "phones": ["13800138000"],
  "wxIds": ["wx_001", "wx_002"]   // [NEW] 当前登录微信列表
}

3.4 工作手机APP改动(xkw-workphone)

项目路径:xkw-workphone

功能说明:提供 getUseWxList 接口,供主APP获取当前双开微信用户列表。

接口:getUseWxList(位于 xkw-workphone 项目中)

字段类型说明
wxNoString微信号(唯一标识)
wxNickString微信昵称
headImgString微信头像URL
isActiveBoolean是否当前登录

返回示例:

{
  "list": [
    {
      "wxNo": "wx_001",
      "wxNick": "工作微信A",
      "headImg": "https://xxx/head_a.png",
      "isActive": true
    },
    {
      "wxNo": "wx_002",
      "wxNick": "工作微信B",
      "headImg": "https://xxx/head_b.png",
      "isActive": false
    }
  ]
}
四、开发任务清单

APP端(xkw-workphone)

任务优先级说明
getUseWxList接口P0解析双开微信用户数据,提供给联系人选择界面

APP端(主APP)

任务优先级说明
getMyWxContactNew 传 wxIdsP0客户详情页选择关联微信好友时,传当前登录微信列表
getWxContact 传 wxIdsP0客户列表添加微信客户时,原 wxId 改为 wxIds 列表

Service端

任务优先级说明
getWxContact 参数改为 wxIdsP0支持按当前登录微信列表过滤联系人
getMyWxContactNew 新增 wxIdsP0客户详情页选择关联好友时支持双开微信过滤